ligbox-ops-platform/specs/019-ops-console-active-operations/deploy/frontend/src/lib/events.js
Ligbox Spec Hub 935ceda4e0 Console: barra de alertas clicável com drill-down no Discover.
Cada contador de severidade liga a /discover?bucket= com agente, regra, domínio e chamado; contagens calculadas a partir dos eventos Wazuh 24h.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 11:55:31 +00:00

32 lines
1.1 KiB
JavaScript

import { MOCK_DISCOVER_EVENTS } from '../mock'
import { apiGet } from './api'
function normalizeApiEvent(row) {
const payload = row.payload || {}
const data = payload.data || {}
const level = row.severity ?? data.level ?? payload.level
return {
id: row.id,
source: row.source || 'wazuh',
event_type: row.event_type,
domain: row.domain || payload.domain || data.agent || '—',
severity: level != null ? Number(level) : null,
summary: data.description || payload.summary || row.event_type,
agent: data.agent || payload.agent || '—',
rule_id: data.rule_id || payload.rule_id,
chamado_public_id: payload.chamado_public_id || null,
created_at: row.created_at,
wazuh_link: 'https://wazuh.itecnologys.com/',
}
}
export async function loadDiscoverEvents() {
try {
const data = await apiGet('/api/v1/webhooks/events?source=wazuh')
const rows = (data.events || []).map(normalizeApiEvent)
if (rows.length) return { events: rows, fromApi: true }
} catch {
/* sem login JWT — mock */
}
return { events: MOCK_DISCOVER_EVENTS, fromApi: false }
}