Skip to main content
Version: 0.16

Overview

Telemetry covers the collection, transmission, and analysis of data from a running system, used to monitor performance, diagnose issues, and guide operational decisions. In Stalwart, telemetry provides the signals administrators rely on to understand system behaviour, track performance, and validate reliability and security.

Stalwart exposes several mechanisms for capturing logs, traces, and metrics. The available telemetry facilities are:

  • Tracing and logging: detailed trace and log output, configured through the Tracer object. Output can go to a log file, standard error, the systemd journal, or an OpenTelemetry collector.
  • Metrics: quantitative measurements of server activity and resource use, configured through the Metrics singleton.
  • Webhooks: HTTP callbacks that deliver event notifications to external systems, configured through the WebHook object.
  • Live telemetry: real-time streaming of events and metrics over HTTP using Server-Sent Events.
  • Alerts: rules that fire when a metric condition is met, configured through the Alert object.
  • History: persisted traces and metrics retained for later analysis, configured through the TracingStore and MetricsStore singletons together with the DataRetention object.

These mechanisms let administrators observe the operational state of Stalwart, identify and resolve issues, and tune performance.