{ config, ... }: { services.opentelemetry-collector.settings = { receivers.loki = { protocols.http.endpoint = "127.0.0.1:3500"; use_incoming_timestamp = true; }; service.pipelines.logs.receivers = [ "loki" ]; }; services.promtail = { enable = true; configuration = { server = { http_listen_port = 28183; grpc_listen_port = 0; }; positions.filename = "/tmp/positions.yaml"; clients = [ { url = "http://127.0.0.1:3500/loki/api/v1/push"; } ]; scrape_configs = [ { job_name = "journal"; journal = { max_age = "12h"; #labels = { # job = "systemd-journal"; # host = config.networking.hostName; #}; }; relabel_configs = [ { source_labels = [ "__journal__systemd_unit" ]; target_label = "unit"; } { source_labels = [ "__journal__transport" ]; target_label = "transport"; } ]; } ]; }; }; }