Skip to content

0.4.0

Latest

Choose a tag to compare

@insignia96 insignia96 released this 10 Nov 09:24
c26ab38

[0.4.0] - 2025-11-10

Added

  • OpenTelemetry Metrics Export: New stalwart.metrics.otel configuration for exporting metrics to OpenTelemetry Collector

    • stalwart.metrics.otel.enabled - Enable/disable metrics export (default: false)
    • stalwart.metrics.otel.transport - Transport protocol: "grpc" or "http" (default: "grpc")
    • stalwart.metrics.otel.endpoint - OTel Collector endpoint URL
    • stalwart.metrics.otel.interval - Metrics push interval (default: "30s")
    • Supports both gRPC (host:port) and HTTP (full URL with path) endpoints
  • OpenTelemetry Tracer Configuration: New stalwart.tracer.otel for logs and traces export

    • stalwart.tracer.otel.transport - Transport protocol: "grpc" or "http" (default: "http")
    • stalwart.tracer.otel.logsEndpoint - OTel Collector logs endpoint URL
    • stalwart.tracer.otel.tracesEndpoint - OTel Collector traces endpoint URL
    • stalwart.tracer.otel.level - Log level for OTel export (default: "info")
    • stalwart.tracer.otel.enableLogExporter - Enable log export (default: true)
    • stalwart.tracer.otel.enableSpanExporter - Enable trace export (default: true)
    • stalwart.tracer.otel.throttle - Throttle duration between batches (default: "1s")
    • Creates separate tracer instances for logs and traces with dedicated endpoints

Changed

  • ConfigMap template now generates separate OpenTelemetry tracer configurations ([tracer.otel-logs] and [tracer.otel-traces])
  • OpenTelemetry configuration is opt-in and disabled by default to maintain backward compatibility

Notes

  • This release enables integration with OpenTelemetry-based observability platforms
  • Stalwart metrics, logs, and traces can be sent to collectors like OpenTelemetry Collector for processing and forwarding to backends like VictoriaMetrics, VictoriaLogs, Tempo, or Jaeger
  • All OpenTelemetry features are optional and disabled by default