Documentation
Observabilite et logs Docker
Configurez Prometheus, Loki, Alloy, Grafana et l'ingestion de logs Docker.
Utilisez ce pattern quand un workspace local a besoin de métriques, logs, dashboards et ingestion des logs de containers Docker.
alloy active implicitement loki. Ajoutez docker si vous voulez aussi le support des métriques du daemon Docker.
schema_version = 1
tld = "local.dev.test"
enabled = [
"docker",
"prometheus",
"loki",
"alloy",
"grafana",
]
[prometheus]
scrape_config_files = ["./monitoring/prometheus.yml"]
[alloy]
import_files = [
{ name = "app", path = "./monitoring/config.alloy" },
]
blocks = [
'app.logs "local_app_logs" { forward_to = loki.write.default.receiver }',
]
[alloy.docker_logs]
enabled = true
refresh_interval = "5s"
[alloy.docker_logs.labels]
environment = "local"
origin = "docker"
[[alloy.docker_logs.relabel]]
source_labels = ["__meta_docker_container_label_service"]
target_label = "service"
[[alloy.docker_logs.relabel]]
source_labels = ["__meta_docker_container_name"]
target_label = "container"
[grafana]
[[grafana.dashboard_dirs]]
dir = "./grafana/dashboards"
folder = "Apps"A adapter
prometheus.scrape_config_files: pointez vers des configs YAML de scrape dans votre repository.alloy.import_files: importez les modules Alloy qui definissent des pipelines reutilisables.alloy.blocks: ajoutez les blocs Alloy bruts requis par votre stack locale.alloy.docker_logs.labels: ajoutez des labels stables pour rechercher les logs locaux.alloy.docker_logs.relabel: mappez les labels de metadonnees Docker qui existent vraiment sur vos containers.grafana.dashboard_dirs: pointez vers les dossiers contenant des dashboards*.json.
Pour les valeurs par défaut exactes, voir les sections de référence [alloy], [prometheus] et [grafana].