{%- from "_macros.html" import stat_card, auto_refresh_toggle, table_header, filter_search, filter_actions, modal_overlay, pagination_bar, loading_row -%} {% extends "layout.html" %} {% block styles %} .td-endpoint { max-width:260px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-family:var(--mono); font-size:12px; } /* Requests page: viewport-constrained layout (no outer scroll) */ main { height:calc(100vh - 56px); overflow:hidden; display:flex; flex-direction:column; } .stats { flex-shrink:0; margin-bottom:0; } .filters { flex-shrink:0; margin-top:12px; margin-bottom:0; } .req-table-area { flex:1; min-height:0; display:flex; flex-direction:column; overflow:hidden; margin-top:16px; } .table-wrapper { flex:1; min-height:0; display:flex; flex-direction:column; overflow:hidden; } .table-scroll { flex:1; min-height:0; overflow-y:auto; } .pagination { flex-shrink:0; } {% endblock %} {% block header_right %}{{ auto_refresh_toggle("30s") }}{% endblock %} {% block content %}
{{ stat_card("Stored", "statTotal", "ring buffer", sub_id="statRingBuf") }} {{ stat_card("Requests (1h)", "statReqLastHour", "last hour") }} {{ stat_card("Errors (1h)", "statErrLastHour", "4xx / 5xx last hour", "red") }} {{ stat_card("Avg duration", "statAvgDuration", "", "amber", sub_id="statSlowest") }}
{{ filter_search("pathFilter", "Filter by path…", "debounceLoad()") }}
Method
{{ filter_actions("clearFilters", "loadRequests(1)") }}
{{ table_header("fa-arrow-right-arrow-left", "HTTP Requests", "tableCount") }}
{{ loading_row(6) }}
Timestamp Method Path Status Duration
{% call modal_overlay("detailModal", "closeModal") %} {% endcall %} {% endblock %} {% block scripts %} {% endblock %}