# Grafana Loki Output Plugin This plugin writes logs to a [Grafana Loki][loki] instance, using the metric name and tags as labels. The log line will contain all fields in `key="value"` format easily parsable with the `logfmt` parser in Loki. Logs within each stream are sorted by timestamp before being sent to Loki. ⭐ Telegraf v1.18.0 🏷️ logging 💻 all [loki]: https://grafana.com/loki ## Global configuration options In addition to the plugin-specific configuration settings, plugins support additional global and plugin configuration settings. These settings are used to modify metrics, tags, and field or create aliases and configure ordering, etc. See the [CONFIGURATION.md][CONFIGURATION.md] for more details. [CONFIGURATION.md]: ../../../docs/CONFIGURATION.md#plugins ## Secret-store support This plugin supports secrets from secret-stores for the `username` and `password` option. See the [secret-store documentation][SECRETSTORE] for more details on how to use them. [SECRETSTORE]: ../../../docs/CONFIGURATION.md#secret-store-secrets ## Configuration ```toml @sample.conf # A plugin that can transmit logs to Loki [[outputs.loki]] ## The domain of Loki domain = "https://loki.domain.tld" ## Endpoint to write api # endpoint = "/loki/api/v1/push" ## Connection timeout, defaults to "5s" if not set. # timeout = "5s" ## Basic auth credential # username = "loki" # password = "pass" ## Additional HTTP headers # http_headers = {"X-Scope-OrgID" = "1"} ## If the request must be gzip encoded # gzip_request = false ## Optional TLS Config # tls_ca = "/etc/telegraf/ca.pem" # tls_cert = "/etc/telegraf/cert.pem" # tls_key = "/etc/telegraf/key.pem" ## Sanitize Tag Names ## If true, all tag names will have invalid characters replaced with ## underscores that do not match the regex: ^[a-zA-Z_:][a-zA-Z0-9_:]*. # sanitize_label_names = false ## Metric Name Label ## Label to use for the metric name to when sending metrics. If set to an ## empty string, this will not add the label. This is NOT suggested as there ## is no way to differentiate between multiple metrics. # metric_name_label = "__name" ```