{% extends "base.html" %} {% load static %} {% block title %}Database Performance Monitoring{% endblock %} {% block extra_css %} {% endblock %} {% block content %}
Loading...

💾 Database Performance Monitoring

Monitor database performance, query optimization, and system health

📈 Performance Overview

{{ performance_stats.optimization_stats.cache_hits|default:0 }}

Cache Hits

{{ performance_stats.optimization_stats.optimized_queries|default:0 }}

Optimized Queries

{{ performance_stats.database_info.cache_hit_ratio|default:0|floatformat:1 }}%

DB Cache Hit Ratio

{{ performance_stats.database_info.active_connections|default:0 }}

Active Connections

Database Health

Connection: {{ health_metrics.connection_health }}
Cache Hit Ratio: {{ health_metrics.cache_hit_ratio|floatformat:1 }}%
Lock Conflicts: {{ health_metrics.lock_conflicts }}
{% if health_metrics.table_bloat %}
Table Bloat Issues:
    {% for bloat in health_metrics.table_bloat|slice:":3" %}
  • {{ bloat.table }}: {{ bloat.bloat_ratio }}% bloat
  • {% endfor %}
{% endif %}
Database: {% if performance_stats.database_info.version %} {{ performance_stats.database_info.version|truncatewords:3 }} {% else %} Unknown {% endif %}

🛠️ Optimization Actions

{% csrf_token %}
{% csrf_token %}
{% csrf_token %}
{% csrf_token %}

{% if query_performance.slow_queries %}

Slow Queries

{% for query in query_performance.slow_queries|slice:":10" %} {% endfor %}
Query Calls Mean Time (ms) Total Time (ms) Rows
{{ query.query }} {{ query.calls }} {{ query.mean_time }} {{ query.total_time }} {{ query.rows }}
{% endif %} {% if query_performance.table_stats %}

Table Statistics

{% for stat in query_performance.table_stats %} {% endfor %}
Table Live Tuples Dead Tuples Updates
{{ stat.table }} {{ stat.live_tuples|default:0 }} {{ stat.dead_tuples|default:0 }} {{ stat.updates|default:0 }}

🔍 Index Usage

{% for idx in query_performance.index_usage|slice:":10" %} {% endfor %}
Index Table Reads Fetches
{{ idx.index|truncatechars:20 }} {{ idx.table }} {{ idx.tuples_read|default:0 }} {{ idx.tuples_fetched|default:0 }}
{% endif %} {% if recommendations %}

💡 Performance Recommendations

{% for rec in recommendations %}
[{{ rec.priority|upper }}] {{ rec.title }}

{{ rec.description }}

{% if rec.details %}
Details
{{ rec.details|pprint }}
{% endif %}
{% endfor %}
{% endif %}

Last updated: {{ last_updated|date:"Y-m-d H:i:s" }}

{% endblock %} {% block extra_js %} {% endblock %}