Metrics reference
Stewart serves these metrics at GET /metrics on the admin port, in the Prometheus text format, under the admin
token. Status and control explains how to turn the port on and scrape it.
| Metric | Type | Labels | Meaning |
|---|---|---|---|
stewart_app_events_delivered_total |
counter | app, worker |
Events delivered to the app handlers. |
stewart_app_exposed_commands_total |
counter | Home Assistant commands on the app’s exposed entities by outcome. | |
stewart_app_exposed_entities |
gauge | app, worker |
Home Assistant entities the app exposes, unavailable ones included. |
stewart_app_failures_total |
counter | app, worker |
Handler failures of the app. |
stewart_app_info |
gauge | app, worker, class |
App class per app; always 1. |
stewart_app_last_failure_timestamp_seconds |
gauge | app, worker |
Unix time of the last app failure. |
stewart_app_paused |
gauge | app, worker |
Whether the app is paused; 1 or 0. |
stewart_app_publishes_total |
counter | app, worker |
Messages the app published. |
stewart_app_schedule_runs_total |
counter | app, worker |
Scheduled handler runs. |
stewart_app_schedules |
gauge | app, worker |
Schedules the app holds. |
stewart_app_service_call_duration_seconds |
histogram | app, worker, outcome |
Home Assistant call latency of the app by outcome. |
stewart_app_service_calls_total |
counter | app, worker, outcome |
Home Assistant calls of the app by outcome. |
stewart_app_state |
gauge | app, worker, state |
App lifecycle state; 1 for the current one. |
stewart_app_subscription_dropped_total |
counter | app, worker |
Events dropped because a subscription queue was full. |
stewart_app_subscriptions |
gauge | app, worker |
Subscriptions the app holds. |
stewart_app_suppressed_total |
counter | app, worker |
Work skipped while the app was paused. |
stewart_broker_memory_bytes |
gauge | Memory the broker process holds. | |
stewart_build_info |
gauge | version, ha_version |
Stewart and Home Assistant versions; always 1. |
stewart_component_info |
gauge | version, protocol |
Version and protocol of the stewart Home Assistant integration; always 1. |
stewart_component_state |
gauge | state |
State of the stewart Home Assistant integration; 1 for the current one. |
stewart_deploy_failures_total |
counter | New commits that failed stewart check and were not deployed. | |
stewart_deploy_info |
gauge | commit |
Commit the daemon runs while it polls for new ones; always 1. |
stewart_ha_connection_phase |
gauge | phase |
Home Assistant connection phase; 1 for the current one. |
stewart_ha_entities |
gauge | Entities in the Home Assistant state cache. | |
stewart_ha_last_outage_seconds |
gauge | Length of the last Home Assistant outage. | |
stewart_ha_reconnects_total |
counter | Home Assistant reconnects since the daemon started. | |
stewart_routing_cache_hits_total |
counter | Routing lookups answered from the cache. | |
stewart_routing_cache_misses_total |
counter | Routing lookups that missed the cache. | |
stewart_routing_cached_keys |
gauge | Routing keys with a cached match. | |
stewart_routing_patterns |
gauge | Wildcard patterns in the broker routing index. | |
stewart_routing_subscriptions |
gauge | Subscriptions in the broker routing index. | |
stewart_service_calls_in_flight |
gauge | Home Assistant calls awaiting an answer. | |
stewart_service_calls_refused_total |
counter | Home Assistant calls refused for lack of a free slot. | |
stewart_start_time_seconds |
gauge | Unix time the daemon started. | |
stewart_store_available |
gauge | Whether workers reach the store; 1 or 0. | |
stewart_store_last_failure_timestamp_seconds |
gauge | Unix time of the last store failure. | |
stewart_worker_last_pong_timestamp_seconds |
gauge | worker |
Unix time of the last liveness answer. |
stewart_worker_loop_lag_seconds |
gauge | worker |
Event loop lag the worker last reported. |
stewart_worker_memory_bytes |
gauge | worker |
Memory the worker process last reported. |
stewart_worker_missed_probes |
gauge | worker |
Liveness probes the worker has not answered in a row. |
stewart_worker_outbox_coalesced_state_changes_total |
counter | worker |
State changes merged into a newer one before delivery. |
stewart_worker_outbox_dropped_total |
counter | worker |
Messages dropped because the worker outbox was full. |
stewart_worker_outbox_largest_state_batch |
gauge | worker |
Largest state change batch sent to the worker. |
stewart_worker_outbox_queued |
gauge | worker |
Messages waiting in the outbox to the worker. |
stewart_worker_outbox_state_batches_sent_total |
counter | worker |
State change batches sent to the worker. |
stewart_worker_phase |
gauge | worker, phase |
Worker lifecycle phase; 1 for the current one. |
stewart_worker_quarantines_total |
counter | worker |
Times the worker was quarantined after using up its restart budget. |
stewart_worker_ready |
gauge | worker |
Whether the worker finished booting its apps; 1 or 0. |
stewart_worker_restart_due_timestamp_seconds |
gauge | Unix time of the next scheduled restart. | |
stewart_worker_restarts_in_window |
gauge | worker |
Restarts inside the current restart budget window. |
stewart_worker_restarts_total |
counter | worker |
Restarts scheduled since the daemon started. |
stewart_worker_service_calls_in_flight |
gauge | worker |
Home Assistant calls of this worker awaiting an answer. |
stewart_workers |
gauge | Worker slots the broker supervises. | |
stewart_workers_live |
gauge | Worker processes currently running. |