{% if entry.type == 'request' %} {% elif entry.type == 'query' %} {% elif entry.type == 'log' %} {% elif entry.type == 'exception' %} {% elif entry.type == 'job' %} {% elif entry.type == 'command' %} {% elif entry.type == 'cache' %} {% elif entry.type == 'model' %} {% elif entry.type == 'http_client' %} {% elif entry.type == 'dump' %} {% elif entry.type == 'mail' %} {% elif entry.type == 'signal' %} {% elif entry.type == 'redis' %} {% elif entry.type == 'gate' %} {% endif %}

{{ entry.type }}

{{ entry.id }}

Duration

{% if entry.duration_ms %}{{ entry.duration_ms|floatformat:1 }}ms{% else %}-{% endif %}

Time

{{ entry.created_at|time:"H:i:s" }}

Family

{% if entry.family_hash %} {{ entry.family_hash|truncatechars:8 }} {% else %} - {% endif %}

{% if entry.type == 'request' %}
{{ entry.payload.status_code }} {{ entry.payload.method }} {{ entry.payload.full_path }}
{% if entry.payload.client_ip %}
{{ entry.payload.client_ip }} {% if entry.payload.user_str %} {{ entry.payload.user_str }} {% endif %}
{% endif %} {% if entry.payload.query_count %}
{{ entry.payload.query_count }} queries
{% endif %}
{% endif %} {% if entry.type == 'exception' %}
{{ entry.payload.exception_type }}

{{ entry.payload.message }}

{% if entry.payload.traceback %}

Stack Trace

{% for frame in entry.payload.traceback %}
{{ frame.filename }}:{{ frame.lineno }} {{ frame.name }} {% if frame.line %}
{{ frame.line }}
{% endif %}
{% endfor %}
{% endif %} {% endif %} {% if entry.type == 'query' %}
{% if entry.payload.is_slow or entry.payload.is_duplicate %}
{% if entry.payload.is_slow %} SLOW QUERY {% endif %} {% if entry.payload.is_duplicate %} DUPLICATE (×{{ entry.payload.duplicate_count }}) {% endif %}
{% endif %} {% if entry.payload.caller.filename %}
{{ entry.payload.caller.filename }}:{{ entry.payload.caller.lineno }}
{% endif %}
{% endif %}

Full Payload

{{ payload_json }}
{% if related_entries %}

Related Entries ({{ related_entries|length }})

{% for related in related_entries %}
{% if related.type == 'request' %} {% elif related.type == 'query' %} {% elif related.type == 'log' %} {% elif related.type == 'exception' %} {% elif related.type == 'job' %} {% elif related.type == 'command' %} {% elif related.type == 'cache' %} {% elif related.type == 'model' %} {% elif related.type == 'http_client' %} {% elif related.type == 'dump' %} {% endif %}
{{ related.summary }} {{ related.created_at|time:"H:i:s" }}
{% endfor %}
{% endif %} {% if duplicate_entries %}

Duplicate Queries (N+1 Detected)

{{ duplicate_entries|length }} similar

These queries have the same SQL. Consider using select_related() or prefetch_related() to optimize.

{% for dup in duplicate_entries %}
{{ dup.duration_ms|floatformat:1 }}ms {{ dup.created_at|time:"H:i:s.u" }}
{% endfor %}
{% endif %}