{% extends 'paxalia/base.html' %} {% load i18n static %} {% block title %}{{ page_title }} — Paxalia{% endblock %} {% block page_title %}{{ page_title }}{% endblock %} {% block page_subtitle %}{{ page_subtitle }}{% endblock %} {% block extra_css %} {% endblock %} {% block filter_bar %}
{% trans "Range" %}
{% trans "More filters" %}
{% trans "Clear filters" %}
{% endblock %} {% block dashboard_content %}
{% trans "Total events" %}{{ stats.total }}
{% trans "Critical" %}{{ stats.CRITICAL }}
{% trans "Errors" %}{{ stats.ERROR }}
{% trans "Warnings" %}{{ stats.WARNING }}
{% trans "Suppressed" %}{{ stats.suppressed }}
{% trans "Open problems" %}{{ stats.open_problems }}
{% trans "New today" %}{{ stats.new_problems_today }}
{% trans "The feed is permission-checked and bounded." %}

{% trans "Live Console" %}

{% trans "Full emitted process logging, including DEBUG HTTP/server traffic. The latest 2,000 lines are kept in memory for this process." %}

{% trans "Connecting…" %}
0 {% trans "lines" %}
{% trans "Waiting for emitted log records…" %}
{% for name, value in traffic.items %}
{{ name }}{{ value }}
{% endfor %}

{% trans "Recent Events" %}

{{ page_obj.paginator.count }} {% trans "matching events" %}
{% for event in events %} {% empty %}{% endfor %}
{% trans "Time" %}{% trans "Severity" %}{% trans "Source" %}{% trans "Traffic" %}{% trans "Message" %}{% trans "Path" %}
{{ event.timestamp|date:'Y-m-d H:i:s' }} {{ event.severity }} {{ event.source }}{% if event.category or event.action %}{{ event.category }}{% if event.category and event.action %} · {% endif %}{{ event.action }}{% endif %} {{ event.traffic_type }} {{ event.message|truncatechars:180 }} {{ event.request_path|truncatechars:100|default:'—' }}
{% trans "No canonical log events match the current filters." %}
{% trans "Generate a safe self-test event with" %} python manage.py paxalia_logs_test {% trans "to verify the handler and database path." %}
{% include 'paxalia/includes/pagination.html' %}

{% trans "Daily Summary" %}

{% for row in daily %}{% empty %}{% endfor %}
{% trans "Date" %}{% trans "Events" %}{% trans "Critical" %}{% trans "Errors" %}{% trans "Warnings" %}{% trans "Info" %}{% trans "Browser Errors" %}{% trans "Login Failures" %}{% trans "API Failures" %}{% trans "Bot Failures" %}
{{ row.day|date:'Y-m-d' }}{{ row.count }}{{ row.critical }}{{ row.errors }}{{ row.warnings }}{{ row.info }}{{ row.browser_errors }}{{ row.login_failures }}{{ row.api_failures }}{{ row.bot_failures }}
{% trans "No daily data." %}

{% trans "Repeated Problems" %}

{{ stats.repeated_problems }}
{% for group in groups %}{% empty %}{% endfor %}
{% trans "Severity" %}{% trans "Source" %}{% trans "Problem" %}{% trans "Occurrences" %}{% trans "Suppressed" %}{% trans "Last Seen" %}
{{ group.severity }}{{ group.source }}{{ group.normalized_message|truncatechars:180 }}{{ group.occurrence_count }}{{ group.suppressed_count }}{{ group.last_seen|date:'Y-m-d H:i:s' }}
{% trans "No grouped problems in this range." %}
{% endblock %} {% block page_scripts %} {% endblock %}