Add loki service

This commit is contained in:
Tobias Reisinger 2025-06-08 19:58:44 +02:00
parent 37a304d161
commit cbc5df483d
Signed by: serguzim
GPG key ID: 13AD60C237A28DFE
11 changed files with 170 additions and 3 deletions

View file

@ -1,6 +1,6 @@
logging {
level = "info"
format = "logfmt"
level = "info"
write_to = [loki.relabel.alloy_logs.receiver]
}
prometheus.remote_write "mimir" {
@ -65,4 +65,60 @@ prometheus.scrape "{{ job.name }}" {
forward_to = [prometheus.remote_write.mimir.receiver]
}
{% endfor %}
{% endfor %}
loki.write "loki" {
endpoint {
url = "https://{{ lgtm_stack_loki_domain }}/loki/api/v1/push"
}
}
loki.relabel "alloy_logs" {
rule {
target_label = "instance"
replacement = "{{ inventory_hostname }}"
}
rule {
target_label = "job"
replacement = "integrations/self"
}
forward_to = [loki.write.loki.receiver]
}
discovery.docker "linux" {
host = "unix:///var/run/docker.sock"
filter {
name = "label"
values = ["net.serguzim.logs.collect=true"]
}
}
loki.source.docker "default" {
host = "unix:///var/run/docker.sock"
targets = discovery.docker.linux.targets
labels = {"app" = "docker"}
relabel_rules = discovery.relabel.logs_docker_containers.rules
forward_to = [loki.write.loki.receiver]
}
discovery.relabel "logs_docker_containers" {
targets = []
rule {
source_labels = ["__meta_docker_container_label_com_docker_compose_project"]
target_label = "compose_project"
}
rule {
source_labels = ["__meta_docker_container_label_com_docker_compose_service"]
target_label = "compose_service"
}
rule {
source_labels = ["__meta_docker_container_name"]
target_label = "container_name"
}
}

View file

@ -2,6 +2,7 @@
lgtm_stack_domain: "{{ all_services | service_get_domain(role_name) }}"
lgtm_stack_mimir_domain: mimir.serguzim.me
lgtm_stack_alloy_domain: alloy.serguzim.me
lgtm_stack_loki_domain: "{{ all_services | service_get_domain('loki') }}"
lgtm_stack_alloy_jobs: "{{ all_services | services_to_alloy() }}"
@ -142,6 +143,7 @@ lgtm_stack_compose:
image: grafana/alloy:latest
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./config.alloy:/etc/alloy/config.alloy:ro
command:
- run