시스템 모니터
This commit is contained in:
29
backend/api/server/history/disk-list.get.ts
Normal file
29
backend/api/server/history/disk-list.get.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
import { getDb } from '../../../utils/db'
|
||||
|
||||
export default defineEventHandler((event) => {
|
||||
const query = getQuery(event)
|
||||
const targetId = query.target_id as string
|
||||
|
||||
if (!targetId) {
|
||||
throw createError({
|
||||
statusCode: 400,
|
||||
message: 'target_id is required'
|
||||
})
|
||||
}
|
||||
|
||||
const db = getDb()
|
||||
|
||||
// 최신 수집 시간 기준 디스크 목록 (물리 디스크만)
|
||||
const disks = db.prepare(`
|
||||
SELECT DISTINCT device_name, mount_point, fs_type, disk_total, disk_used, disk_percent
|
||||
FROM server_disks
|
||||
WHERE target_id = ?
|
||||
AND collected_at = (SELECT MAX(collected_at) FROM server_disks WHERE target_id = ?)
|
||||
AND device_name NOT LIKE '%loop%'
|
||||
AND mount_point NOT LIKE '%/snap%'
|
||||
AND fs_type NOT IN ('tmpfs', 'squashfs', 'overlay')
|
||||
ORDER BY mount_point ASC
|
||||
`).all(targetId, targetId)
|
||||
|
||||
return disks
|
||||
})
|
||||
Reference in New Issue
Block a user