fix: fail fast when loki datasource has no labels
This commit is contained in:
@@ -98,6 +98,26 @@
|
||||
- loki_host_ip.stdout | length > 0
|
||||
- loki_nodeport.stdout | length > 0
|
||||
|
||||
- name: Query Loki labels endpoint from Grafana pod
|
||||
shell: >-
|
||||
kubectl -n {{ observability_namespace }} exec {{ grafana_pod_name.stdout }} -c grafana --
|
||||
sh -c 'wget -qO- --timeout=10 {{ grafana_loki_effective_url }}/loki/api/v1/labels'
|
||||
register: grafana_loki_labels
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
when: loki_enabled
|
||||
|
||||
- name: Fail when Loki is reachable but has zero indexed labels
|
||||
fail:
|
||||
msg: >-
|
||||
Loki is reachable from Grafana at {{ grafana_loki_effective_url }} but /loki/api/v1/labels returned no labels.
|
||||
This usually means no logs are ingested yet. Check Promtail and tenant configuration.
|
||||
when:
|
||||
- loki_enabled
|
||||
- grafana_loki_labels.rc == 0
|
||||
- "'\"status\":\"success\"' in (grafana_loki_labels.stdout | replace(' ', ''))"
|
||||
- "'\"data\":[]' in (grafana_loki_labels.stdout | replace(' ', ''))"
|
||||
|
||||
- name: Write default Prometheus datasource ConfigMap patch
|
||||
template:
|
||||
src: grafana-default-prometheus-datasource.yaml.j2
|
||||
|
||||
Reference in New Issue
Block a user