{% extends 'dashboard.html' %} {% block page %}

Dashboard Overview

Timer Functions

Total Timer Functions

{{ stats.total_timer_functions }}

Active Timer Functions

{{ stats.active_timer_functions }}

Timer Invocations

{{ stats.timer_invocations }}

Success Rate

{{ stats.timer_success_rate }}%

({{ stats.timer_successful_invocations }}/{{ stats.timer_invocations }})

HTTP Functions

Total HTTP Functions

{{ stats.total_http_functions }}

Public HTTP Functions

{{ stats.public_http_functions }}

HTTP Invocations

{{ stats.http_invocations }}

Success Rate

{{ stats.http_success_rate }}%

({{ stats.http_successful_invocations }}/{{ stats.http_invocations }})

24-Hour Invocation Distribution

{% set max_count = namespace(value=1) %} {% for hour in hour_distribution %} {% if hour.count > max_count.value %} {% set max_count.value = hour.count %} {% endif %} {% endfor %} {% for hour in hour_distribution %} {% set x = 40 + (hour.hour * 14) %} {% set height = (hour.count / max_count.value) * 160 %} {% set y = 180 - height %} {{ hour.hour }}:00 - {{ hour.count }} invocations {% endfor %} {% for h in [0, 6, 12, 18, 23] %} {{ h }}h {% endfor %}

7-Day Success Rate Trend

{% set path = namespace(d='M') %} {% for day in success_trend %} {% set x = 380 - (loop.index0 * 48) %} {% set y = 180 - (day.success_rate * 1.6) %} {% if loop.first %} {% set path.d = path.d ~ x ~ "," ~ y %} {% else %} {% set path.d = path.d ~ " L" ~ x ~ "," ~ y %} {% endif %} {% endfor %} {% for day in success_trend %} {% set x = 380 - (loop.index0 * 48) %} {% set y = 180 - (day.success_rate * 1.6) %} {{ day.day_name }}: {{ day.success_rate }}% success rate {{ day.day_name }} {% endfor %} {% for percent in [0, 25, 50, 75, 100] %} {{ percent }}% {% endfor %}

Last Activity

{% if stats.last_timer_invocation %}

Last Timer Invocation: {{ stats.last_timer_invocation.strftime('%Y-%m-%d %H:%M') }}

{% endif %} {% if stats.last_http_invocation %}

Last HTTP Invocation: {{ stats.last_http_invocation.strftime('%Y-%m-%d %H:%M') }}

{% endif %}
{% endblock %}