Files
system-monitor/backend/api/network/privnet/logs.get.ts
2025-12-28 14:31:12 +09:00

31 lines
945 B
TypeScript

import { query } from '../../../utils/db'
export default defineEventHandler(async (event) => {
const queryParams = getQuery(event)
const { year, month, day, hour } = queryParams as {
year?: string, month?: string, day?: string, hour?: string
}
if (!year || !month || !day || !hour) {
return { error: 'year, month, day, hour are required' }
}
const startTime = `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')} ${hour.padStart(2, '0')}:00:00`
const endTime = `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')} ${hour.padStart(2, '0')}:59:59`
const logs = await query(`
SELECT
l.id,
l.checked_at,
l.is_success,
t.name as target_name,
t.url as target_url
FROM privnet_logs l
JOIN privnet_targets t ON l.target_id = t.id
WHERE l.checked_at >= $1 AND l.checked_at <= $2
ORDER BY l.checked_at DESC
`, [startTime, endTime])
return { logs }
})