{% extends "sitepulse/base.html" %} {% block content %} {% for message in warnings %}
{{ message }}
{% empty %}
Collection and aggregation both look healthy.
{% endfor %}

Ingest

Hits dropped (7 days){{ health.dropped_7d }}
Failed write batches (7 days){{ health.write_errors_7d }}
Raw hits today{{ health.raw_hits_today }}
Oldest raw hit{{ health.oldest_raw_hit|default:"none" }}
Rolled up through{{ health.rolled_up_through|default:"never" }}
Nightly job {% if lock %}running since {{ lock.1 }} on {{ lock.0.host }}{% else %}not running{% endif %}

Storage

{% if is_postgres %}
The raw table is partitioned by month, so retention is a DROP TABLE rather than a long-running delete. The catch-all partition should always be empty.
{% for name, month in partitions %} {% endfor %}
PartitionMonth
{{ name }}{{ month|default:"catch-all" }}
{% else %}
Not running on PostgreSQL. Collection and reporting work exactly the same, but the raw table is not partitioned, so sitepulse_prune deletes in chunks instead of dropping partitions, and exact percentiles are unavailable.
{% endif %}

Settings in force

{% for name, value in settings_rows %} {% endfor %}
SettingValue
{{ name }}{{ value }}
{% endblock %}