{% extends "admin/base.html" %} {% block title %}Logs — cmdop admin{% endblock %} {% block content %} {# Plan 46 Phase 2 + 61/2b W3 — merged Logs + Security page. The category chip in the filter bar limits the events table to All / App / Security / Auth. /admin/security 301-redirects here with ?category=security so old links work. Data still comes from /api/admin/logs/* (the security view is a server-side category filter over security_event). #} {% from 'admin/components/ui.html' import page_header, tooltip %}
{{ page_header( 'Logs', 'Events from across the relay — application errors, auth audit, slow requests, gRPC + worker + Jarvis failures.', help_anchor='logs', actions=[ {'label': 'Refresh', 'kind': 'secondary', 'icon': 'refresh-cw', 'attrs': '@click="load()"'}, ] ) }}
Cross-fleet view (server admin) Scoped to {{ fleet.name }}.
{# Plan 61/2b W3 — category chip strip. Tells the user up-front what bucket the table is filtered to. The "Security" chip surfaces the audit view that used to live at /admin/security. #}
category {{ tooltip('Security / Auth = audit events (sign-ins, password changes, brute-force locks). Severity 1 = info, 2 = noteworthy, 3 = action required.') }}
{% include 'admin/components/logs/_health_banner.html' %} {% include 'admin/components/logs/_summary_pane.html' %} {% include 'admin/components/logs/_events_pane.html' %} {% include 'admin/components/logs/_event_drawer.html' %}
{% endblock %}