Merge ~chris.sanders/charm-grafana:fix-template into ~prometheus-charmers/charm-grafana:master
- Git
- lp:~chris.sanders/charm-grafana
- fix-template
- Merge into master
Status: | Merged |
---|---|
Approved by: | Jeremy Lounder |
Approved revision: | 1b82156fc0f5b2a56236e821ae6479e69dc18945 |
Merged at revision: | 9bcd0fa07e51a0ee2347653286226efe15c3fff4 |
Proposed branch: | ~chris.sanders/charm-grafana:fix-template |
Merge into: | ~prometheus-charmers/charm-grafana:master |
Diff against target: |
1324 lines (+169/-140) 9 files modified
layer.yaml (+3/-0) reactive/grafana.py (+28/-4) templates/dashboards/prometheus/CephCluster.json.j2 (+23/-23) templates/dashboards/prometheus/CephOSD.json.j2 (+10/-10) templates/dashboards/prometheus/CephPools.json.j2 (+7/-7) templates/dashboards/prometheus/OpenStackCloud.json.j2 (+46/-46) templates/dashboards/prometheus/RabbitMQ.json.j2 (+11/-11) templates/dashboards/prometheus/Swift.json.j2 (+11/-11) templates/dashboards/prometheus/Telegraf.json.j2 (+30/-28) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Jeremy Lounder (community) | Approve | ||
Drew Freiberger (community) | Abstain | ||
Canonical IS Reviewers | Pending | ||
Review via email: mp+371766@code.launchpad.net |
Commit message
Switch dashboard template variable syntax
Use << and >> in place of {{ and }} for jinja templates because Grafana
uses {{ }} for it's variables as well. This causes Grafana variables to
be removed from templates causing Telegraf metrics to have no disk,
host, or interface names in the labels.
Description of the change
The primary change is the first commit to fix the missing variable labels in Telegraf dashboard. The other two commits were necessary to get it to deploy so I could test it. I tested the change with the following bundle to check that dashboards still render, and Telegraf now has lables where they were missing before.
series: bionic
services:
ceph-osd:
series: bionic
charm: cs:ceph-osd
num_units: 3
options:
osd-devices: "/var/osd1"
ceph-mon:
series: bionic
charm: cs:ceph-mon
num_units: 1
options:
monitor-
expected-
ceph-fs:
series: bionic
charm: cs:~openstack-
num_units: 1
prometheus:
charm: cs:prometheus2
num_units: 1
grafana:
charm: /home/chris/
num_units: 1
expose: True
options:
install_
alertmanager:
charm: cs:prometheus-
num_units: 1
ceph-exporter:
charm: cs:prometheus-
num_units: 1
telegraf:
charm: cs:telegraf
relations:
- - "ceph-mon:osd"
- "ceph-osd:mon"
- - "ceph-fs:ceph-mds"
- "ceph-mon:mds"
- - "ceph-exporter"
- "ceph-mon:client"
- - "ceph-exporter:
- "prometheus:target"
- - "prometheus:
- "grafana:
- - "prometheus:
- "alertmanager:
- - "telegraf:
- "prometheus:target"
- - "telegraf"
- "ceph-exporter"
- - "telegraf"
- "alertmanager"
- - "telegraf"
- "ceph-fs"
- - "telegraf"
- "ceph-mon"
- - "telegraf"
- "ceph-osd"
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote : | # |
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote : | # |
Unable to determine commit message from repository - please click "Set commit message" and enter the commit message manually.
Drew Freiberger (afreiberger) wrote : | # |
I'm not seeing commit be44ba7's changes in this diff. I'm going to guess those are already merged into master and this MR is just confused.
Other than spelling mistake which won't affect functionality and some suggestions around the render_custom, I'm good with this rolling out, but would like to defer to IS reviewers for criticality of comments.
Chris Sanders (chris.sanders) wrote : | # |
> I'm not seeing commit be44ba7's changes in this diff. I'm going to guess
> those are already merged into master and this MR is just confused.
Yes it's showing the last commit of master, I presume to give an idea where this was based. That commit is already on master not part of this change.
> Other than spelling mistake which won't affect functionality and some
> suggestions around the render_custom, I'm good with this rolling out, but
> would like to defer to IS reviewers for criticality of comments.
I've fixed they typo and added a bug to charm-helpers, thanks.
Jeremy Lounder (jldev) : | # |
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote : | # |
Change successfully merged at revision 9bcd0fa07e51a0e
Preview Diff
1 | diff --git a/layer.yaml b/layer.yaml |
2 | index df345e6..6e51d38 100644 |
3 | --- a/layer.yaml |
4 | +++ b/layer.yaml |
5 | @@ -1,3 +1,6 @@ |
6 | includes: ['layer:basic', 'layer:snap', 'interface:nrpe-external-master', 'interface:grafana-source', 'interface:http', 'interface:grafana-dashboard'] |
7 | ignore: ['.*.swp' ] |
8 | +options: |
9 | + basic: |
10 | + include_system_packages: true |
11 | repo: https://git.launchpad.net/grafana-charm |
12 | diff --git a/reactive/grafana.py b/reactive/grafana.py |
13 | index ba40c2f..01bfcda 100644 |
14 | --- a/reactive/grafana.py |
15 | +++ b/reactive/grafana.py |
16 | @@ -32,6 +32,7 @@ from charms.reactive import ( |
17 | |
18 | from charms.layer import snap |
19 | from charms.layer.grafana import import_dashboard |
20 | +from jinja2 import Environment, FileSystemLoader, exceptions |
21 | |
22 | SVCNAME = {'snap': 'snap.grafana.grafana', |
23 | 'apt': 'grafana-server'} |
24 | @@ -499,6 +500,27 @@ def check_datasource(ds): |
25 | conn.close() |
26 | |
27 | |
28 | +# This isn't exposed in charmhelpers: https://github.com/juju/charm-helpers/issues/367 |
29 | +def render_custom(source, context, **parameters): |
30 | + """ |
31 | + Renders a template from the template folder with custom environment |
32 | + parameters. |
33 | + source: template file name to render from |
34 | + context: template context variables |
35 | + parameters: initialization parameters for the jinja Environment |
36 | + |
37 | + returns the rendered template content |
38 | + """ |
39 | + template_folder = os.path.join(hookenv.charm_dir(), 'templates/dashboards/prometheus') |
40 | + environment = Environment(loader=FileSystemLoader(template_folder), **parameters) |
41 | + try: |
42 | + template = environment.get_template(source) |
43 | + except exceptions.TemplateNotFound as e: |
44 | + hookenv.log('Could not load template {} from {}'.format(source, template_folder)) |
45 | + raise e |
46 | + return template.render(context) |
47 | + |
48 | + |
49 | def generate_prometheus_dashboards(gf_adminpasswd, ds): |
50 | # prometheus_host = ds |
51 | ds_name = '{} - {}'.format(ds['service_name'], ds['description']) |
52 | @@ -517,6 +539,7 @@ def generate_prometheus_dashboards(gf_adminpasswd, ds): |
53 | 'external_network': config['external_network'], |
54 | 'bcache_enabled': "bcache_cache_hit_ratio" in prom_metrics, |
55 | 'bonds_enabled': "bond_status" in prom_metrics, |
56 | + 'conntrack_enabled': "nf_conntrack_max" in prom_metrics, |
57 | } |
58 | # we ignore some phrases picked up by the regex because they're not real |
59 | # metric names. Let's add them to the list of metrics to make life easy. |
60 | @@ -527,10 +550,11 @@ def generate_prometheus_dashboards(gf_adminpasswd, ds): |
61 | 'neutron_public_ip_usage'] |
62 | prom_metrics.extend(ignore_metrics) |
63 | for filename in os.listdir(templates_dir): |
64 | - dashboard_str = render(source=filename, |
65 | - target=None, |
66 | - context=context, |
67 | - templates_dir=templates_dir) |
68 | + dashboard_str = render_custom(source=filename, |
69 | + context=context, |
70 | + variable_start_string="<<", |
71 | + variable_end_string=">>", |
72 | + ) |
73 | hookenv.log("Checking Dashboard Template: {}".format(filename)) |
74 | expr = str(re.findall('"expr":(.*),', dashboard_str)) |
75 | metrics = set(re.findall('[a-zA-Z0-9]*_[a-zA-Z0-9_]*', expr)) |
76 | diff --git a/templates/dashboards/prometheus/CephCluster.json.j2 b/templates/dashboards/prometheus/CephCluster.json.j2 |
77 | index 4bd7ef5..f940b40 100644 |
78 | --- a/templates/dashboards/prometheus/CephCluster.json.j2 |
79 | +++ b/templates/dashboards/prometheus/CephCluster.json.j2 |
80 | @@ -3,7 +3,7 @@ |
81 | { |
82 | "__inputs": [ |
83 | { |
84 | - "name": "{{ datasource }}", |
85 | + "name": "<< datasource >>", |
86 | "label": "prometheus - Juju generated source", |
87 | "description": "", |
88 | "type": "datasource", |
89 | @@ -72,7 +72,7 @@ |
90 | "rgba(237, 129, 40, 0.89)", |
91 | "rgba(245, 54, 54, 0.9)" |
92 | ], |
93 | - "datasource": "{{ datasource }}", |
94 | + "datasource": "<< datasource >>", |
95 | "editable": true, |
96 | "error": false, |
97 | "format": "none", |
98 | @@ -166,7 +166,7 @@ |
99 | "rgba(237, 129, 40, 0.89)", |
100 | "rgba(50, 172, 45, 0.97)" |
101 | ], |
102 | - "datasource": "{{ datasource }}", |
103 | + "datasource": "<< datasource >>", |
104 | "editable": true, |
105 | "error": false, |
106 | "format": "none", |
107 | @@ -246,7 +246,7 @@ |
108 | "rgba(237, 129, 40, 0.89)", |
109 | "rgba(50, 172, 45, 0.97)" |
110 | ], |
111 | - "datasource": "{{ datasource }}", |
112 | + "datasource": "<< datasource >>", |
113 | "editable": true, |
114 | "error": false, |
115 | "format": "none", |
116 | @@ -326,7 +326,7 @@ |
117 | "rgba(237, 129, 40, 0.89)", |
118 | "rgba(245, 54, 54, 0.9)" |
119 | ], |
120 | - "datasource": "{{ datasource }}", |
121 | + "datasource": "<< datasource >>", |
122 | "editable": true, |
123 | "error": false, |
124 | "format": "bytes", |
125 | @@ -406,7 +406,7 @@ |
126 | "rgba(237, 129, 40, 0.89)", |
127 | "rgba(245, 54, 54, 0.9)" |
128 | ], |
129 | - "datasource": "{{ datasource }}", |
130 | + "datasource": "<< datasource >>", |
131 | "editable": true, |
132 | "error": false, |
133 | "format": "bytes", |
134 | @@ -486,7 +486,7 @@ |
135 | "rgba(237, 129, 40, 0.89)", |
136 | "rgba(245, 54, 54, 0.9)" |
137 | ], |
138 | - "datasource": "{{ datasource }}", |
139 | + "datasource": "<< datasource >>", |
140 | "editable": true, |
141 | "error": false, |
142 | "format": "percentunit", |
143 | @@ -578,7 +578,7 @@ |
144 | "rgba(237, 129, 40, 0.89)", |
145 | "rgba(50, 172, 45, 0.97)" |
146 | ], |
147 | - "datasource": "{{ datasource }}", |
148 | + "datasource": "<< datasource >>", |
149 | "editable": true, |
150 | "error": false, |
151 | "format": "none", |
152 | @@ -657,7 +657,7 @@ |
153 | "rgba(237, 40, 40, 0.89)", |
154 | "rgba(245, 54, 54, 0.9)" |
155 | ], |
156 | - "datasource": "{{ datasource }}", |
157 | + "datasource": "<< datasource >>", |
158 | "editable": true, |
159 | "error": false, |
160 | "format": "none", |
161 | @@ -736,7 +736,7 @@ |
162 | "rgba(237, 129, 40, 0.89)", |
163 | "rgba(50, 172, 45, 0.97)" |
164 | ], |
165 | - "datasource": "{{ datasource }}", |
166 | + "datasource": "<< datasource >>", |
167 | "editable": true, |
168 | "error": false, |
169 | "format": "none", |
170 | @@ -815,7 +815,7 @@ |
171 | "rgba(237, 40, 40, 0.89)", |
172 | "rgba(245, 54, 54, 0.9)" |
173 | ], |
174 | - "datasource": "{{ datasource }}", |
175 | + "datasource": "<< datasource >>", |
176 | "editable": true, |
177 | "error": false, |
178 | "format": "none", |
179 | @@ -894,7 +894,7 @@ |
180 | "rgba(237, 129, 40, 0.89)", |
181 | "rgba(245, 54, 54, 0.9)" |
182 | ], |
183 | - "datasource": "{{ datasource }}", |
184 | + "datasource": "<< datasource >>", |
185 | "editable": true, |
186 | "error": false, |
187 | "format": "none", |
188 | @@ -973,7 +973,7 @@ |
189 | "rgba(237, 129, 40, 0.89)", |
190 | "rgba(245, 54, 54, 0.9)" |
191 | ], |
192 | - "datasource": "{{ datasource }}", |
193 | + "datasource": "<< datasource >>", |
194 | "editable": true, |
195 | "error": false, |
196 | "format": "s", |
197 | @@ -1052,7 +1052,7 @@ |
198 | "rgba(237, 129, 40, 0.89)", |
199 | "rgba(245, 54, 54, 0.9)" |
200 | ], |
201 | - "datasource": "{{ datasource }}", |
202 | + "datasource": "<< datasource >>", |
203 | "editable": true, |
204 | "error": false, |
205 | "format": "s", |
206 | @@ -1146,7 +1146,7 @@ |
207 | "bars": false, |
208 | "dashLength": 10, |
209 | "dashes": false, |
210 | - "datasource": "{{ datasource }}", |
211 | + "datasource": "<< datasource >>", |
212 | "editable": true, |
213 | "error": false, |
214 | "fill": 4, |
215 | @@ -1259,7 +1259,7 @@ |
216 | "bars": false, |
217 | "dashLength": 10, |
218 | "dashes": false, |
219 | - "datasource": "{{ datasource }}", |
220 | + "datasource": "<< datasource >>", |
221 | "decimals": 0, |
222 | "editable": true, |
223 | "error": false, |
224 | @@ -1352,7 +1352,7 @@ |
225 | "bars": false, |
226 | "dashLength": 10, |
227 | "dashes": false, |
228 | - "datasource": "{{ datasource }}", |
229 | + "datasource": "<< datasource >>", |
230 | "editable": true, |
231 | "error": false, |
232 | "fill": 1, |
233 | @@ -1455,7 +1455,7 @@ |
234 | "bars": false, |
235 | "dashLength": 10, |
236 | "dashes": false, |
237 | - "datasource": "{{ datasource }}", |
238 | + "datasource": "<< datasource >>", |
239 | "editable": true, |
240 | "error": false, |
241 | "fill": 1, |
242 | @@ -1558,7 +1558,7 @@ |
243 | "bars": false, |
244 | "dashLength": 10, |
245 | "dashes": false, |
246 | - "datasource": "{{ datasource }}", |
247 | + "datasource": "<< datasource >>", |
248 | "editable": true, |
249 | "error": false, |
250 | "fill": 1, |
251 | @@ -1685,7 +1685,7 @@ |
252 | "bars": false, |
253 | "dashLength": 10, |
254 | "dashes": false, |
255 | - "datasource": "{{ datasource }}", |
256 | + "datasource": "<< datasource >>", |
257 | "editable": true, |
258 | "error": false, |
259 | "fill": 1, |
260 | @@ -1808,7 +1808,7 @@ |
261 | "bars": false, |
262 | "dashLength": 10, |
263 | "dashes": false, |
264 | - "datasource": "{{ datasource }}", |
265 | + "datasource": "<< datasource >>", |
266 | "editable": true, |
267 | "error": false, |
268 | "fill": 1, |
269 | @@ -1888,7 +1888,7 @@ |
270 | "bars": false, |
271 | "dashLength": 10, |
272 | "dashes": false, |
273 | - "datasource": "{{ datasource }}", |
274 | + "datasource": "<< datasource >>", |
275 | "editable": true, |
276 | "error": false, |
277 | "fill": 1, |
278 | @@ -1973,7 +1973,7 @@ |
279 | "bars": false, |
280 | "dashLength": 10, |
281 | "dashes": false, |
282 | - "datasource": "{{ datasource }}", |
283 | + "datasource": "<< datasource >>", |
284 | "editable": true, |
285 | "error": false, |
286 | "fill": 1, |
287 | diff --git a/templates/dashboards/prometheus/CephOSD.json.j2 b/templates/dashboards/prometheus/CephOSD.json.j2 |
288 | index 010f2a9..edfbd35 100644 |
289 | --- a/templates/dashboards/prometheus/CephOSD.json.j2 |
290 | +++ b/templates/dashboards/prometheus/CephOSD.json.j2 |
291 | @@ -3,7 +3,7 @@ |
292 | { |
293 | "__inputs": [ |
294 | { |
295 | - "name": "{{ datasource }}", |
296 | + "name": "<< datasource >>", |
297 | "label": "prometheus - Juju generated source", |
298 | "description": "", |
299 | "type": "datasource", |
300 | @@ -72,7 +72,7 @@ |
301 | "rgba(237, 40, 40, 0.89)", |
302 | "rgba(50, 172, 45, 0.97)" |
303 | ], |
304 | - "datasource": "{{ datasource }}", |
305 | + "datasource": "<< datasource >>", |
306 | "editable": true, |
307 | "error": false, |
308 | "format": "none", |
309 | @@ -172,7 +172,7 @@ |
310 | "rgba(237, 40, 40, 0.89)", |
311 | "rgba(50, 172, 45, 0.97)" |
312 | ], |
313 | - "datasource": "{{ datasource }}", |
314 | + "datasource": "<< datasource >>", |
315 | "editable": true, |
316 | "error": false, |
317 | "format": "none", |
318 | @@ -272,7 +272,7 @@ |
319 | "rgba(237, 129, 40, 0.89)", |
320 | "rgba(50, 172, 45, 0.97)" |
321 | ], |
322 | - "datasource": "{{ datasource }}", |
323 | + "datasource": "<< datasource >>", |
324 | "editable": true, |
325 | "error": false, |
326 | "format": "none", |
327 | @@ -370,7 +370,7 @@ |
328 | "bars": false, |
329 | "dashLength": 10, |
330 | "dashes": false, |
331 | - "datasource": "{{ datasource }}", |
332 | + "datasource": "<< datasource >>", |
333 | "decimals": 2, |
334 | "editable": true, |
335 | "error": false, |
336 | @@ -486,7 +486,7 @@ |
337 | "rgba(237, 129, 40, 0.89)", |
338 | "rgba(245, 54, 54, 0.9)" |
339 | ], |
340 | - "datasource": "{{ datasource }}", |
341 | + "datasource": "<< datasource >>", |
342 | "editable": true, |
343 | "error": false, |
344 | "format": "percent", |
345 | @@ -575,7 +575,7 @@ |
346 | "bars": false, |
347 | "dashLength": 10, |
348 | "dashes": false, |
349 | - "datasource": "{{ datasource }}", |
350 | + "datasource": "<< datasource >>", |
351 | "decimals": 2, |
352 | "editable": true, |
353 | "error": false, |
354 | @@ -666,7 +666,7 @@ |
355 | "bars": false, |
356 | "dashLength": 10, |
357 | "dashes": false, |
358 | - "datasource": "{{ datasource }}", |
359 | + "datasource": "<< datasource >>", |
360 | "decimals": 2, |
361 | "editable": true, |
362 | "error": false, |
363 | @@ -760,7 +760,7 @@ |
364 | "bars": false, |
365 | "dashLength": 10, |
366 | "dashes": false, |
367 | - "datasource": "{{ datasource }}", |
368 | + "datasource": "<< datasource >>", |
369 | "decimals": 5, |
370 | "editable": true, |
371 | "error": false, |
372 | @@ -934,7 +934,7 @@ |
373 | { |
374 | "allValue": null, |
375 | "current": {}, |
376 | - "datasource": "{{ datasource }}", |
377 | + "datasource": "<< datasource >>", |
378 | "hide": 0, |
379 | "includeAll": false, |
380 | "label": "OSD", |
381 | diff --git a/templates/dashboards/prometheus/CephPools.json.j2 b/templates/dashboards/prometheus/CephPools.json.j2 |
382 | index c848ae3..ca44642 100644 |
383 | --- a/templates/dashboards/prometheus/CephPools.json.j2 |
384 | +++ b/templates/dashboards/prometheus/CephPools.json.j2 |
385 | @@ -3,7 +3,7 @@ |
386 | { |
387 | "__inputs": [ |
388 | { |
389 | - "name": "{{ datasource }}", |
390 | + "name": "<< datasource >>", |
391 | "label": "prometheus - Juju generated source", |
392 | "description": "", |
393 | "type": "datasource", |
394 | @@ -68,7 +68,7 @@ |
395 | "bars": false, |
396 | "dashLength": 10, |
397 | "dashes": false, |
398 | - "datasource": "{{ datasource }}", |
399 | + "datasource": "<< datasource >>", |
400 | "decimals": 2, |
401 | "editable": true, |
402 | "error": false, |
403 | @@ -198,7 +198,7 @@ |
404 | "rgba(237, 129, 40, 0.89)", |
405 | "rgba(50, 172, 45, 0.97)" |
406 | ], |
407 | - "datasource": "{{ datasource }}", |
408 | + "datasource": "<< datasource >>", |
409 | "decimals": 2, |
410 | "editable": true, |
411 | "error": false, |
412 | @@ -285,7 +285,7 @@ |
413 | "bars": false, |
414 | "dashLength": 10, |
415 | "dashes": false, |
416 | - "datasource": "{{ datasource }}", |
417 | + "datasource": "<< datasource >>", |
418 | "editable": true, |
419 | "error": false, |
420 | "fill": 1, |
421 | @@ -374,7 +374,7 @@ |
422 | "bars": false, |
423 | "dashLength": 10, |
424 | "dashes": false, |
425 | - "datasource": "{{ datasource }}", |
426 | + "datasource": "<< datasource >>", |
427 | "decimals": 2, |
428 | "editable": true, |
429 | "error": false, |
430 | @@ -465,7 +465,7 @@ |
431 | "bars": false, |
432 | "dashLength": 10, |
433 | "dashes": false, |
434 | - "datasource": "{{ datasource }}", |
435 | + "datasource": "<< datasource >>", |
436 | "decimals": 2, |
437 | "editable": true, |
438 | "error": false, |
439 | @@ -646,7 +646,7 @@ |
440 | { |
441 | "allValue": null, |
442 | "current": {}, |
443 | - "datasource": "{{ datasource }}", |
444 | + "datasource": "<< datasource >>", |
445 | "hide": 0, |
446 | "includeAll": false, |
447 | "label": "Pool", |
448 | diff --git a/templates/dashboards/prometheus/OpenStackCloud.json.j2 b/templates/dashboards/prometheus/OpenStackCloud.json.j2 |
449 | index da319ef..7fc82e0 100644 |
450 | --- a/templates/dashboards/prometheus/OpenStackCloud.json.j2 |
451 | +++ b/templates/dashboards/prometheus/OpenStackCloud.json.j2 |
452 | @@ -3,7 +3,7 @@ |
453 | { |
454 | "__inputs": [ |
455 | { |
456 | - "name": "{{ datasource }}", |
457 | + "name": "<< datasource >>", |
458 | "label": "prometheus - Juju generated source", |
459 | "description": "", |
460 | "type": "datasource", |
461 | @@ -95,7 +95,7 @@ |
462 | "rgba(237, 129, 40, 0.89)", |
463 | "rgba(50, 172, 45, 0.97)" |
464 | ], |
465 | - "datasource": "{{ datasource }}", |
466 | + "datasource": "<< datasource >>", |
467 | "editable": true, |
468 | "error": false, |
469 | "format": "none", |
470 | @@ -144,7 +144,7 @@ |
471 | "tableColumn": "", |
472 | "targets": [ |
473 | { |
474 | - "expr": "sum(neutron_net_size{network_name=\"{{ external_network }}\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"{{ external_network }}\",cloud=\"$cloud\"})", |
475 | + "expr": "sum(neutron_net_size{network_name=\"<< external_network >>\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"<< external_network >>\",cloud=\"$cloud\"})", |
476 | "intervalFactor": 2, |
477 | "legendFormat": "", |
478 | "metric": "", |
479 | @@ -153,7 +153,7 @@ |
480 | } |
481 | ], |
482 | "thresholds": "", |
483 | - "title": "Free IPs ({{ external_network }})", |
484 | + "title": "Free IPs (<< external_network >>)", |
485 | "type": "singlestat", |
486 | "valueFontSize": "100%", |
487 | "valueMaps": [ |
488 | @@ -174,7 +174,7 @@ |
489 | "rgba(237, 129, 40, 0.89)", |
490 | "rgba(50, 172, 45, 0.97)" |
491 | ], |
492 | - "datasource": "{{ datasource }}", |
493 | + "datasource": "<< datasource >>", |
494 | "editable": true, |
495 | "error": false, |
496 | "format": "none", |
497 | @@ -223,7 +223,7 @@ |
498 | "tableColumn": "", |
499 | "targets": [ |
500 | { |
501 | - "expr": "(sum(neutron_net_size{network_name=\"{{ external_network }}\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"{{ external_network }}\",cloud=\"$cloud\",ip_status=\"ACTIVE\"})) - (sum(neutron_net_size{network_name=\"{{ external_network }}\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"{{ external_network }}\",cloud=\"$cloud\"}))", |
502 | + "expr": "(sum(neutron_net_size{network_name=\"<< external_network >>\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"<< external_network >>\",cloud=\"$cloud\",ip_status=\"ACTIVE\"})) - (sum(neutron_net_size{network_name=\"<< external_network >>\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"<< external_network >>\",cloud=\"$cloud\"}))", |
503 | "intervalFactor": 2, |
504 | "legendFormat": "", |
505 | "metric": "", |
506 | @@ -232,7 +232,7 @@ |
507 | } |
508 | ], |
509 | "thresholds": "", |
510 | - "title": "Unused IPs ({{ external_network }})", |
511 | + "title": "Unused IPs (<< external_network >>)", |
512 | "type": "singlestat", |
513 | "valueFontSize": "100%", |
514 | "valueMaps": [ |
515 | @@ -253,7 +253,7 @@ |
516 | "rgba(237, 129, 40, 0.89)", |
517 | "rgba(50, 172, 45, 0.97)" |
518 | ], |
519 | - "datasource": "{{ datasource }}", |
520 | + "datasource": "<< datasource >>", |
521 | "editable": true, |
522 | "error": false, |
523 | "format": "none", |
524 | @@ -340,7 +340,7 @@ |
525 | "bars": false, |
526 | "dashLength": 10, |
527 | "dashes": false, |
528 | - "datasource": "{{ datasource }}", |
529 | + "datasource": "<< datasource >>", |
530 | "editable": true, |
531 | "error": false, |
532 | "fill": 4, |
533 | @@ -418,7 +418,7 @@ |
534 | "bars": false, |
535 | "dashLength": 10, |
536 | "dashes": false, |
537 | - "datasource": "{{ datasource }}", |
538 | + "datasource": "<< datasource >>", |
539 | "editable": true, |
540 | "error": false, |
541 | "fill": 4, |
542 | @@ -452,7 +452,7 @@ |
543 | "steppedLine": false, |
544 | "targets": [ |
545 | { |
546 | - "expr": "sum(neutron_net_size{network_name=\"{{ external_network }}\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"{{ external_network }}\",cloud=\"$cloud\"})", |
547 | + "expr": "sum(neutron_net_size{network_name=\"<< external_network >>\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"<< external_network >>\",cloud=\"$cloud\"})", |
548 | "intervalFactor": 2, |
549 | "legendFormat": "", |
550 | "refId": "A", |
551 | @@ -505,7 +505,7 @@ |
552 | "rgba(237, 129, 40, 0.89)", |
553 | "rgba(50, 172, 45, 0.97)" |
554 | ], |
555 | - "datasource": "{{ datasource }}", |
556 | + "datasource": "<< datasource >>", |
557 | "editable": true, |
558 | "error": false, |
559 | "format": "s", |
560 | @@ -580,7 +580,7 @@ |
561 | "value": "current" |
562 | } |
563 | ], |
564 | - "datasource": "{{ datasource }}", |
565 | + "datasource": "<< datasource >>", |
566 | "editable": true, |
567 | "error": false, |
568 | "fontSize": "100%", |
569 | @@ -641,7 +641,7 @@ |
570 | { |
571 | "aliasColors": {}, |
572 | "bars": false, |
573 | - "datasource": "{{ datasource }}", |
574 | + "datasource": "<< datasource >>", |
575 | "editable": true, |
576 | "error": false, |
577 | "fill": 3, |
578 | @@ -747,7 +747,7 @@ |
579 | "value": "current" |
580 | } |
581 | ], |
582 | - "datasource": "{{ datasource }}", |
583 | + "datasource": "<< datasource >>", |
584 | "editable": true, |
585 | "error": false, |
586 | "fontSize": "80%", |
587 | @@ -803,7 +803,7 @@ |
588 | "value": "current" |
589 | } |
590 | ], |
591 | - "datasource": "{{ datasource }}", |
592 | + "datasource": "<< datasource >>", |
593 | "editable": true, |
594 | "error": false, |
595 | "fontSize": "80%", |
596 | @@ -873,7 +873,7 @@ |
597 | "rgba(237, 129, 40, 0.89)", |
598 | "rgba(50, 172, 45, 0.97)" |
599 | ], |
600 | - "datasource": "{{ datasource }}", |
601 | + "datasource": "<< datasource >>", |
602 | "editable": true, |
603 | "error": false, |
604 | "format": "mbytes", |
605 | @@ -952,7 +952,7 @@ |
606 | "rgba(237, 129, 40, 0.89)", |
607 | "rgba(50, 172, 45, 0.97)" |
608 | ], |
609 | - "datasource": "{{ datasource }}", |
610 | + "datasource": "<< datasource >>", |
611 | "editable": true, |
612 | "error": false, |
613 | "format": "none", |
614 | @@ -1032,7 +1032,7 @@ |
615 | "rgba(237, 129, 40, 0.89)", |
616 | "rgba(50, 172, 45, 0.97)" |
617 | ], |
618 | - "datasource": "{{ datasource }}", |
619 | + "datasource": "<< datasource >>", |
620 | "editable": true, |
621 | "error": false, |
622 | "format": "gbytes", |
623 | @@ -1112,7 +1112,7 @@ |
624 | "rgba(237, 129, 40, 0.89)", |
625 | "rgba(50, 172, 45, 0.97)" |
626 | ], |
627 | - "datasource": "{{ datasource }}", |
628 | + "datasource": "<< datasource >>", |
629 | "decimals": 1, |
630 | "editable": true, |
631 | "error": false, |
632 | @@ -1193,7 +1193,7 @@ |
633 | "rgba(237, 129, 40, 0.89)", |
634 | "rgba(50, 172, 45, 0.97)" |
635 | ], |
636 | - "datasource": "{{ datasource }}", |
637 | + "datasource": "<< datasource >>", |
638 | "editable": true, |
639 | "error": false, |
640 | "format": "none", |
641 | @@ -1272,7 +1272,7 @@ |
642 | "rgba(237, 129, 40, 0.89)", |
643 | "rgba(50, 172, 45, 0.97)" |
644 | ], |
645 | - "datasource": "{{ datasource }}", |
646 | + "datasource": "<< datasource >>", |
647 | "editable": true, |
648 | "error": false, |
649 | "format": "none", |
650 | @@ -1351,7 +1351,7 @@ |
651 | "rgba(237, 129, 40, 0.89)", |
652 | "rgba(50, 172, 45, 0.97)" |
653 | ], |
654 | - "datasource": "{{ datasource }}", |
655 | + "datasource": "<< datasource >>", |
656 | "editable": true, |
657 | "error": false, |
658 | "format": "none", |
659 | @@ -1426,7 +1426,7 @@ |
660 | "bars": false, |
661 | "dashLength": 10, |
662 | "dashes": false, |
663 | - "datasource": "{{ datasource }}", |
664 | + "datasource": "<< datasource >>", |
665 | "editable": true, |
666 | "error": false, |
667 | "fill": 1, |
668 | @@ -1506,7 +1506,7 @@ |
669 | "bars": false, |
670 | "dashLength": 10, |
671 | "dashes": false, |
672 | - "datasource": "{{ datasource }}", |
673 | + "datasource": "<< datasource >>", |
674 | "editable": true, |
675 | "error": false, |
676 | "fill": 1, |
677 | @@ -1586,7 +1586,7 @@ |
678 | "bars": false, |
679 | "dashLength": 10, |
680 | "dashes": false, |
681 | - "datasource": "{{ datasource }}", |
682 | + "datasource": "<< datasource >>", |
683 | "editable": true, |
684 | "error": false, |
685 | "fill": 1, |
686 | @@ -1666,7 +1666,7 @@ |
687 | "bars": false, |
688 | "dashLength": 10, |
689 | "dashes": false, |
690 | - "datasource": "{{ datasource }}", |
691 | + "datasource": "<< datasource >>", |
692 | "editable": true, |
693 | "error": false, |
694 | "fill": 1, |
695 | @@ -1746,7 +1746,7 @@ |
696 | "bars": false, |
697 | "dashLength": 10, |
698 | "dashes": false, |
699 | - "datasource": "{{ datasource }}", |
700 | + "datasource": "<< datasource >>", |
701 | "editable": true, |
702 | "error": false, |
703 | "fill": 1, |
704 | @@ -1828,7 +1828,7 @@ |
705 | "value": "current" |
706 | } |
707 | ], |
708 | - "datasource": "{{ datasource }}", |
709 | + "datasource": "<< datasource >>", |
710 | "editable": true, |
711 | "error": false, |
712 | "fontSize": "100%", |
713 | @@ -1894,7 +1894,7 @@ |
714 | "value": "current" |
715 | } |
716 | ], |
717 | - "datasource": "{{ datasource }}", |
718 | + "datasource": "<< datasource >>", |
719 | "editable": true, |
720 | "error": false, |
721 | "fontSize": "100%", |
722 | @@ -1954,7 +1954,7 @@ |
723 | "value": "current" |
724 | } |
725 | ], |
726 | - "datasource": "{{ datasource }}", |
727 | + "datasource": "<< datasource >>", |
728 | "editable": true, |
729 | "error": false, |
730 | "fontSize": "100%", |
731 | @@ -2014,7 +2014,7 @@ |
732 | "value": "current" |
733 | } |
734 | ], |
735 | - "datasource": "{{ datasource }}", |
736 | + "datasource": "<< datasource >>", |
737 | "editable": true, |
738 | "error": false, |
739 | "fontSize": "100%", |
740 | @@ -2082,7 +2082,7 @@ |
741 | { |
742 | "aliasColors": {}, |
743 | "bars": false, |
744 | - "datasource": "{{ datasource }}", |
745 | + "datasource": "<< datasource >>", |
746 | "decimals": 0, |
747 | "editable": true, |
748 | "error": false, |
749 | @@ -2160,7 +2160,7 @@ |
750 | { |
751 | "aliasColors": {}, |
752 | "bars": false, |
753 | - "datasource": "{{ datasource }}", |
754 | + "datasource": "<< datasource >>", |
755 | "editable": true, |
756 | "error": false, |
757 | "fill": 0, |
758 | @@ -2235,7 +2235,7 @@ |
759 | { |
760 | "aliasColors": {}, |
761 | "bars": false, |
762 | - "datasource": "{{ datasource }}", |
763 | + "datasource": "<< datasource >>", |
764 | "editable": true, |
765 | "error": false, |
766 | "fill": 0, |
767 | @@ -2310,7 +2310,7 @@ |
768 | { |
769 | "aliasColors": {}, |
770 | "bars": false, |
771 | - "datasource": "{{ datasource }}", |
772 | + "datasource": "<< datasource >>", |
773 | "editable": true, |
774 | "error": false, |
775 | "fill": 0, |
776 | @@ -2385,7 +2385,7 @@ |
777 | { |
778 | "aliasColors": {}, |
779 | "bars": false, |
780 | - "datasource": "{{ datasource }}", |
781 | + "datasource": "<< datasource >>", |
782 | "editable": true, |
783 | "error": false, |
784 | "fill": 0, |
785 | @@ -2472,7 +2472,7 @@ |
786 | { |
787 | "aliasColors": {}, |
788 | "bars": false, |
789 | - "datasource": "{{ datasource }}", |
790 | + "datasource": "<< datasource >>", |
791 | "editable": true, |
792 | "error": false, |
793 | "fill": 1, |
794 | @@ -2549,7 +2549,7 @@ |
795 | { |
796 | "aliasColors": {}, |
797 | "bars": false, |
798 | - "datasource": "{{ datasource }}", |
799 | + "datasource": "<< datasource >>", |
800 | "editable": true, |
801 | "error": false, |
802 | "fill": 1, |
803 | @@ -2627,7 +2627,7 @@ |
804 | { |
805 | "aliasColors": {}, |
806 | "bars": false, |
807 | - "datasource": "{{ datasource }}", |
808 | + "datasource": "<< datasource >>", |
809 | "editable": true, |
810 | "error": false, |
811 | "fill": 1, |
812 | @@ -2721,7 +2721,7 @@ |
813 | { |
814 | "allValue": null, |
815 | "current": {}, |
816 | - "datasource": "{{ datasource }}", |
817 | + "datasource": "<< datasource >>", |
818 | "hide": 0, |
819 | "includeAll": false, |
820 | "label": null, |
821 | @@ -2741,7 +2741,7 @@ |
822 | { |
823 | "allValue": null, |
824 | "current": {}, |
825 | - "datasource": "{{ datasource }}", |
826 | + "datasource": "<< datasource >>", |
827 | "hide": 2, |
828 | "includeAll": false, |
829 | "label": null, |
830 | @@ -2761,7 +2761,7 @@ |
831 | { |
832 | "allValue": null, |
833 | "current": {}, |
834 | - "datasource": "{{ datasource }}", |
835 | + "datasource": "<< datasource >>", |
836 | "hide": 2, |
837 | "includeAll": true, |
838 | "label": "External networks", |
839 | @@ -2781,7 +2781,7 @@ |
840 | { |
841 | "allValue": null, |
842 | "current": {}, |
843 | - "datasource": "{{ datasource }}", |
844 | + "datasource": "<< datasource >>", |
845 | "hide": 2, |
846 | "includeAll": true, |
847 | "label": null, |
848 | @@ -2801,7 +2801,7 @@ |
849 | { |
850 | "allValue": ".*", |
851 | "current": {}, |
852 | - "datasource": "{{ datasource }}", |
853 | + "datasource": "<< datasource >>", |
854 | "hide": 2, |
855 | "includeAll": true, |
856 | "label": null, |
857 | @@ -2821,7 +2821,7 @@ |
858 | { |
859 | "allValue": ".*", |
860 | "current": {}, |
861 | - "datasource": "{{ datasource }}", |
862 | + "datasource": "<< datasource >>", |
863 | "hide": 0, |
864 | "includeAll": true, |
865 | "label": "availability zone", |
866 | diff --git a/templates/dashboards/prometheus/RabbitMQ.json.j2 b/templates/dashboards/prometheus/RabbitMQ.json.j2 |
867 | index f0d433e..aa2f706 100644 |
868 | --- a/templates/dashboards/prometheus/RabbitMQ.json.j2 |
869 | +++ b/templates/dashboards/prometheus/RabbitMQ.json.j2 |
870 | @@ -3,7 +3,7 @@ |
871 | { |
872 | "__inputs": [ |
873 | { |
874 | - "name": "{{ datasource }}", |
875 | + "name": "<< datasource >>", |
876 | "label": "prometheus - Juju generated source", |
877 | "description": "", |
878 | "type": "datasource", |
879 | @@ -60,7 +60,7 @@ |
880 | "bars": false, |
881 | "dashLength": 10, |
882 | "dashes": false, |
883 | - "datasource": "{{ datasource }}", |
884 | + "datasource": "<< datasource >>", |
885 | "fill": 1, |
886 | "id": 1, |
887 | "legend": { |
888 | @@ -137,7 +137,7 @@ |
889 | "bars": false, |
890 | "dashLength": 10, |
891 | "dashes": false, |
892 | - "datasource": "{{ datasource }}", |
893 | + "datasource": "<< datasource >>", |
894 | "fill": 1, |
895 | "id": 2, |
896 | "legend": { |
897 | @@ -246,7 +246,7 @@ |
898 | "bars": false, |
899 | "dashLength": 10, |
900 | "dashes": false, |
901 | - "datasource": "{{ datasource }}", |
902 | + "datasource": "<< datasource >>", |
903 | "fill": 1, |
904 | "id": 3, |
905 | "legend": { |
906 | @@ -323,7 +323,7 @@ |
907 | "bars": false, |
908 | "dashLength": 10, |
909 | "dashes": false, |
910 | - "datasource": "{{ datasource }}", |
911 | + "datasource": "<< datasource >>", |
912 | "fill": 1, |
913 | "id": 5, |
914 | "legend": { |
915 | @@ -400,7 +400,7 @@ |
916 | "bars": false, |
917 | "dashLength": 10, |
918 | "dashes": false, |
919 | - "datasource": "{{ datasource }}", |
920 | + "datasource": "<< datasource >>", |
921 | "fill": 1, |
922 | "id": 4, |
923 | "legend": { |
924 | @@ -477,7 +477,7 @@ |
925 | "bars": false, |
926 | "dashLength": 10, |
927 | "dashes": false, |
928 | - "datasource": "{{ datasource }}", |
929 | + "datasource": "<< datasource >>", |
930 | "fill": 1, |
931 | "id": 6, |
932 | "legend": { |
933 | @@ -566,7 +566,7 @@ |
934 | "bars": false, |
935 | "dashLength": 10, |
936 | "dashes": false, |
937 | - "datasource": "{{ datasource }}", |
938 | + "datasource": "<< datasource >>", |
939 | "fill": 1, |
940 | "id": 7, |
941 | "legend": { |
942 | @@ -643,7 +643,7 @@ |
943 | "bars": false, |
944 | "dashLength": 10, |
945 | "dashes": false, |
946 | - "datasource": "{{ datasource }}", |
947 | + "datasource": "<< datasource >>", |
948 | "decimals": 2, |
949 | "fill": 1, |
950 | "id": 8, |
951 | @@ -722,7 +722,7 @@ |
952 | "bars": false, |
953 | "dashLength": 10, |
954 | "dashes": false, |
955 | - "datasource": "{{ datasource }}", |
956 | + "datasource": "<< datasource >>", |
957 | "decimals": 2, |
958 | "fill": 1, |
959 | "id": 9, |
960 | @@ -801,7 +801,7 @@ |
961 | "bars": false, |
962 | "dashLength": 10, |
963 | "dashes": false, |
964 | - "datasource": "{{ datasource }}", |
965 | + "datasource": "<< datasource >>", |
966 | "decimals": 2, |
967 | "fill": 1, |
968 | "id": 10, |
969 | diff --git a/templates/dashboards/prometheus/Swift.json.j2 b/templates/dashboards/prometheus/Swift.json.j2 |
970 | index e9cf9ea..79eaf54 100644 |
971 | --- a/templates/dashboards/prometheus/Swift.json.j2 |
972 | +++ b/templates/dashboards/prometheus/Swift.json.j2 |
973 | @@ -3,7 +3,7 @@ |
974 | { |
975 | "__inputs": [ |
976 | { |
977 | - "name": "{{ datasource }}", |
978 | + "name": "<< datasource >>", |
979 | "label": "prometheus - Juju generated source", |
980 | "description": "", |
981 | "type": "datasource", |
982 | @@ -61,7 +61,7 @@ |
983 | "bars": false, |
984 | "dashLength": 10, |
985 | "dashes": false, |
986 | - "datasource": "{{ datasource }}", |
987 | + "datasource": "<< datasource >>", |
988 | "fill": 0, |
989 | "id": 1, |
990 | "legend": { |
991 | @@ -139,7 +139,7 @@ |
992 | "bars": false, |
993 | "dashLength": 10, |
994 | "dashes": false, |
995 | - "datasource": "{{ datasource }}", |
996 | + "datasource": "<< datasource >>", |
997 | "fill": 1, |
998 | "id": 4, |
999 | "legend": { |
1000 | @@ -229,7 +229,7 @@ |
1001 | "bars": false, |
1002 | "dashLength": 10, |
1003 | "dashes": false, |
1004 | - "datasource": "{{ datasource }}", |
1005 | + "datasource": "<< datasource >>", |
1006 | "fill": 4, |
1007 | "id": 2, |
1008 | "legend": { |
1009 | @@ -308,7 +308,7 @@ |
1010 | "bars": false, |
1011 | "dashLength": 10, |
1012 | "dashes": false, |
1013 | - "datasource": "{{ datasource }}", |
1014 | + "datasource": "<< datasource >>", |
1015 | "description": "Deferred container updates", |
1016 | "fill": 1, |
1017 | "id": 3, |
1018 | @@ -398,7 +398,7 @@ |
1019 | "bars": false, |
1020 | "dashLength": 10, |
1021 | "dashes": false, |
1022 | - "datasource": "{{ datasource }}", |
1023 | + "datasource": "<< datasource >>", |
1024 | "fill": 6, |
1025 | "id": 5, |
1026 | "legend": { |
1027 | @@ -487,7 +487,7 @@ |
1028 | "bars": false, |
1029 | "dashLength": 10, |
1030 | "dashes": false, |
1031 | - "datasource": "{{ datasource }}", |
1032 | + "datasource": "<< datasource >>", |
1033 | "fill": 1, |
1034 | "id": 6, |
1035 | "legend": { |
1036 | @@ -579,7 +579,7 @@ |
1037 | "bars": false, |
1038 | "dashLength": 10, |
1039 | "dashes": false, |
1040 | - "datasource": "{{ datasource }}", |
1041 | + "datasource": "<< datasource >>", |
1042 | "fill": 6, |
1043 | "id": 9, |
1044 | "legend": { |
1045 | @@ -668,7 +668,7 @@ |
1046 | "bars": false, |
1047 | "dashLength": 10, |
1048 | "dashes": false, |
1049 | - "datasource": "{{ datasource }}", |
1050 | + "datasource": "<< datasource >>", |
1051 | "fill": 1, |
1052 | "id": 10, |
1053 | "legend": { |
1054 | @@ -760,7 +760,7 @@ |
1055 | "bars": false, |
1056 | "dashLength": 10, |
1057 | "dashes": false, |
1058 | - "datasource": "{{ datasource }}", |
1059 | + "datasource": "<< datasource >>", |
1060 | "fill": 1, |
1061 | "id": 7, |
1062 | "legend": { |
1063 | @@ -849,7 +849,7 @@ |
1064 | "bars": false, |
1065 | "dashLength": 10, |
1066 | "dashes": false, |
1067 | - "datasource": "{{ datasource }}", |
1068 | + "datasource": "<< datasource >>", |
1069 | "fill": 1, |
1070 | "id": 8, |
1071 | "legend": { |
1072 | diff --git a/templates/dashboards/prometheus/Telegraf.json.j2 b/templates/dashboards/prometheus/Telegraf.json.j2 |
1073 | index a58f03e..556149f 100644 |
1074 | --- a/templates/dashboards/prometheus/Telegraf.json.j2 |
1075 | +++ b/templates/dashboards/prometheus/Telegraf.json.j2 |
1076 | @@ -3,7 +3,7 @@ |
1077 | { |
1078 | "__inputs": [ |
1079 | { |
1080 | - "name": "{{ datasource }}", |
1081 | + "name": "<< datasource >>", |
1082 | "label": "prometheus - Juju generated source", |
1083 | "description": "", |
1084 | "type": "datasource", |
1085 | @@ -85,7 +85,7 @@ |
1086 | "rgba(237, 129, 40, 0.89)", |
1087 | "rgba(245, 54, 54, 0.9)" |
1088 | ], |
1089 | - "datasource": "{{ datasource }}", |
1090 | + "datasource": "<< datasource >>", |
1091 | "format": "none", |
1092 | "gauge": { |
1093 | "maxValue": 100, |
1094 | @@ -170,7 +170,7 @@ |
1095 | "bars": false, |
1096 | "dashLength": 10, |
1097 | "dashes": false, |
1098 | - "datasource": "{{ datasource }}", |
1099 | + "datasource": "<< datasource >>", |
1100 | "description": "", |
1101 | "fill": 1, |
1102 | "id": 1, |
1103 | @@ -264,7 +264,7 @@ |
1104 | "bars": false, |
1105 | "dashLength": 10, |
1106 | "dashes": false, |
1107 | - "datasource": "{{ datasource }}", |
1108 | + "datasource": "<< datasource >>", |
1109 | "description": "", |
1110 | "fill": 6, |
1111 | "id": 4, |
1112 | @@ -358,7 +358,7 @@ |
1113 | "bars": false, |
1114 | "dashLength": 10, |
1115 | "dashes": false, |
1116 | - "datasource": "{{ datasource }}", |
1117 | + "datasource": "<< datasource >>", |
1118 | "editable": true, |
1119 | "error": false, |
1120 | "fill": 4, |
1121 | @@ -490,7 +490,7 @@ |
1122 | "bars": false, |
1123 | "dashLength": 10, |
1124 | "dashes": false, |
1125 | - "datasource": "{{ datasource }}", |
1126 | + "datasource": "<< datasource >>", |
1127 | "description": "", |
1128 | "fill": 1, |
1129 | "id": 14, |
1130 | @@ -568,7 +568,7 @@ |
1131 | "bars": false, |
1132 | "dashLength": 10, |
1133 | "dashes": false, |
1134 | - "datasource": "{{ datasource }}", |
1135 | + "datasource": "<< datasource >>", |
1136 | "description": "", |
1137 | "fill": 1, |
1138 | "id": 15, |
1139 | @@ -666,7 +666,7 @@ |
1140 | "bars": false, |
1141 | "dashLength": 10, |
1142 | "dashes": false, |
1143 | - "datasource": "{{ datasource }}", |
1144 | + "datasource": "<< datasource >>", |
1145 | "editable": true, |
1146 | "error": false, |
1147 | "fill": 1, |
1148 | @@ -848,7 +848,7 @@ |
1149 | "bars": false, |
1150 | "dashLength": 10, |
1151 | "dashes": false, |
1152 | - "datasource": "{{ datasource }}", |
1153 | + "datasource": "<< datasource >>", |
1154 | "editable": true, |
1155 | "error": false, |
1156 | "fill": 3, |
1157 | @@ -955,7 +955,7 @@ |
1158 | "bars": false, |
1159 | "dashLength": 10, |
1160 | "dashes": false, |
1161 | - "datasource": "{{ datasource }}", |
1162 | + "datasource": "<< datasource >>", |
1163 | "editable": true, |
1164 | "error": false, |
1165 | "fill": 0, |
1166 | @@ -1062,7 +1062,7 @@ |
1167 | "bars": false, |
1168 | "dashLength": 10, |
1169 | "dashes": false, |
1170 | - "datasource": "{{ datasource }}", |
1171 | + "datasource": "<< datasource >>", |
1172 | "fill": 1, |
1173 | "id": 16, |
1174 | "legend": { |
1175 | @@ -1170,7 +1170,7 @@ |
1176 | "bars": false, |
1177 | "dashLength": 10, |
1178 | "dashes": false, |
1179 | - "datasource": "{{ datasource }}", |
1180 | + "datasource": "<< datasource >>", |
1181 | "decimals": null, |
1182 | "fill": 1, |
1183 | "id": 23, |
1184 | @@ -1254,7 +1254,7 @@ |
1185 | "bars": true, |
1186 | "dashLength": 10, |
1187 | "dashes": false, |
1188 | - "datasource": "{{ datasource }}", |
1189 | + "datasource": "<< datasource >>", |
1190 | "fill": 1, |
1191 | "id": 24, |
1192 | "legend": { |
1193 | @@ -1333,7 +1333,7 @@ |
1194 | "bars": true, |
1195 | "dashLength": 10, |
1196 | "dashes": false, |
1197 | - "datasource": "{{ datasource }}", |
1198 | + "datasource": "<< datasource >>", |
1199 | "fill": 1, |
1200 | "id": 25, |
1201 | "legend": { |
1202 | @@ -1417,9 +1417,9 @@ |
1203 | "showTitle": true, |
1204 | "title": "Network", |
1205 | "titleSize": "h6" |
1206 | - }, |
1207 | + } |
1208 | {% if bcache_enabled %} |
1209 | - { |
1210 | + ,{ |
1211 | "collapse": true, |
1212 | "height": 250, |
1213 | "panels": [ |
1214 | @@ -1428,7 +1428,7 @@ |
1215 | "bars": false, |
1216 | "dashLength": 10, |
1217 | "dashes": false, |
1218 | - "datasource": "{{ datasource }}", |
1219 | + "datasource": "<< datasource >>", |
1220 | "editable": true, |
1221 | "error": false, |
1222 | "fill": 0, |
1223 | @@ -1509,7 +1509,7 @@ |
1224 | "bars": false, |
1225 | "dashLength": 10, |
1226 | "dashes": false, |
1227 | - "datasource": "{{ datasource }}", |
1228 | + "datasource": "<< datasource >>", |
1229 | "editable": true, |
1230 | "error": false, |
1231 | "fill": 0, |
1232 | @@ -1590,7 +1590,7 @@ |
1233 | "bars": false, |
1234 | "dashLength": 10, |
1235 | "dashes": false, |
1236 | - "datasource": "{{ datasource }}", |
1237 | + "datasource": "<< datasource >>", |
1238 | "editable": true, |
1239 | "error": false, |
1240 | "fill": 0, |
1241 | @@ -1671,7 +1671,7 @@ |
1242 | "bars": false, |
1243 | "dashLength": 10, |
1244 | "dashes": false, |
1245 | - "datasource": "{{ datasource }}", |
1246 | + "datasource": "<< datasource >>", |
1247 | "editable": true, |
1248 | "error": false, |
1249 | "fill": 0, |
1250 | @@ -1764,7 +1764,7 @@ |
1251 | "bars": false, |
1252 | "dashLength": 10, |
1253 | "dashes": false, |
1254 | - "datasource": "{{ datasource }}", |
1255 | + "datasource": "<< datasource >>", |
1256 | "fill": 1, |
1257 | "id": 18, |
1258 | "legend": { |
1259 | @@ -1844,7 +1844,7 @@ |
1260 | "bars": false, |
1261 | "dashLength": 10, |
1262 | "dashes": false, |
1263 | - "datasource": "{{ datasource }}", |
1264 | + "datasource": "<< datasource >>", |
1265 | "fill": 1, |
1266 | "id": 19, |
1267 | "legend": { |
1268 | @@ -1924,7 +1924,7 @@ |
1269 | "bars": false, |
1270 | "dashLength": 10, |
1271 | "dashes": false, |
1272 | - "datasource": "{{ datasource }}", |
1273 | + "datasource": "<< datasource >>", |
1274 | "fill": 1, |
1275 | "id": 20, |
1276 | "legend": { |
1277 | @@ -2005,9 +2005,10 @@ |
1278 | "showTitle": true, |
1279 | "title": "Bcache", |
1280 | "titleSize": "h6" |
1281 | - }, |
1282 | + } |
1283 | {% endif %} |
1284 | - { |
1285 | + {% if conntrack_enabled %} |
1286 | + ,{ |
1287 | "collapse": false, |
1288 | "height": 250, |
1289 | "panels": [ |
1290 | @@ -2016,7 +2017,7 @@ |
1291 | "bars": false, |
1292 | "dashLength": 10, |
1293 | "dashes": false, |
1294 | - "datasource": "{{ datasource }}", |
1295 | + "datasource": "<< datasource >>", |
1296 | "fill": 1, |
1297 | "id": 21, |
1298 | "legend": { |
1299 | @@ -2095,7 +2096,7 @@ |
1300 | "bars": false, |
1301 | "dashLength": 10, |
1302 | "dashes": false, |
1303 | - "datasource": "{{ datasource }}", |
1304 | + "datasource": "<< datasource >>", |
1305 | "fill": 1, |
1306 | "id": 22, |
1307 | "legend": { |
1308 | @@ -2177,6 +2178,7 @@ |
1309 | "title": "Kernel", |
1310 | "titleSize": "h6" |
1311 | } |
1312 | + {% endif %} |
1313 | ], |
1314 | "schemaVersion": 14, |
1315 | "style": "dark", |
1316 | @@ -2186,7 +2188,7 @@ |
1317 | { |
1318 | "allValue": ".*", |
1319 | "current": {}, |
1320 | - "datasource": "{{ datasource }}", |
1321 | + "datasource": "<< datasource >>", |
1322 | "hide": 0, |
1323 | "includeAll": false, |
1324 | "label": "non-juju hosts", |
This merge proposal is being monitored by mergebot. Change the status to Approved to merge.