diff --git a/fly/alloy.river b/fly/alloy.river index 41bd8c9..d2dedb7 100644 --- a/fly/alloy.river +++ b/fly/alloy.river @@ -110,10 +110,24 @@ prometheus.scrape "self" { scrape_interval = "15s" } -// Add instance label to all metrics +// Strip the "loki_process_custom_" prefix that Alloy adds to stage.metrics, +// then add instance label. This keeps dashboard queries clean. prometheus.relabel "instance" { forward_to = [prometheus.remote_write.prometheus.receiver] + rule { + source_labels = ["__name__"] + regex = "loki_process_custom_(.*)" + target_label = "__name__" + replacement = "$1" + } + + // Drop internal labels added by the loki pipeline + rule { + regex = "component_id|component_path|filename" + action = "labeldrop" + } + rule { target_label = "instance" replacement = "flyio-proxy"