prometheus.exporter.cadvisor "integrations_cadvisor" { docker_only = true } discovery.relabel "integrations_cadvisor" { targets = prometheus.exporter.cadvisor.integrations_cadvisor.targets rule { target_label = "job" replacement = "integrations/docker" } rule { target_label = "instance" replacement = constants.hostname } } prometheus.relabel "integrations_cadvisor" { forward_to = [prometheus.remote_write.metrics_service.receiver] rule { source_labels = ["__name__"] regex = "container_cpu_usage_seconds_total|container_fs_reads_total|container_fs_usage_bytes|container_fs_writes_total|container_last_seen|container_memory_usage_bytes|container_network_receive_bytes_total|container_network_receive_errors_total|container_network_receive_packets_dropped_total|container_network_transmit_bytes_total|container_network_transmit_errors_total|container_network_transmit_packets_dropped_total|container_spec_memory_reservation_limit_bytes|machine_memory_bytes|machine_scrape_error|up" action = "keep" } } prometheus.scrape "integrations_cadvisor" { targets = discovery.relabel.integrations_cadvisor.output forward_to = [prometheus.relabel.integrations_cadvisor.receiver] } prometheus.remote_write "metrics_service" { endpoint { url = "https://prometheus-prod-55-prod-gb-south-1.grafana.net/api/prom/push" basic_auth { username = "3166394" password = sys.env("GCLOUD_RW_API_KEY") } } } discovery.docker "logs_integrations_docker" { host = "unix:///var/run/docker.sock" refresh_interval = "5s" } discovery.relabel "logs_integrations_docker" { targets = [] rule { target_label = "job" replacement = "integrations/docker" } rule { target_label = "instance" replacement = constants.hostname } rule { source_labels = ["__meta_docker_container_name"] regex = "/(.*)" target_label = "container" } rule { source_labels = ["__meta_docker_container_log_stream"] target_label = "stream" } } loki.source.docker "logs_integrations_docker" { host = "unix:///var/run/docker.sock" targets = discovery.docker.logs_integrations_docker.targets forward_to = [loki.write.grafana_cloud_loki.receiver] relabel_rules = discovery.relabel.logs_integrations_docker.rules refresh_interval = "5s" } loki.write "grafana_cloud_loki" { endpoint { url = "https://logs-prod-035.grafana.net/loki/api/v1/push" basic_auth { username = "1578872" password = sys.env("GCLOUD_RW_API_KEY") } } }