{% extends "base.html" %} {% block content %}
Enqueued {{ queues | sum(attribute='queued') if queues else 0 }}
Active {{ queues | sum(attribute='active') if queues else 0 }}
Scheduled {{ queues | sum(attribute='scheduled') if queues else 0 }}
Failed {{ queues | sum(attribute='failed') if queues else 0 }}
Complete {{ queues | sum(attribute='complete') if queues else 0 }}

Throughput (Last 24h)

Processed: {{ metrics.total_processed if metrics else 0 }} Failed: {{ metrics.total_failed if metrics else 0 }} Failure Rate: {{ "%.1f" | format(metrics.failure_rate if metrics else 0) }}% Avg Duration: {{ "%.1f" | format(metrics.avg_duration_ms if metrics else 0) }}ms
{% if metrics and metrics.buckets %}
{% set max_val = metrics.buckets | map(attribute='processed') | max %} {% for bucket in metrics.buckets[-30:] %}
{% endfor %}
{% endif %}

Active Jobs (currently executing)

{% if active_jobs %}
{% for job in active_jobs[:10] %} {% endfor %}
Function Queue Running For
{{ job.function_name }} {{ job.queue_name }} {% if job.running_for_seconds > 300 %} {{ "%.0f" | format(job.running_for_seconds) }}s {% elif job.running_for_seconds > 60 %} {{ "%.0f" | format(job.running_for_seconds) }}s {% else %} {{ "%.1f" | format(job.running_for_seconds) }}s {% endif %}
{% if active_jobs | length > 10 %}

Showing 10 of {{ active_jobs | length }}. View all

{% endif %} {% else %}

No jobs currently executing.

{% endif %}

Recent Failed Jobs

{% if failed_jobs %}
{% if allow_write %} {% endif %} {% for job in failed_jobs[:5] %} {% if allow_write %} {% endif %} {% endfor %}
Function Error Failed AtActions
{{ job.function_name }} {% if "unable to serialize" in job.error.lower() %} Error not serializable — check worker logs {% else %} {{ job.error | truncate(80) }} {% endif %} {{ job.failed_at.strftime('%Y-%m-%d %H:%M:%S') }}
{% else %}

No failed jobs.

{% endif %}
{% endblock %}