--- kind: compose metadata: name: Grafana Alloy description: |- Grafana Alloy is an open telemetry collector that collects, processes, and exports metrics to various backends. ## Prerequisites - :warning: When alloy runs in a container, you should set the `container_hostname` to a unique value to identify the instance in your monitoring backend. Otherwise it defaults to the container ID. ## Resources - **Project**: https://grafana.com/oss/alloy/ - **Documentation**: https://grafana.com/docs/alloy/latest/ - **GitHub**: https://github.com/grafana/alloy version: v1.12.1 author: Christian Lempa date: '2025-12-15' tags: - traefik icon: provider: selfh id: grafana spec: general: vars: service_name: default: alloy logs: title: Log Collection toggle: logs_enabled vars: logs_docker: description: Enable Docker container log collection type: bool default: true logs_enabled: description: Enable log collection type: bool default: false logs_loki_url: description: Loki endpoint URL for sending logs type: url default: http://loki:3100/loki/api/v1/push required: true logs_system: description: Enable system and journalctl log collection type: bool default: true metrics: title: Metrics Collection toggle: metrics_enabled vars: metrics_docker: description: Enable Docker container metrics collection (cAdvisor) type: bool default: true metrics_enabled: description: Enable metrics collection type: bool default: false metrics_prometheus_url: description: Prometheus remote write endpoint type: url default: http://prometheus:9090/api/v1/write required: true metrics_system: description: Enable system (node) metrics collection type: bool default: true ports: vars: ports_webui: description: Port for Alloy web UI type: int default: 12345 traefik: vars: traefik_host: default: alloy