{% extends 'silk/base/base.html' %} {% load silk_assets %} {% load silk_filters %} {% block pagetitle %}Silky - Summary{% endblock %} {% block js %} {% endblock %} {% block data %}

Summary

Health of {{ endpoints|length }} endpoint{{ endpoints|length|pluralize }} over {{ stats.count|num }} recorded request{{ stats.count|pluralize }}{% if capped %} (the newest {{ stats.count|num }}){% endif %}.

{% csrf_token %} {% for p in time_presets %} {% endfor %}
{% if not has_data %}

No requests recorded{% if active_preset %} in this range{% endif %}.

Make a request to your app and it will appear here.

{% else %}
Requests
{{ stats.count|num }}
p50
{{ stats.p50|dur_num }}{{ stats.p50|dur_unit }}
p95
{{ stats.p95|dur_num }}{{ stats.p95|dur_unit }}
5xx rate
{{ stats.error_rate|floatformat:"1" }}%
{{ stats.errors|num }} server errors
Avg queries
{{ stats.avg_queries|floatformat:"1" }}
per request
N+1 suspects
{{ stats.n1|num }}
requests
Latency over time
{% if latency %}
{% for t in latency.ticks %}{{ t.label|dur }}{% endfor %}
{% for y in latency.grid %}{% endfor %}
p95p50oldest → newest, {{ latency.requests|num }} requests in {{ latency.buckets }} buckets
{% else %}

Not enough requests to plot.

{% endif %}
Fix these first

Endpoints where the most total time goes: slow multiplied by busy.

{% for e in focus %} {{ forloop.counter }} {{ e.key }} {% for kind, text in e.reasons %}{{ text }}{% empty %}no single cause stands out{% endfor %} {% endfor %}
Status codes
{% for s in status %}{% if s.count %}{% endif %}{% endfor %}
{% for s in status %}{{ s.digit }}xx {{ s.count }}{% endfor %}
{% include 'silk/inclusion/summary_where.html' %}
{% for e in endpoints %} {% endfor %}
EndpointRequestsp50p95 Avg queries5xxTime shareTrend
{{ e.key }}{% if e.n1 %} N+1{% endif %} {{ e.count|num }} {{ e.p50|dur }} {{ e.p95|dur }} {{ e.avg_q|floatformat:"1" }} {% if e.err %}{{ e.err|floatformat:"0" }}%{% else %}0{% endif %} {% if e.spark %}{% endif %}
{% endif %} {% endblock %}