Grafana «Источник данных подключен, но метки не получены. Убедитесь, что Loki и Promtail настроены правильно».
Я пытаюсь установить loki, чтобы читать логи Grafana, но продолжаю получатьData source connected, but no labels received. Verify that Loki and Promtail is configured properly.
(из журналов ничего).
Я использую образы докеров для каждого сервиса (grafana, loki, promtail) на Raspberry Pi 4 8Gb.
Каждая служба работает корректно. Я могу подключиться к Grafana (localhost:3000
) и просмотрите данные node_exporter. Я могу подключиться к самому локи и посмотреть метрики(localhost:3100/metrics
), а также я могу подключиться к Promtail (localhost:9080/targets
).
В Графане я пытался указать Локи на10.88.0.1:3100/metrics
(поскольку Grafana — это докер-контейнер, мне приходится использовать10.88.0.1
для подключения к хосту), но получаю новую ошибкуUnable to fetch labels from Loki (Failed to call resource), please check the server logs for more details
Вот что я получаю из журналов этой ошибки:
logger=context userId=1 orgId=1 uname=admin t=2023-02-12T13:21:35.204508553Z level=error msg="Failed to call resource" error="404 page not found\n" traceID=
logger=context userId=1 orgId=1 uname=admin t=2023-02-12T13:21:35.204758623Z level=error msg="Request Completed" method=GET path=/api/datasources/2/resources/labels status=500 remote_addr=192.168.1.20 time_ms=7 duration=7.563973ms size=51 referer=http://raspberry.local:3000/datasources/edit/sgEZvn14k handler=/api/datasources/:id/resources/*
Это странно, потому что без/metrics
Графана находит Локи.
Я использую ansible для подготовки своего рашпиля:
- name: Grafana - Run container using podman
containers.podman.podman_container:
name: grafana
image: grafana/grafana-oss:latest
state: started
recreate: true
restart_policy: on-failure
ports: "3000:3000"
memory: "2048m"
net:
- host
volume:
- "grafana-storage:/var/lib/grafana"
- name: Loki - Run container using podman
containers.podman.podman_container:
name: loki
image: grafana/loki:latest
state: started
recreate: true
restart_policy: on-failure
ports: "3100:3100"
memory: "2048m"
net:
- host
volume:
- "loki-storage:/loki"
- name: Promtail - Run container using podman
containers.podman.podman_container:
name: promtail
image: grafana/promtail:latest
state: started
recreate: true
restart_policy: on-failure
ports:
- "9080:9080"
- "1514:1514"
memory: "2048m"
net:
- host
volume:
- "{{ lokiData }}/promtail.yml:/etc/promtail/promtail-config.yml"
command: -config.file=/etc/promtail/promtail-config.yml
Моя конфигурация Promtail:
server:
http_listen_port: 9080
grpc_listen_port: 0
positions:
filename: /tmp/positions.yaml
clients:
- url: http://10.88.0.1:3100/loki/api/v1/push
scrape_configs:
- job_name: syslog
syslog:
listen_address: 0.0.0.0:1514
labels:
job: "syslog"
relabel_configs:
- source_labels: ['__syslog_message_hostname']
target_label: 'host'
моя конфигурация локи:
auth_enabled: false
server:
http_listen_port: 3100
common:
path_prefix: /loki
storage:
filesystem:
chunks_directory: /loki/chunks
rules_directory: /loki/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h
ruler:
alertmanager_url: http://localhost:9093
Я действительно не знаю, что теперь делать, я новичок в Grafana, так что, возможно, я что-то упускаю. Погуглил ошибку, но ничего интересного не нашел (в основном ошибки конфига).