logging
logging is an optional configuration block used to customize how Alloy produces log messages.
logging is specified without a label and can only be provided once per configuration file.
Usage
logging {
}Arguments
You can use the following arguments with logging:
Log level
The following strings are recognized as valid log levels:
"error": Only write logs at the error level."warn": Only write logs at the warn level or above."info": Only write logs at info level or above."debug": Write all logs, including debug level logs.
Log format
The following strings are recognized as valid log line formats:
"json": Write logs as JSON objects."logfmt": Write logs aslogfmtlines.
Log receivers
The write_to argument allows Alloy to tee its log entries to one or more loki.* component log receivers in addition to the default location.
This, for example can be the export of a loki.write component to send log entries directly to Loki, or a loki.relabel component to add a certain label first.
Log location
Alloy writes all logs to stderr.
When you run Alloy as a systemd service, you can view logs written to stderr through journald.
When you run Alloy as a container, you can view logs written to stderr through docker logs or kubectl logs, depending on whether Docker or Kubernetes was used for deploying Alloy.
When you run Alloy as a Windows service, logs are written as event logs. You can view the logs through Event Viewer.
In other cases, redirect stderr of the Alloy process to a file for logs to persist on disk.
Retrieve logs
You can retrieve the logs in different ways depending on your platform and installation method:
Linux:
- If you’re running Alloy with systemd, use
journalctl -u alloy. - If you’re running Alloy in a Docker container, use
docker logs CONTAINER_ID.
macOS:
- If you’re running Alloy with Homebrew as a service, use
brew services info grafana/grafana/alloyto check status andtail -f $(brew --prefix)/var/log/alloy.logfor logs. - If you’re running Alloy with launchd, use
log show --predicate 'process == "alloy"' --infoor check/usr/local/var/log/alloy.log. - If you’re running Alloy in a Docker container, use
docker logs CONTAINER_ID.
Windows:
- If you’re running Alloy as a Windows service, check the Windows Event Viewer under Windows Logs > Application for Alloy-related events.
- If you’re running Alloy that is manually installed, check the log files in
%PROGRAMDATA%\Grafana\Alloy\logs\or the directory specified in your configuration. - If you’re running Alloy in a Docker container, use
docker logs CONTAINER_ID.
All platforms:
- Alloy writes logs to
stderrif started directly without a service manager.
Example
logging {
level = "info"
format = "logfmt"
}


