{% extends "performance/dashboard/base.html" %} {% block title %}WebSocket Health · PerfMonitor{% endblock %} {% block page_title %}WebSocket Health{% endblock %} {% block content %}

WebSocket Health

Connection lifecycle · consumer pressure · Source: WebSocketEventLog + PerformanceSummary

Active Connections
{{ kpi_ws_active }}
connects − disconnects in window
Avg Processing Time
{{ kpi_ws_avg_proc }}ms
processing_time_ms
Inbound Messages
{{ kpi_ws_inbound | format_number }}
event_type = receive
Outbound Messages
{{ kpi_ws_outbound | format_number }}
event_type = send
Connection Lifecycle
Connects vs disconnects by hour
Inbound vs Outbound by Consumer
Grouped by consumer_name
Connection Duration Distribution
Disconnect event durations
Consumer Breakdown
Per-consumer active connections and processing costs
{% for c in consumer_breakdown %} {% endfor %}
ConsumerActiveAvg ProcAvg Msg SizeP95 ProcFanout
{{ c.consumer }} {{ c.active }} {{ c.avg_proc }}ms {{ c.avg_msg ~ 'B' if c.avg_msg else '—' }} {{ c.p95_proc ~ 'ms' if c.p95_proc is not none else '—' }} {{ c.fanout }}×
Processing Latency by Event Type
P50/P95/P99 per consumer · event — surfaces slow connect events
{% endblock %}