Skip to main content

Observability configuration

[observability]​

Logging and metrics.

[observability.log]​

What the broker logs, and where.
[observability.log]
level = "info"

observability.log.level​

stringrestart to apply

The most verbose level written to standard output. A RUST_LOG environment variable takes precedence when it is set.

Default
"info"
Allowed values
"error"Writes errors only.
"warn"Writes warnings and errors.
"info"Writes operational information, warnings and errors.
"debug"Adds debug diagnostics.
"trace"Adds full trace diagnostics.
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__LEVEL

[observability.log.file]​

The optional structured log file.
[observability.log.file]
mode = "disabled"
# directory = "/var/log/andromeda"
name = "andromeda.log"
format = "json"
rotation = "daily"
compression = "gzip"
max_retained_files = 7
level = "info"

observability.log.file.mode​

stringrestart to apply

Whether structured records are written to a rotating file.

Default
"disabled"
Allowed values
"disabled"Turn the feature off.
"enabled"Turn the feature on.
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__MODE

observability.log.file.directory​

pathrestart to apply

Where the log files are written. Left out, they go in an andromeda directory in the platform state directory ($XDG_STATE_HOME, or ~/.local/state), or in the data directory on a platform without one.

Default
Not set. Example: "/var/log/andromeda"
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__DIRECTORY

observability.log.file.name​

pathrestart to apply

The name of the current log file, before the rotation suffix.

Default
"andromeda.log"
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__NAME

observability.log.file.format​

stringrestart to apply

The shape of each record in the file.

Default
"json"
Allowed values
"json"One JSON record per line, with the current span and the span list.
"jsonl"One compact JSON record per line, without the span fields (JSON Lines).
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__FORMAT

observability.log.file.rotation​

stringrestart to apply

How often a new file is started.

Default
"daily"
Allowed values
"daily"Starts a new file once per calendar day.
"hourly"Starts a new file once per hour.
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__ROTATION

observability.log.file.compression​

stringrestart to apply

Whether rotated files are compressed.

Default
"gzip"
Allowed values
"none"Keeps rotated files uncompressed.
"gzip"Compresses rotated files with gzip.
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__COMPRESSION

observability.log.file.max_retained_files​

positive integerrestart to apply

The most rotated files kept. Past it, the oldest is deleted.

Default
7
Must be
0 < max_retained_files
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__MAX_RETAINED_FILES

observability.log.file.level​

stringrestart to apply

The most verbose level written to the file, independent of observability.log.level.

Default
"info"
Allowed values
"error"Writes errors only.
"warn"Writes warnings and errors.
"info"Writes operational information, warnings and errors.
"debug"Adds debug diagnostics.
"trace"Adds full trace diagnostics.
Environment variable
ANDROMEDA__OBSERVABILITY__LOG__FILE__LEVEL

[observability.metrics]​

Which exporters the broker's metrics go to, one table each.

[observability.metrics.prometheus]​

Prometheus metrics served at GET /metrics on the management endpoints.
[observability.metrics.prometheus]
mode = "disabled"

observability.metrics.prometheus.mode​

stringrestart to apply

Whether metrics are recorded and served at GET /metrics on the management endpoints.

Default
"disabled"
Allowed values
"disabled"Turn the feature off.
"enabled"Turn the feature on.
Also required
Environment variable
ANDROMEDA__OBSERVABILITY__METRICS__PROMETHEUS__MODE