server: http_listen_port: 9080 grpc_listen_port: 0 positions: filename: /tmp/positions.yaml clients: - url: http://${LOKI_HOST:-loki}:3100/loki/api/v1/push scrape_configs: - job_name: flog_scrape docker_sd_configs: - host: unix:///var/run/docker.sock refresh_interval: 5s relabel_configs: - source_labels: ['__meta_docker_container_name'] regex: '/(.*)' target_label: 'container' - source_labels: ['__meta_docker_container_label_com_docker_compose_oneoff'] target_label: oneoff - source_labels: ['__meta_docker_container_label_com_docker_compose_project_config_files'] target_label: compose_file - source_labels: ['__meta_docker_container_label_com_docker_compose_project'] target_label: project_name - source_labels: ['__meta_docker_container_label_com_docker_compose_service'] target_label: service - target_label: 'host' replacement: '${HOSTNAME}' pipeline_stages: - match: selector: '{container="zigbee2mqtt"} |= "MQTT publish"' stages: - regex: expression: "topic '(?Pzigbee2mqtt\/(?P[^\/]+).*?)', payload '(?P.*?)'$" - labels: topic: device: payload: - match: selector: '{topic=~".*action$"}' stages: - labels: action: "payload" - match: selector: '{container="zigbee2mqtt"} |= "occupancy"' stages: - json: expressions: occupancy: occupancy source: payload - labels: occupancy: - match: selector: '{container="zigbee2mqtt"} |= "contact"' stages: - json: expressions: contact: contact source: payload - labels: contact: