prom_services.append(build_url(scheme='http', host=addr, port=port))
deps.append(dd.name())
+
+ loki_services = [] # type: List[str]
+ for dd in self.mgr.cache.get_daemons_by_service('mgr'):
+ addr = self.mgr.inventory.get_addr(dd.hostname)
+ loki_services.append(build_url(scheme='http', host=addr, port=3100))
grafana_data_sources = self.mgr.template.render(
- 'services/grafana/ceph-dashboard.yml.j2', {'hosts': prom_services})
+ 'services/grafana/ceph-dashboard.yml.j2', {'hosts': prom_services, 'loki_hosts': loki_services})
cert = self.mgr.get_store('grafana_crt')
pkey = self.mgr.get_store('grafana_key')
- name: 'Dashboard{{ loop.index }}'
orgId: 1
{% endfor %}
+{% for loki_host in loki_hosts %}
+ - name: 'Loki{{ loop.index }}'
+ orgId: 1
+{% endfor %}
datasources:
{% for host in hosts %}
isDefault: {{ 'true' if loop.first else 'false' }}
editable: false
{% endfor %}
+
+ - name: 'Loki'
+ type: 'loki'
+ access: 'proxy'
+ orgId: 1
+ url: '{{ loki_hosts[0] }}'
+ basicAuth: false
+ isDefault: true
+ editable: false
--- /dev/null
+# {{ cephadm_managed }}
+deleteDatasources:
+{% for loki_host in loki_hosts %}
+ - name: 'Loki{{ loop.index }}'
+ orgId: 1
+{% endfor %}
+
+datasources:
+ - name: 'Loki{{ loop.index }}'
+ type: 'loki'
+ access: 'proxy'
+ orgId: 1
+ url: '{{ loki_hosts }}'
+ basicAuth: false
+ isDefault: {{ 'true' if loop.first else 'false' }}
+ editable: false