Merge ~peppepetra/charm-prometheus-openstack-exporter:os-dashboard into charm-prometheus-openstack-exporter:master

Proposed by Giuseppe Petralia
Status: Merged
Approved by: James Troup
Approved revision: 381fb598339f79a7fe179f4754203bfdb12789c0
Merged at revision: 7f652c56f79986575c20322ce91171d0c5913f90
Proposed branch: ~peppepetra/charm-prometheus-openstack-exporter:os-dashboard
Merge into: charm-prometheus-openstack-exporter:master
Diff against target: 9318 lines (+4024/-5202)
2 files modified
src/reactive/openstack_exporter.py (+7/-0)
src/templates/grafana-dashboards/overview-openstack-exporter-dashboard.json.j2 (+4017/-5202)
Reviewer Review Type Date Requested Status
🤖 prod-jenkaas-bootstack (community) continuous-integration Approve
BootStack Reviewers Pending
BootStack Reviewers Pending
Review via email: mp+414853@code.launchpad.net

Commit message

Improve OpenStack overview dashboard

To post a comment you must log in.
Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :

A CI job is currently in progress. A follow up comment will be added when it completes.

Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :

FAILED: Continuous integration, rev:4d4181bf85034924a63d0454ecf8a6757fdcbfa8

No commit message was specified in the merge proposal. Click on the following link and set the commit message (if you want jenkins to rebuild you need to trigger it yourself):
https://code.launchpad.net/~peppepetra/charm-prometheus-openstack-exporter/+git/charm-prometheus-openstack-exporter/+merge/414853/+edit-commit-message

https://jenkins.canonical.com/bootstack/job/lp-charm-prometheus-openstack-exporter-ci/10/
Executed test runs:
    FAILURE: https://jenkins.canonical.com/bootstack/job/lp-charm-test-unit/245/
    None: https://jenkins.canonical.com/bootstack/job/lp-update-mp/863/

Click here to trigger a rebuild:
https://jenkins.canonical.com/bootstack/job/lp-charm-prometheus-openstack-exporter-ci/10//rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

This merge proposal is being monitored by mergebot. Change the status to Approved to merge.

Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :

A CI job is currently in progress. A follow up comment will be added when it completes.

Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :
review: Approve (continuous-integration)
Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :

A CI job is currently in progress. A follow up comment will be added when it completes.

Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :
review: Approve (continuous-integration)
Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :

A CI job is currently in progress. A follow up comment will be added when it completes.

Revision history for this message
🤖 prod-jenkaas-bootstack (prod-jenkaas-bootstack) wrote :
review: Approve (continuous-integration)
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

Change successfully merged at revision 7f652c56f79986575c20322ce91171d0c5913f90

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/reactive/openstack_exporter.py b/src/reactive/openstack_exporter.py
2index b9c5e6f..d38dcbe 100644
3--- a/src/reactive/openstack_exporter.py
4+++ b/src/reactive/openstack_exporter.py
5@@ -17,6 +17,7 @@
6
7 import base64
8 import functools
9+import hashlib
10 import json
11 import os
12 import random
13@@ -355,6 +356,12 @@ def import_grafana_dashboards(grafana_endpoint):
14 jinja_env_args={"variable_start_string": "<<", "variable_end_string": ">>"},
15 )
16 dashboard_json = json.loads(dashboard_str)
17+
18+ # Add digest to ensure it is updated on grafana.
19+ digest = hashlib.md5(dashboard_str.encode("utf8")).hexdigest()
20+ dashboard_json["digest"] = digest
21+ dashboard_json["source_model"] = hookenv.model_name()
22+
23 grafana_endpoint.register_dashboard(dash_file.stem, dashboard_json)
24 hookenv.log("Pushed grafana dashboard {}".format(dash_file))
25
26diff --git a/src/templates/grafana-dashboards/overview-openstack-exporter-dashboard.json.j2 b/src/templates/grafana-dashboards/overview-openstack-exporter-dashboard.json.j2
27index a990703..c621d44 100644
28--- a/src/templates/grafana-dashboards/overview-openstack-exporter-dashboard.json.j2
29+++ b/src/templates/grafana-dashboards/overview-openstack-exporter-dashboard.json.j2
30@@ -1,5270 +1,4085 @@
31 {
32- "dashboard": {
33- "annotations": {
34- "list": [
35- {
36- "builtIn": 1,
37- "datasource": "-- Grafana --",
38- "enable": true,
39- "hide": true,
40- "iconColor": "rgba(0, 211, 255, 1)",
41- "name": "Annotations & Alerts",
42- "target": {
43- "limit": 100,
44- "matchAny": false,
45- "tags": [],
46- "type": "dashboard"
47- },
48- "type": "dashboard"
49- }
50- ]
51- },
52- "editable": true,
53- "gnetId": null,
54- "graphTooltip": 0,
55- "id": null,
56- "iteration": 1633079273033,
57- "links": [],
58- "panels": [
59- {
60- "collapsed": false,
61- "datasource": null,
62- "gridPos": {
63- "h": 1,
64- "w": 24,
65- "x": 0,
66- "y": 0
67- },
68- "id": 158,
69- "panels": [],
70- "title": "General information",
71- "type": "row"
72- },
73- {
74- "datasource": null,
75- "editable": true,
76- "error": false,
77- "fieldConfig": {
78- "defaults": {
79- "custom": {}
80- },
81- "overrides": []
82- },
83- "gridPos": {
84- "h": 5,
85- "w": 24,
86- "x": 0,
87- "y": 1
88- },
89- "height": "200px",
90- "id": 26,
91- "links": [],
92- "options": {
93- "content": "# Openstack dashboard: $cloud\n\n* openstack data is cached, currently refreshed every 5 minutes\n* The VM creation / teardown graph doesn't show the values for the builders in scalingstacks because they happen a lot faster than our scrape interval\n* \"Free IPs\" are not owned by any tenant and available for allocation\n* \"Unused IPs\" are owned by a tenant but not currently associated with an instance",
94- "mode": "markdown"
95- },
96- "pluginVersion": "7.4.1",
97- "type": "text"
98- },
99- {
100- "datasource": "prometheus - Juju generated source",
101- "fieldConfig": {
102- "defaults": {
103- "color": {
104- "mode": "thresholds"
105- },
106- "custom": {},
107- "mappings": [],
108- "thresholds": {
109- "mode": "absolute",
110- "steps": [
111- {
112- "color": "green",
113- "value": null
114- }
115- ]
116+ "dashboard":{
117+ "annotations":{
118+ "list":[
119+ {
120+ "builtIn":1,
121+ "datasource":"-- Grafana --",
122+ "enable":true,
123+ "hide":true,
124+ "iconColor":"rgba(0, 211, 255, 1)",
125+ "name":"Annotations & Alerts",
126+ "target":{
127+ "limit":100,
128+ "matchAny":false,
129+ "tags":[
130+
131+ ],
132+ "type":"dashboard"
133+ },
134+ "type":"dashboard"
135 }
136- },
137- "overrides": []
138- },
139- "gridPos": {
140- "h": 8,
141- "w": 4,
142- "x": 0,
143- "y": 6
144- },
145- "id": 160,
146- "options": {
147- "colorMode": "value",
148- "graphMode": "area",
149- "justifyMode": "auto",
150- "orientation": "auto",
151- "reduceOptions": {
152- "calcs": [
153- "last"
154- ],
155- "fields": "",
156- "values": false
157- },
158- "text": {},
159- "textMode": "auto"
160- },
161- "pluginVersion": "7.4.1",
162- "targets": [
163- {
164- "expr": "sum(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
165- "instant": false,
166- "interval": "",
167- "legendFormat": "",
168- "refId": "A"
169- }
170- ],
171- "timeFrom": null,
172- "timeShift": null,
173- "title": "Scheduled VMs",
174- "type": "stat"
175+ ]
176 },
177- {
178- "datasource": "prometheus - Juju generated source",
179- "fieldConfig": {
180- "defaults": {
181- "color": {
182- "mode": "thresholds"
183- },
184- "custom": {},
185- "mappings": [],
186- "thresholds": {
187- "mode": "absolute",
188- "steps": [
189- {
190- "color": "green",
191- "value": null
192- }
193- ]
194- }
195- },
196- "overrides": []
197- },
198- "gridPos": {
199- "h": 8,
200- "w": 4,
201- "x": 4,
202- "y": 6
203- },
204- "id": 161,
205- "options": {
206- "colorMode": "value",
207- "graphMode": "area",
208- "justifyMode": "auto",
209- "orientation": "auto",
210- "reduceOptions": {
211- "calcs": [
212- "last"
213+ "editable":true,
214+ "gnetId": null,
215+ "graphTooltip":0,
216+ "id": null,
217+ "iteration":1643701330112,
218+ "links":[
219+
220+ ],
221+ "panels":[
222+ {
223+ "collapsed":false,
224+ "datasource":null,
225+ "gridPos":{
226+ "h":1,
227+ "w":24,
228+ "x":0,
229+ "y":0
230+ },
231+ "id":158,
232+ "panels":[
233+
234 ],
235- "fields": "",
236- "values": false
237- },
238- "text": {},
239- "textMode": "auto"
240- },
241- "pluginVersion": "7.4.1",
242- "targets": [
243- {
244- "expr": "count(nova_quota_instances{type=\"limit\", cloud=~\"$cloud\"})",
245- "instant": false,
246- "interval": "",
247- "legendFormat": "",
248- "refId": "A"
249- }
250- ],
251- "timeFrom": null,
252- "timeShift": null,
253- "title": "N° of projects",
254- "transformations": [],
255- "type": "stat"
256- },
257- {
258- "datasource": "prometheus - Juju generated source",
259- "fieldConfig": {
260- "defaults": {
261- "color": {
262- "mode": "thresholds"
263- },
264- "custom": {},
265- "mappings": [],
266- "max": 100,
267- "min": 0,
268- "thresholds": {
269- "mode": "percentage",
270- "steps": [
271- {
272- "color": "green",
273- "value": null
274- },
275- {
276- "color": "#EAB839",
277- "value": 80
278- },
279- {
280- "color": "red",
281- "value": 90
282- }
283- ]
284- },
285- "unit": "percent"
286- },
287- "overrides": []
288- },
289- "gridPos": {
290- "h": 5,
291- "w": 4,
292- "x": 8,
293- "y": 6
294- },
295- "id": 162,
296- "options": {
297- "orientation": "auto",
298- "reduceOptions": {
299- "calcs": [
300- "last"
301+ "title":"General information",
302+ "type":"row"
303+ },
304+ {
305+ "datasource":null,
306+ "editable":true,
307+ "error":false,
308+ "fieldConfig":{
309+ "defaults":{
310+ "custom":{
311+
312+ }
313+ },
314+ "overrides":[
315+
316+ ]
317+ },
318+ "gridPos":{
319+ "h":5,
320+ "w":24,
321+ "x":0,
322+ "y":1
323+ },
324+ "height":"200px",
325+ "id":26,
326+ "links":[
327+
328 ],
329- "fields": "",
330- "values": false
331- },
332- "showThresholdLabels": false,
333- "showThresholdMarkers": true,
334- "text": {}
335- },
336- "pluginVersion": "7.4.1",
337- "targets": [
338- {
339- "expr": "(ceph_osd_total_used_bytes/ceph_osd_total_bytes)*100",
340- "instant": true,
341- "interval": "",
342- "legendFormat": "",
343- "refId": "A"
344- }
345- ],
346- "timeFrom": null,
347- "timeShift": null,
348- "title": "Ceph Storage",
349- "transformations": [],
350- "type": "gauge"
351- },
352- {
353- "datasource": "prometheus - Juju generated source",
354- "fieldConfig": {
355- "defaults": {
356- "color": {
357- "mode": "thresholds"
358- },
359- "custom": {},
360- "mappings": [],
361- "max": 100,
362- "min": 0,
363- "thresholds": {
364- "mode": "percentage",
365- "steps": [
366- {
367- "color": "green",
368- "value": null
369- },
370- {
371- "color": "#EAB839",
372- "value": 80
373- },
374- {
375- "color": "red",
376- "value": 90
377- }
378- ]
379- },
380- "unit": "percent"
381- },
382- "overrides": []
383- },
384- "gridPos": {
385- "h": 5,
386- "w": 4,
387- "x": 12,
388- "y": 6
389- },
390- "id": 165,
391- "options": {
392- "orientation": "auto",
393- "reduceOptions": {
394- "calcs": [
395- "last"
396+ "options":{
397+ "content":"# Openstack dashboard: $cloud\n\n* openstack data is cached, currently refreshed every 5 minutes\n* The VM creation / teardown graph doesn't show the values for the builders in scalingstacks because they happen a lot faster than our scrape interval\n* \"Free IPs\" are not owned by any tenant and available for allocation\n* \"Unused IPs\" are owned by a tenant but not currently associated with an instance",
398+ "mode":"markdown"
399+ },
400+ "pluginVersion":"7.4.1",
401+ "type":"text"
402+ },
403+ {
404+ "datasource":"prometheus - Juju generated source",
405+ "fieldConfig":{
406+ "defaults":{
407+ "color":{
408+ "mode":"thresholds"
409+ },
410+ "custom":{
411+
412+ },
413+ "mappings":[
414+
415+ ],
416+ "thresholds":{
417+ "mode":"absolute",
418+ "steps":[
419+ {
420+ "color":"green",
421+ "value":null
422+ }
423+ ]
424+ }
425+ },
426+ "overrides":[
427+
428+ ]
429+ },
430+ "gridPos":{
431+ "h":8,
432+ "w":4,
433+ "x":0,
434+ "y":6
435+ },
436+ "id":160,
437+ "options":{
438+ "colorMode":"value",
439+ "graphMode":"area",
440+ "justifyMode":"auto",
441+ "orientation":"auto",
442+ "reduceOptions":{
443+ "calcs":[
444+ "last"
445+ ],
446+ "fields":"",
447+ "values":false
448+ },
449+ "text":{
450+
451+ },
452+ "textMode":"auto"
453+ },
454+ "pluginVersion":"7.4.1",
455+ "targets":[
456+ {
457+ "expr":"sum(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
458+ "instant":false,
459+ "interval":"",
460+ "legendFormat":"",
461+ "refId":"A"
462+ }
463 ],
464- "fields": "",
465- "values": false
466- },
467- "showThresholdLabels": false,
468- "showThresholdMarkers": true,
469- "text": {}
470- },
471- "pluginVersion": "7.4.1",
472- "targets": [
473- {
474- "expr": "sum(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})*100",
475- "instant": false,
476- "interval": "",
477- "legendFormat": "",
478- "refId": "A"
479- }
480- ],
481- "timeFrom": null,
482- "timeShift": null,
483- "title": "CPU Subscription",
484- "transformations": [],
485- "type": "gauge"
486- },
487- {
488- "datasource": "prometheus - Juju generated source",
489- "fieldConfig": {
490- "defaults": {
491- "color": {
492- "mode": "thresholds"
493- },
494- "custom": {},
495- "mappings": [],
496- "max": 100,
497- "min": 0,
498- "thresholds": {
499- "mode": "percentage",
500- "steps": [
501- {
502- "color": "green",
503- "value": null
504- },
505- {
506- "color": "#EAB839",
507- "value": 80
508- },
509- {
510- "color": "red",
511- "value": 90
512- }
513- ]
514- },
515- "unit": "percent"
516- },
517- "overrides": []
518- },
519- "gridPos": {
520- "h": 5,
521- "w": 4,
522- "x": 16,
523- "y": 6
524- },
525- "id": 168,
526- "options": {
527- "orientation": "auto",
528- "reduceOptions": {
529- "calcs": [
530- "last"
531+ "timeFrom":null,
532+ "timeShift":null,
533+ "title":"Scheduled VMs",
534+ "type":"stat"
535+ },
536+ {
537+ "datasource":"prometheus - Juju generated source",
538+ "fieldConfig":{
539+ "defaults":{
540+ "color":{
541+ "mode":"thresholds"
542+ },
543+ "custom":{
544+
545+ },
546+ "mappings":[
547+
548+ ],
549+ "thresholds":{
550+ "mode":"absolute",
551+ "steps":[
552+ {
553+ "color":"green",
554+ "value":null
555+ }
556+ ]
557+ }
558+ },
559+ "overrides":[
560+
561+ ]
562+ },
563+ "gridPos":{
564+ "h":8,
565+ "w":4,
566+ "x":4,
567+ "y":6
568+ },
569+ "id":161,
570+ "options":{
571+ "colorMode":"value",
572+ "graphMode":"area",
573+ "justifyMode":"auto",
574+ "orientation":"auto",
575+ "reduceOptions":{
576+ "calcs":[
577+ "last"
578+ ],
579+ "fields":"",
580+ "values":false
581+ },
582+ "text":{
583+
584+ },
585+ "textMode":"auto"
586+ },
587+ "pluginVersion":"7.4.1",
588+ "targets":[
589+ {
590+ "expr":"count(nova_quota_instances{type=\"limit\", cloud=~\"$cloud\"})",
591+ "instant":false,
592+ "interval":"",
593+ "legendFormat":"",
594+ "refId":"A"
595+ }
596 ],
597- "fields": "",
598- "values": false
599- },
600- "showThresholdLabels": false,
601- "showThresholdMarkers": true,
602- "text": {}
603- },
604- "pluginVersion": "7.4.1",
605- "targets": [
606- {
607- "expr": "sum(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})*100",
608- "instant": false,
609- "interval": "",
610- "legendFormat": "",
611- "refId": "A"
612- }
613- ],
614- "timeFrom": null,
615- "timeShift": null,
616- "title": "Mem Subscription",
617- "transformations": [],
618- "type": "gauge"
619- },
620- {
621- "datasource": "prometheus - Juju generated source",
622- "fieldConfig": {
623- "defaults": {
624- "color": {
625- "mode": "thresholds"
626- },
627- "custom": {},
628- "mappings": [],
629- "max": 100,
630- "min": 0,
631- "thresholds": {
632- "mode": "percentage",
633- "steps": [
634- {
635- "color": "green",
636- "value": null
637- },
638- {
639- "color": "#EAB839",
640- "value": 80
641- },
642- {
643- "color": "red",
644- "value": 90
645- }
646- ]
647- },
648- "unit": "percent"
649- },
650- "overrides": []
651- },
652- "gridPos": {
653- "h": 5,
654- "w": 4,
655- "x": 20,
656- "y": 6
657- },
658- "id": 171,
659- "options": {
660- "orientation": "auto",
661- "reduceOptions": {
662- "calcs": [
663- "last"
664+ "timeFrom":null,
665+ "timeShift":null,
666+ "title":"N° of projects",
667+ "transformations":[
668+
669 ],
670- "fields": "",
671- "values": false
672- },
673- "showThresholdLabels": false,
674- "showThresholdMarkers": true,
675- "text": {}
676- },
677- "pluginVersion": "7.4.1",
678- "targets": [
679- {
680- "expr": "sum(neutron_public_ip_usage{cloud=\"$cloud\", subnet_name=\"$neutron_net\"}) / sum(neutron_net_size{cloud=\"$cloud\", network_name=\"$neutron_net\"}) * 100",
681- "instant": false,
682- "interval": "",
683- "legendFormat": "",
684- "refId": "A"
685- }
686- ],
687- "timeFrom": null,
688- "timeShift": null,
689- "title": "IPs available in $neutron_net",
690- "transformations": [],
691- "type": "gauge"
692- },
693- {
694- "datasource": "prometheus - Juju generated source",
695- "fieldConfig": {
696- "defaults": {
697- "color": {
698- "mode": "thresholds"
699- },
700- "custom": {},
701- "mappings": [],
702- "thresholds": {
703- "mode": "percentage",
704- "steps": [
705- {
706- "color": "rgb(229, 231, 235)",
707- "value": null
708- }
709- ]
710- },
711- "unit": "bytes"
712- },
713- "overrides": []
714- },
715- "gridPos": {
716- "h": 3,
717- "w": 2,
718- "x": 8,
719- "y": 11
720- },
721- "id": 163,
722- "options": {
723- "colorMode": "value",
724- "graphMode": "none",
725- "justifyMode": "auto",
726- "orientation": "auto",
727- "reduceOptions": {
728- "calcs": [
729- "last"
730+ "type":"stat"
731+ },
732+ {
733+ "datasource":"prometheus - Juju generated source",
734+ "fieldConfig":{
735+ "defaults":{
736+ "color":{
737+ "mode":"thresholds"
738+ },
739+ "custom":{
740+
741+ },
742+ "mappings":[
743+
744+ ],
745+ "max":100,
746+ "min":0,
747+ "thresholds":{
748+ "mode":"percentage",
749+ "steps":[
750+ {
751+ "color":"green",
752+ "value":null
753+ },
754+ {
755+ "color":"#EAB839",
756+ "value":80
757+ },
758+ {
759+ "color":"red",
760+ "value":90
761+ }
762+ ]
763+ },
764+ "unit":"percent"
765+ },
766+ "overrides":[
767+
768+ ]
769+ },
770+ "gridPos":{
771+ "h":5,
772+ "w":4,
773+ "x":8,
774+ "y":6
775+ },
776+ "id":162,
777+ "options":{
778+ "orientation":"auto",
779+ "reduceOptions":{
780+ "calcs":[
781+ "last"
782+ ],
783+ "fields":"",
784+ "values":false
785+ },
786+ "showThresholdLabels":false,
787+ "showThresholdMarkers":true,
788+ "text":{
789+
790+ }
791+ },
792+ "pluginVersion":"7.4.1",
793+ "targets":[
794+ {
795+ "expr":"(ceph_cluster_total_used_bytes/ceph_cluster_total_bytes)*100",
796+ "instant":true,
797+ "interval":"",
798+ "legendFormat":"",
799+ "refId":"A"
800+ }
801 ],
802- "fields": "",
803- "values": false
804- },
805- "text": {},
806- "textMode": "auto"
807- },
808- "pluginVersion": "7.4.1",
809- "targets": [
810- {
811- "expr": "ceph_osd_total_used_bytes",
812- "instant": true,
813- "interval": "",
814- "legendFormat": "",
815- "refId": "A"
816- }
817- ],
818- "timeFrom": null,
819- "timeShift": null,
820- "title": "Used",
821- "transformations": [],
822- "type": "stat"
823- },
824- {
825- "datasource": "prometheus - Juju generated source",
826- "fieldConfig": {
827- "defaults": {
828- "color": {
829- "mode": "thresholds"
830- },
831- "custom": {},
832- "mappings": [],
833- "thresholds": {
834- "mode": "percentage",
835- "steps": [
836- {
837- "color": "rgb(253, 255, 253)",
838- "value": null
839- }
840- ]
841- },
842- "unit": "bytes"
843- },
844- "overrides": []
845- },
846- "gridPos": {
847- "h": 3,
848- "w": 2,
849- "x": 10,
850- "y": 11
851- },
852- "id": 164,
853- "options": {
854- "colorMode": "value",
855- "graphMode": "none",
856- "justifyMode": "auto",
857- "orientation": "auto",
858- "reduceOptions": {
859- "calcs": [
860- "last"
861+ "timeFrom":null,
862+ "timeShift":null,
863+ "title":"Ceph Storage",
864+ "transformations":[
865+
866 ],
867- "fields": "",
868- "values": false
869- },
870- "text": {},
871- "textMode": "auto"
872- },
873- "pluginVersion": "7.4.1",
874- "targets": [
875- {
876- "expr": "ceph_osd_total_bytes",
877- "instant": true,
878- "interval": "",
879- "legendFormat": "",
880- "refId": "A"
881- }
882- ],
883- "timeFrom": null,
884- "timeShift": null,
885- "title": "Total",
886- "transformations": [],
887- "type": "stat"
888- },
889- {
890- "datasource": "prometheus - Juju generated source",
891- "fieldConfig": {
892- "defaults": {
893- "color": {
894- "mode": "thresholds"
895- },
896- "custom": {},
897- "mappings": [],
898- "thresholds": {
899- "mode": "percentage",
900- "steps": [
901- {
902- "color": "rgb(229, 231, 235)",
903- "value": null
904- }
905- ]
906- },
907- "unit": "none"
908- },
909- "overrides": []
910- },
911- "gridPos": {
912- "h": 3,
913- "w": 2,
914- "x": 12,
915- "y": 11
916- },
917- "id": 166,
918- "options": {
919- "colorMode": "value",
920- "graphMode": "none",
921- "justifyMode": "auto",
922- "orientation": "auto",
923- "reduceOptions": {
924- "calcs": [
925- "last"
926+ "type":"gauge"
927+ },
928+ {
929+ "datasource":"prometheus - Juju generated source",
930+ "fieldConfig":{
931+ "defaults":{
932+ "color":{
933+ "mode":"thresholds"
934+ },
935+ "custom":{
936+
937+ },
938+ "mappings":[
939+
940+ ],
941+ "max":100,
942+ "min":0,
943+ "thresholds":{
944+ "mode":"percentage",
945+ "steps":[
946+ {
947+ "color":"green",
948+ "value":null
949+ },
950+ {
951+ "color":"#EAB839",
952+ "value":80
953+ },
954+ {
955+ "color":"red",
956+ "value":90
957+ }
958+ ]
959+ },
960+ "unit":"percent"
961+ },
962+ "overrides":[
963+
964+ ]
965+ },
966+ "gridPos":{
967+ "h":5,
968+ "w":4,
969+ "x":12,
970+ "y":6
971+ },
972+ "id":165,
973+ "options":{
974+ "orientation":"auto",
975+ "reduceOptions":{
976+ "calcs":[
977+ "last"
978+ ],
979+ "fields":"",
980+ "values":false
981+ },
982+ "showThresholdLabels":false,
983+ "showThresholdMarkers":true,
984+ "text":{
985+
986+ }
987+ },
988+ "pluginVersion":"7.4.1",
989+ "targets":[
990+ {
991+ "expr":"sum(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})*100",
992+ "instant":true,
993+ "interval":"",
994+ "legendFormat":"",
995+ "refId":"A"
996+ }
997 ],
998- "fields": "",
999- "values": false
1000- },
1001- "text": {},
1002- "textMode": "auto"
1003- },
1004- "pluginVersion": "7.4.1",
1005- "targets": [
1006- {
1007- "expr": "sum(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1008- "instant": false,
1009- "interval": "",
1010- "legendFormat": "",
1011- "refId": "A"
1012- }
1013- ],
1014- "timeFrom": null,
1015- "timeShift": null,
1016- "title": "Allocated",
1017- "transformations": [],
1018- "type": "stat"
1019- },
1020- {
1021- "datasource": "prometheus - Juju generated source",
1022- "fieldConfig": {
1023- "defaults": {
1024- "color": {
1025- "mode": "thresholds"
1026- },
1027- "custom": {},
1028- "mappings": [],
1029- "thresholds": {
1030- "mode": "percentage",
1031- "steps": [
1032- {
1033- "color": "rgb(251, 252, 250)",
1034- "value": null
1035- }
1036- ]
1037- },
1038- "unit": "none"
1039- },
1040- "overrides": []
1041- },
1042- "gridPos": {
1043- "h": 3,
1044- "w": 2,
1045- "x": 14,
1046- "y": 11
1047- },
1048- "id": 167,
1049- "options": {
1050- "colorMode": "value",
1051- "graphMode": "none",
1052- "justifyMode": "auto",
1053- "orientation": "auto",
1054- "reduceOptions": {
1055- "calcs": [
1056- "last"
1057+ "timeFrom":null,
1058+ "timeShift":null,
1059+ "title":"CPU Subscription",
1060+ "transformations":[
1061+
1062 ],
1063- "fields": "",
1064- "values": false
1065- },
1066- "text": {},
1067- "textMode": "auto"
1068- },
1069- "pluginVersion": "7.4.1",
1070- "targets": [
1071- {
1072- "expr": "sum(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1073- "instant": false,
1074- "interval": "",
1075- "legendFormat": "",
1076- "refId": "A"
1077- }
1078- ],
1079- "timeFrom": null,
1080- "timeShift": null,
1081- "title": "Total",
1082- "transformations": [],
1083- "type": "stat"
1084- },
1085- {
1086- "datasource": "prometheus - Juju generated source",
1087- "fieldConfig": {
1088- "defaults": {
1089- "color": {
1090- "mode": "thresholds"
1091- },
1092- "custom": {},
1093- "mappings": [],
1094- "thresholds": {
1095- "mode": "percentage",
1096- "steps": [
1097- {
1098- "color": "rgb(229, 231, 235)",
1099- "value": null
1100- }
1101- ]
1102- },
1103- "unit": "mbytes"
1104- },
1105- "overrides": []
1106- },
1107- "gridPos": {
1108- "h": 3,
1109- "w": 2,
1110- "x": 16,
1111- "y": 11
1112- },
1113- "id": 169,
1114- "options": {
1115- "colorMode": "value",
1116- "graphMode": "none",
1117- "justifyMode": "auto",
1118- "orientation": "auto",
1119- "reduceOptions": {
1120- "calcs": [
1121- "last"
1122+ "type":"gauge"
1123+ },
1124+ {
1125+ "datasource":"prometheus - Juju generated source",
1126+ "fieldConfig":{
1127+ "defaults":{
1128+ "color":{
1129+ "mode":"thresholds"
1130+ },
1131+ "custom":{
1132+
1133+ },
1134+ "mappings":[
1135+
1136+ ],
1137+ "max":100,
1138+ "min":0,
1139+ "thresholds":{
1140+ "mode":"percentage",
1141+ "steps":[
1142+ {
1143+ "color":"green",
1144+ "value":null
1145+ },
1146+ {
1147+ "color":"#EAB839",
1148+ "value":80
1149+ },
1150+ {
1151+ "color":"red",
1152+ "value":90
1153+ }
1154+ ]
1155+ },
1156+ "unit":"percent"
1157+ },
1158+ "overrides":[
1159+
1160+ ]
1161+ },
1162+ "gridPos":{
1163+ "h":5,
1164+ "w":4,
1165+ "x":16,
1166+ "y":6
1167+ },
1168+ "id":168,
1169+ "options":{
1170+ "orientation":"auto",
1171+ "reduceOptions":{
1172+ "calcs":[
1173+ "last"
1174+ ],
1175+ "fields":"",
1176+ "values":false
1177+ },
1178+ "showThresholdLabels":false,
1179+ "showThresholdMarkers":true,
1180+ "text":{
1181+
1182+ }
1183+ },
1184+ "pluginVersion":"7.4.1",
1185+ "targets":[
1186+ {
1187+ "expr":"sum(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})*100",
1188+ "instant":true,
1189+ "interval":"",
1190+ "legendFormat":"",
1191+ "refId":"A"
1192+ }
1193 ],
1194- "fields": "",
1195- "values": false
1196- },
1197- "text": {},
1198- "textMode": "auto"
1199- },
1200- "pluginVersion": "7.4.1",
1201- "targets": [
1202- {
1203- "expr": "sum(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1204- "instant": false,
1205- "interval": "",
1206- "legendFormat": "",
1207- "refId": "A"
1208- }
1209- ],
1210- "timeFrom": null,
1211- "timeShift": null,
1212- "title": "Allocated",
1213- "transformations": [],
1214- "type": "stat"
1215- },
1216- {
1217- "datasource": "prometheus - Juju generated source",
1218- "fieldConfig": {
1219- "defaults": {
1220- "color": {
1221- "mode": "thresholds"
1222- },
1223- "custom": {},
1224- "mappings": [],
1225- "thresholds": {
1226- "mode": "percentage",
1227- "steps": [
1228- {
1229- "color": "rgb(251, 252, 250)",
1230- "value": null
1231- }
1232- ]
1233- },
1234- "unit": "mbytes"
1235- },
1236- "overrides": []
1237- },
1238- "gridPos": {
1239- "h": 3,
1240- "w": 2,
1241- "x": 18,
1242- "y": 11
1243- },
1244- "id": 170,
1245- "options": {
1246- "colorMode": "value",
1247- "graphMode": "none",
1248- "justifyMode": "auto",
1249- "orientation": "auto",
1250- "reduceOptions": {
1251- "calcs": [
1252- "last"
1253+ "timeFrom":null,
1254+ "timeShift":null,
1255+ "title":"Mem Subscription",
1256+ "transformations":[
1257+
1258 ],
1259- "fields": "",
1260- "values": false
1261- },
1262- "text": {},
1263- "textMode": "auto"
1264- },
1265- "pluginVersion": "7.4.1",
1266- "targets": [
1267- {
1268- "expr": "sum(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1269- "instant": false,
1270- "interval": "",
1271- "legendFormat": "",
1272- "refId": "A"
1273- }
1274- ],
1275- "timeFrom": null,
1276- "timeShift": null,
1277- "title": "Total",
1278- "transformations": [],
1279- "type": "stat"
1280- },
1281- {
1282- "datasource": "prometheus - Juju generated source",
1283- "fieldConfig": {
1284- "defaults": {
1285- "color": {
1286- "mode": "thresholds"
1287- },
1288- "custom": {},
1289- "mappings": [],
1290- "thresholds": {
1291- "mode": "percentage",
1292- "steps": [
1293- {
1294- "color": "rgb(229, 231, 235)",
1295- "value": null
1296- }
1297- ]
1298- },
1299- "unit": "none"
1300- },
1301- "overrides": []
1302- },
1303- "gridPos": {
1304- "h": 3,
1305- "w": 1,
1306- "x": 20,
1307- "y": 11
1308- },
1309- "id": 172,
1310- "options": {
1311- "colorMode": "value",
1312- "graphMode": "none",
1313- "justifyMode": "auto",
1314- "orientation": "auto",
1315- "reduceOptions": {
1316- "calcs": [
1317- "last"
1318+ "type":"gauge"
1319+ },
1320+ {
1321+ "datasource":"prometheus - Juju generated source",
1322+ "fieldConfig":{
1323+ "defaults":{
1324+ "color":{
1325+ "mode":"thresholds"
1326+ },
1327+ "custom":{
1328+
1329+ },
1330+ "mappings":[
1331+
1332+ ],
1333+ "max":100,
1334+ "min":0,
1335+ "thresholds":{
1336+ "mode":"percentage",
1337+ "steps":[
1338+ {
1339+ "color":"green",
1340+ "value":null
1341+ },
1342+ {
1343+ "color":"#EAB839",
1344+ "value":80
1345+ },
1346+ {
1347+ "color":"red",
1348+ "value":90
1349+ }
1350+ ]
1351+ },
1352+ "unit":"percent"
1353+ },
1354+ "overrides":[
1355+
1356+ ]
1357+ },
1358+ "gridPos":{
1359+ "h":5,
1360+ "w":4,
1361+ "x":20,
1362+ "y":6
1363+ },
1364+ "id":171,
1365+ "options":{
1366+ "orientation":"auto",
1367+ "reduceOptions":{
1368+ "calcs":[
1369+ "last"
1370+ ],
1371+ "fields":"",
1372+ "values":false
1373+ },
1374+ "showThresholdLabels":false,
1375+ "showThresholdMarkers":true,
1376+ "text":{
1377+
1378+ }
1379+ },
1380+ "pluginVersion":"7.4.1",
1381+ "targets":[
1382+ {
1383+ "expr":"sum(neutron_public_ip_usage{cloud=\"$cloud\", subnet_name=\"$neutron_net\"}) / sum(neutron_net_size{cloud=\"$cloud\", network_name=\"$neutron_net\"}) * 100",
1384+ "instant":true,
1385+ "interval":"",
1386+ "legendFormat":"",
1387+ "refId":"A"
1388+ }
1389 ],
1390- "fields": "",
1391- "values": false
1392- },
1393- "text": {},
1394- "textMode": "auto"
1395- },
1396- "pluginVersion": "7.4.1",
1397- "targets": [
1398- {
1399- "expr": "sum(neutron_public_ip_usage{cloud=\"$cloud\", subnet_name=\"$neutron_net\"})",
1400- "instant": false,
1401- "interval": "",
1402- "legendFormat": "",
1403- "refId": "A"
1404- }
1405- ],
1406- "timeFrom": null,
1407- "timeShift": null,
1408- "title": "Allocated",
1409- "transformations": [],
1410- "type": "stat"
1411- },
1412- {
1413- "datasource": "prometheus - Juju generated source",
1414- "fieldConfig": {
1415- "defaults": {
1416- "color": {
1417- "mode": "thresholds"
1418- },
1419- "custom": {},
1420- "mappings": [],
1421- "thresholds": {
1422- "mode": "percentage",
1423- "steps": [
1424- {
1425- "color": "rgb(229, 231, 235)",
1426- "value": null
1427- }
1428- ]
1429- },
1430- "unit": "none"
1431- },
1432- "overrides": []
1433- },
1434- "gridPos": {
1435- "h": 3,
1436- "w": 1,
1437- "x": 21,
1438- "y": 11
1439- },
1440- "id": 173,
1441- "options": {
1442- "colorMode": "value",
1443- "graphMode": "none",
1444- "justifyMode": "auto",
1445- "orientation": "auto",
1446- "reduceOptions": {
1447- "calcs": [
1448- "last"
1449+ "timeFrom":null,
1450+ "timeShift":null,
1451+ "title":"IPs available in $neutron_net",
1452+ "transformations":[
1453+
1454 ],
1455- "fields": "",
1456- "values": false
1457- },
1458- "text": {},
1459- "textMode": "auto"
1460- },
1461- "pluginVersion": "7.4.1",
1462- "targets": [
1463- {
1464- "expr": "sum(neutron_net_size{cloud=\"$cloud\",network_name=\"$neutron_net\"})",
1465- "instant": false,
1466- "interval": "",
1467- "legendFormat": "",
1468- "refId": "A"
1469- }
1470- ],
1471- "timeFrom": null,
1472- "timeShift": null,
1473- "title": "Total",
1474- "transformations": [],
1475- "type": "stat"
1476- },
1477- {
1478- "cacheTimeout": null,
1479- "datasource": "prometheus - Juju generated source",
1480- "fieldConfig": {
1481- "defaults": {
1482- "color": {
1483- "mode": "thresholds"
1484- },
1485- "custom": {},
1486- "mappings": [
1487- {
1488- "options": {
1489- "match": "null",
1490- "result": {
1491- "text": "N/A"
1492+ "type":"gauge"
1493+ },
1494+ {
1495+ "datasource":"prometheus - Juju generated source",
1496+ "fieldConfig":{
1497+ "defaults":{
1498+ "color":{
1499+ "mode":"thresholds"
1500+ },
1501+ "custom":{
1502+
1503+ },
1504+ "mappings":[
1505+
1506+ ],
1507+ "thresholds":{
1508+ "mode":"percentage",
1509+ "steps":[
1510+ {
1511+ "color":"rgb(229, 231, 235)",
1512+ "value":null
1513+ }
1514+ ]
1515+ },
1516+ "unit":"bytes"
1517+ },
1518+ "overrides":[
1519+
1520+ ]
1521+ },
1522+ "gridPos":{
1523+ "h":3,
1524+ "w":2,
1525+ "x":8,
1526+ "y":11
1527+ },
1528+ "id":163,
1529+ "options":{
1530+ "colorMode":"value",
1531+ "graphMode":"none",
1532+ "justifyMode":"auto",
1533+ "orientation":"auto",
1534+ "reduceOptions":{
1535+ "calcs":[
1536+ "last"
1537+ ],
1538+ "fields":"",
1539+ "values":false
1540+ },
1541+ "text":{
1542+
1543+ },
1544+ "textMode":"auto"
1545+ },
1546+ "pluginVersion":"7.4.1",
1547+ "targets":[
1548+ {
1549+ "expr":"ceph_cluster_total_used_bytes",
1550+ "instant":true,
1551+ "interval":"",
1552+ "legendFormat":"",
1553+ "refId":"A"
1554+ }
1555+ ],
1556+ "timeFrom":null,
1557+ "timeShift":null,
1558+ "title":"Used",
1559+ "transformations":[
1560+
1561+ ],
1562+ "type":"stat"
1563+ },
1564+ {
1565+ "datasource":"prometheus - Juju generated source",
1566+ "fieldConfig":{
1567+ "defaults":{
1568+ "color":{
1569+ "mode":"thresholds"
1570+ },
1571+ "custom":{
1572+
1573+ },
1574+ "mappings":[
1575+
1576+ ],
1577+ "thresholds":{
1578+ "mode":"percentage",
1579+ "steps":[
1580+ {
1581+ "color":"rgb(253, 255, 253)",
1582+ "value":null
1583+ }
1584+ ]
1585+ },
1586+ "unit":"bytes"
1587+ },
1588+ "overrides":[
1589+
1590+ ]
1591+ },
1592+ "gridPos":{
1593+ "h":3,
1594+ "w":2,
1595+ "x":10,
1596+ "y":11
1597+ },
1598+ "id":164,
1599+ "options":{
1600+ "colorMode":"value",
1601+ "graphMode":"none",
1602+ "justifyMode":"auto",
1603+ "orientation":"auto",
1604+ "reduceOptions":{
1605+ "calcs":[
1606+ "last"
1607+ ],
1608+ "fields":"",
1609+ "values":false
1610+ },
1611+ "text":{
1612+
1613+ },
1614+ "textMode":"auto"
1615+ },
1616+ "pluginVersion":"7.4.1",
1617+ "targets":[
1618+ {
1619+ "expr":"ceph_cluster_total_bytes",
1620+ "instant":true,
1621+ "interval":"",
1622+ "legendFormat":"",
1623+ "refId":"A"
1624+ }
1625+ ],
1626+ "timeFrom":null,
1627+ "timeShift":null,
1628+ "title":"Total",
1629+ "transformations":[
1630+
1631+ ],
1632+ "type":"stat"
1633+ },
1634+ {
1635+ "datasource":"prometheus - Juju generated source",
1636+ "fieldConfig":{
1637+ "defaults":{
1638+ "color":{
1639+ "mode":"thresholds"
1640+ },
1641+ "custom":{
1642+
1643+ },
1644+ "mappings":[
1645+
1646+ ],
1647+ "thresholds":{
1648+ "mode":"percentage",
1649+ "steps":[
1650+ {
1651+ "color":"rgb(229, 231, 235)",
1652+ "value":null
1653+ }
1654+ ]
1655+ },
1656+ "unit":"none"
1657+ },
1658+ "overrides":[
1659+
1660+ ]
1661+ },
1662+ "gridPos":{
1663+ "h":3,
1664+ "w":2,
1665+ "x":12,
1666+ "y":11
1667+ },
1668+ "id":166,
1669+ "options":{
1670+ "colorMode":"value",
1671+ "graphMode":"none",
1672+ "justifyMode":"auto",
1673+ "orientation":"auto",
1674+ "reduceOptions":{
1675+ "calcs":[
1676+ "last"
1677+ ],
1678+ "fields":"",
1679+ "values":false
1680+ },
1681+ "text":{
1682+
1683+ },
1684+ "textMode":"auto"
1685+ },
1686+ "pluginVersion":"7.4.1",
1687+ "targets":[
1688+ {
1689+ "expr":"sum(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1690+ "instant":true,
1691+ "interval":"",
1692+ "legendFormat":"",
1693+ "refId":"A"
1694+ }
1695+ ],
1696+ "timeFrom":null,
1697+ "timeShift":null,
1698+ "title":"Allocated",
1699+ "transformations":[
1700+
1701+ ],
1702+ "type":"stat"
1703+ },
1704+ {
1705+ "datasource":"prometheus - Juju generated source",
1706+ "fieldConfig":{
1707+ "defaults":{
1708+ "color":{
1709+ "mode":"thresholds"
1710+ },
1711+ "custom":{
1712+
1713+ },
1714+ "mappings":[
1715+
1716+ ],
1717+ "thresholds":{
1718+ "mode":"percentage",
1719+ "steps":[
1720+ {
1721+ "color":"rgb(251, 252, 250)",
1722+ "value":null
1723+ }
1724+ ]
1725+ },
1726+ "unit":"none"
1727+ },
1728+ "overrides":[
1729+
1730+ ]
1731+ },
1732+ "gridPos":{
1733+ "h":3,
1734+ "w":2,
1735+ "x":14,
1736+ "y":11
1737+ },
1738+ "id":167,
1739+ "options":{
1740+ "colorMode":"value",
1741+ "graphMode":"none",
1742+ "justifyMode":"auto",
1743+ "orientation":"auto",
1744+ "reduceOptions":{
1745+ "calcs":[
1746+ "last"
1747+ ],
1748+ "fields":"",
1749+ "values":false
1750+ },
1751+ "text":{
1752+
1753+ },
1754+ "textMode":"auto"
1755+ },
1756+ "pluginVersion":"7.4.1",
1757+ "targets":[
1758+ {
1759+ "expr":"sum(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1760+ "instant":true,
1761+ "interval":"",
1762+ "legendFormat":"",
1763+ "refId":"A"
1764+ }
1765+ ],
1766+ "timeFrom":null,
1767+ "timeShift":null,
1768+ "title":"Total",
1769+ "transformations":[
1770+
1771+ ],
1772+ "type":"stat"
1773+ },
1774+ {
1775+ "datasource":"prometheus - Juju generated source",
1776+ "fieldConfig":{
1777+ "defaults":{
1778+ "color":{
1779+ "mode":"thresholds"
1780+ },
1781+ "custom":{
1782+
1783+ },
1784+ "mappings":[
1785+
1786+ ],
1787+ "thresholds":{
1788+ "mode":"percentage",
1789+ "steps":[
1790+ {
1791+ "color":"rgb(229, 231, 235)",
1792+ "value":null
1793+ }
1794+ ]
1795+ },
1796+ "unit":"mbytes"
1797+ },
1798+ "overrides":[
1799+
1800+ ]
1801+ },
1802+ "gridPos":{
1803+ "h":3,
1804+ "w":2,
1805+ "x":16,
1806+ "y":11
1807+ },
1808+ "id":169,
1809+ "options":{
1810+ "colorMode":"value",
1811+ "graphMode":"none",
1812+ "justifyMode":"auto",
1813+ "orientation":"auto",
1814+ "reduceOptions":{
1815+ "calcs":[
1816+ "last"
1817+ ],
1818+ "fields":"",
1819+ "values":false
1820+ },
1821+ "text":{
1822+
1823+ },
1824+ "textMode":"auto"
1825+ },
1826+ "pluginVersion":"7.4.1",
1827+ "targets":[
1828+ {
1829+ "expr":"sum(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1830+ "instant":true,
1831+ "interval":"",
1832+ "legendFormat":"",
1833+ "refId":"A"
1834+ }
1835+ ],
1836+ "timeFrom":null,
1837+ "timeShift":null,
1838+ "title":"Allocated",
1839+ "transformations":[
1840+
1841+ ],
1842+ "type":"stat"
1843+ },
1844+ {
1845+ "datasource":"prometheus - Juju generated source",
1846+ "fieldConfig":{
1847+ "defaults":{
1848+ "color":{
1849+ "mode":"thresholds"
1850+ },
1851+ "custom":{
1852+
1853+ },
1854+ "mappings":[
1855+
1856+ ],
1857+ "thresholds":{
1858+ "mode":"percentage",
1859+ "steps":[
1860+ {
1861+ "color":"rgb(251, 252, 250)",
1862+ "value":null
1863+ }
1864+ ]
1865+ },
1866+ "unit":"mbytes"
1867+ },
1868+ "overrides":[
1869+
1870+ ]
1871+ },
1872+ "gridPos":{
1873+ "h":3,
1874+ "w":2,
1875+ "x":18,
1876+ "y":11
1877+ },
1878+ "id":170,
1879+ "options":{
1880+ "colorMode":"value",
1881+ "graphMode":"none",
1882+ "justifyMode":"auto",
1883+ "orientation":"auto",
1884+ "reduceOptions":{
1885+ "calcs":[
1886+ "last"
1887+ ],
1888+ "fields":"",
1889+ "values":false
1890+ },
1891+ "text":{
1892+
1893+ },
1894+ "textMode":"auto"
1895+ },
1896+ "pluginVersion":"7.4.1",
1897+ "targets":[
1898+ {
1899+ "expr":"sum(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})",
1900+ "instant":true,
1901+ "interval":"",
1902+ "legendFormat":"",
1903+ "refId":"A"
1904+ }
1905+ ],
1906+ "timeFrom":null,
1907+ "timeShift":null,
1908+ "title":"Total",
1909+ "transformations":[
1910+
1911+ ],
1912+ "type":"stat"
1913+ },
1914+ {
1915+ "datasource":"prometheus - Juju generated source",
1916+ "fieldConfig":{
1917+ "defaults":{
1918+ "color":{
1919+ "mode":"thresholds"
1920+ },
1921+ "custom":{
1922+
1923+ },
1924+ "mappings":[
1925+
1926+ ],
1927+ "thresholds":{
1928+ "mode":"percentage",
1929+ "steps":[
1930+ {
1931+ "color":"rgb(229, 231, 235)",
1932+ "value":null
1933+ }
1934+ ]
1935+ },
1936+ "unit":"none"
1937+ },
1938+ "overrides":[
1939+
1940+ ]
1941+ },
1942+ "gridPos":{
1943+ "h":3,
1944+ "w":1,
1945+ "x":20,
1946+ "y":11
1947+ },
1948+ "id":172,
1949+ "options":{
1950+ "colorMode":"value",
1951+ "graphMode":"none",
1952+ "justifyMode":"auto",
1953+ "orientation":"auto",
1954+ "reduceOptions":{
1955+ "calcs":[
1956+ "last"
1957+ ],
1958+ "fields":"",
1959+ "values":false
1960+ },
1961+ "text":{
1962+
1963+ },
1964+ "textMode":"auto"
1965+ },
1966+ "pluginVersion":"7.4.1",
1967+ "targets":[
1968+ {
1969+ "expr":"sum(neutron_public_ip_usage{cloud=\"$cloud\", subnet_name=\"$neutron_net\"})",
1970+ "instant":true,
1971+ "interval":"",
1972+ "legendFormat":"",
1973+ "refId":"A"
1974+ }
1975+ ],
1976+ "timeFrom":null,
1977+ "timeShift":null,
1978+ "title":"Allocated",
1979+ "transformations":[
1980+
1981+ ],
1982+ "type":"stat"
1983+ },
1984+ {
1985+ "datasource":"prometheus - Juju generated source",
1986+ "fieldConfig":{
1987+ "defaults":{
1988+ "color":{
1989+ "mode":"thresholds"
1990+ },
1991+ "custom":{
1992+
1993+ },
1994+ "mappings":[
1995+
1996+ ],
1997+ "thresholds":{
1998+ "mode":"percentage",
1999+ "steps":[
2000+ {
2001+ "color":"rgb(229, 231, 235)",
2002+ "value":null
2003+ }
2004+ ]
2005+ },
2006+ "unit":"none"
2007+ },
2008+ "overrides":[
2009+
2010+ ]
2011+ },
2012+ "gridPos":{
2013+ "h":3,
2014+ "w":1,
2015+ "x":21,
2016+ "y":11
2017+ },
2018+ "id":173,
2019+ "options":{
2020+ "colorMode":"value",
2021+ "graphMode":"none",
2022+ "justifyMode":"auto",
2023+ "orientation":"auto",
2024+ "reduceOptions":{
2025+ "calcs":[
2026+ "last"
2027+ ],
2028+ "fields":"",
2029+ "values":false
2030+ },
2031+ "text":{
2032+
2033+ },
2034+ "textMode":"auto"
2035+ },
2036+ "pluginVersion":"7.4.1",
2037+ "targets":[
2038+ {
2039+ "expr":"sum(neutron_net_size{cloud=\"$cloud\",network_name=\"$neutron_net\"})",
2040+ "instant":true,
2041+ "interval":"",
2042+ "legendFormat":"",
2043+ "refId":"A"
2044+ }
2045+ ],
2046+ "timeFrom":null,
2047+ "timeShift":null,
2048+ "title":"Total",
2049+ "transformations":[
2050+
2051+ ],
2052+ "type":"stat"
2053+ },
2054+ {
2055+ "cacheTimeout":null,
2056+ "datasource":"prometheus - Juju generated source",
2057+ "fieldConfig":{
2058+ "defaults":{
2059+ "color":{
2060+ "mode":"thresholds"
2061+ },
2062+ "custom":{
2063+
2064+ },
2065+ "mappings":[
2066+ {
2067+ "options":{
2068+ "match":"null",
2069+ "result":{
2070+ "text":"N/A"
2071+ }
2072+ },
2073+ "type":"special"
2074+ }
2075+ ],
2076+ "thresholds":{
2077+ "mode":"absolute",
2078+ "steps":[
2079+ {
2080+ "color":"green",
2081+ "value":null
2082+ },
2083+ {
2084+ "color":"red",
2085+ "value":80
2086+ }
2087+ ]
2088+ },
2089+ "unit":"none"
2090+ },
2091+ "overrides":[
2092+
2093+ ]
2094+ },
2095+ "gridPos":{
2096+ "h":3,
2097+ "w":2,
2098+ "x":22,
2099+ "y":11
2100+ },
2101+ "id":138,
2102+ "interval":null,
2103+ "links":[
2104+
2105+ ],
2106+ "maxDataPoints":100,
2107+ "options":{
2108+ "colorMode":"none",
2109+ "graphMode":"none",
2110+ "justifyMode":"auto",
2111+ "orientation":"horizontal",
2112+ "reduceOptions":{
2113+ "calcs":[
2114+ "lastNotNull"
2115+ ],
2116+ "fields":"",
2117+ "values":false
2118+ },
2119+ "text":{
2120+
2121+ },
2122+ "textMode":"auto"
2123+ },
2124+ "pluginVersion":"7.4.1",
2125+ "targets":[
2126+ {
2127+ "expr":"(sum(neutron_net_size{network_name=\"ext-net\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"ext-net\",cloud=\"$cloud\",ip_status=\"ACTIVE\"})) - (sum(neutron_net_size{network_name=\"ext-net\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"ext-net\",cloud=\"$cloud\"}))",
2128+ "instant":true,
2129+ "interval":"",
2130+ "intervalFactor":2,
2131+ "legendFormat":"",
2132+ "metric":"",
2133+ "refId":"A",
2134+ "step":1800
2135+ }
2136+ ],
2137+ "title":"Unused IPs (ext-net)",
2138+ "type":"stat"
2139+ },
2140+ {
2141+ "datasource":"prometheus - Juju generated source",
2142+ "fieldConfig":{
2143+ "defaults":{
2144+ "color":{
2145+ "mode":"thresholds"
2146+ },
2147+ "custom":{
2148+ "align":null,
2149+ "displayMode":"auto",
2150+ "filterable":false
2151+ },
2152+ "mappings":[
2153+
2154+ ],
2155+ "thresholds":{
2156+ "mode":"absolute",
2157+ "steps":[
2158+
2159+ ]
2160+ }
2161+ },
2162+ "overrides":[
2163+ {
2164+ "matcher":{
2165+ "id":"byName",
2166+ "options":"hypervisor_hostname"
2167+ },
2168+ "properties":[
2169+ {
2170+ "id":"displayName",
2171+ "value":"Hipervisor"
2172+ },
2173+ {
2174+ "id":"links",
2175+ "value":[
2176+ {
2177+ "targetBlank":false,
2178+ "title":"${__value.text}",
2179+ "url":"/d/<< hypervisor_dash_uid >>/juju-openstack-hypervisor-overview?orgId=1&var-cloud=${cloud:queryparams}&var-hypervisor=${__value.text}"
2180+ }
2181+ ]
2182+ }
2183+ ]
2184+ },
2185+ {
2186+ "matcher":{
2187+ "id":"byName",
2188+ "options":"Value #A"
2189+ },
2190+ "properties":[
2191+ {
2192+ "id":"displayName",
2193+ "value":"Load avg 5"
2194+ }
2195+ ]
2196+ },
2197+ {
2198+ "matcher":{
2199+ "id":"byName",
2200+ "options":"Value #B"
2201+ },
2202+ "properties":[
2203+ {
2204+ "id":"displayName",
2205+ "value":"Load avg 15"
2206+ }
2207+ ]
2208+ },
2209+ {
2210+ "matcher":{
2211+ "id":"byName",
2212+ "options":"Value #C"
2213+ },
2214+ "properties":[
2215+ {
2216+ "id":"displayName",
2217+ "value":"Ephemeral Disk Usage"
2218+ },
2219+ {
2220+ "id":"unit",
2221+ "value":"percent"
2222+ }
2223+ ]
2224+ },
2225+ {
2226+ "matcher":{
2227+ "id":"byName",
2228+ "options":"Value #D"
2229+ },
2230+ "properties":[
2231+ {
2232+ "id":"displayName",
2233+ "value":"Uptime"
2234+ },
2235+ {
2236+ "id":"unit",
2237+ "value":"s"
2238+ },
2239+ {
2240+ "id":"decimals",
2241+ "value":1
2242+ }
2243+ ]
2244+ },
2245+ {
2246+ "matcher":{
2247+ "id":"byName",
2248+ "options":"Value #E"
2249+ },
2250+ "properties":[
2251+ {
2252+ "id":"displayName",
2253+ "value":"Running VMs"
2254+ },
2255+ {
2256+ "id":"decimals",
2257+ "value":0
2258+ }
2259+ ]
2260+ },
2261+ {
2262+ "matcher":{
2263+ "id":"byName",
2264+ "options":"Value #F"
2265+ },
2266+ "properties":[
2267+ {
2268+ "id":"displayName",
2269+ "value":"CPUs Subscription"
2270+ },
2271+ {
2272+ "id":"unit",
2273+ "value":"percent"
2274+ }
2275+ ]
2276+ },
2277+ {
2278+ "matcher":{
2279+ "id":"byName",
2280+ "options":"Value #G"
2281+ },
2282+ "properties":[
2283+ {
2284+ "id":"displayName",
2285+ "value":"Mem Subscription"
2286+ },
2287+ {
2288+ "id":"unit",
2289+ "value":"percent"
2290+ }
2291+ ]
2292+ },
2293+ {
2294+ "matcher":{
2295+ "id":"byName",
2296+ "options":"Value #I"
2297+ },
2298+ "properties":[
2299+ {
2300+ "id":"displayName",
2301+ "value":"VMs net throughput"
2302+ },
2303+ {
2304+ "id":"unit",
2305+ "value":"binBps"
2306+ }
2307+ ]
2308+ },
2309+ {
2310+ "matcher":{
2311+ "id":"byName",
2312+ "options":"aggregate"
2313+ },
2314+ "properties":[
2315+ {
2316+ "id":"custom.width",
2317+ "value":null
2318+ }
2319+ ]
2320 }
2321- },
2322- "type": "special"
2323- }
2324+ ]
2325+ },
2326+ "gridPos":{
2327+ "h":10,
2328+ "w":24,
2329+ "x":0,
2330+ "y":14
2331+ },
2332+ "id":177,
2333+ "options":{
2334+ "showHeader":true,
2335+ "sortBy":[
2336+ {
2337+ "desc":true,
2338+ "displayName":"CPUs Subscription"
2339+ }
2340+ ]
2341+ },
2342+ "pluginVersion":"7.4.1",
2343+ "targets":[
2344+ {
2345+ "expr":"label_replace(sum by (dns_name, juju_unit)(system_load5{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2346+ "format":"table",
2347+ "hide":false,
2348+ "instant":true,
2349+ "interval":"",
2350+ "legendFormat":"{{short_hostname}}",
2351+ "refId":"A"
2352+ },
2353+ {
2354+ "expr":"label_replace(sum by (dns_name, juju_unit)(system_load15{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2355+ "format":"table",
2356+ "instant":true,
2357+ "interval":"",
2358+ "legendFormat":"{{short_hostname}}",
2359+ "refId":"B"
2360+ },
2361+ {
2362+ "expr":"label_replace(sum by (dns_name, juju_unit)(disk_used{path=~\".*nova/instances.*|.*var.*\",juju_unit=~\".*nova-compute.*\"})/sum by (dns_name, juju_unit)(disk_total{path=~\".*nova/instances.*|.*var.*\",\njuju_unit=~\".*nova-compute.*\"}) * 100, \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2363+ "format":"table",
2364+ "instant":true,
2365+ "interval":"",
2366+ "legendFormat":"{{short_hostname}}",
2367+ "refId":"C"
2368+ },
2369+ {
2370+ "expr":"label_replace(sum by (dns_name)(system_uptime{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2371+ "format":"table",
2372+ "hide":false,
2373+ "instant":true,
2374+ "interval":"",
2375+ "legendFormat":"{{short_hostname}}",
2376+ "refId":"D"
2377+ },
2378+ {
2379+ "exemplar":true,
2380+ "expr":"label_replace(sum by (hypervisor_hostname)(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}), \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2381+ "format":"table",
2382+ "hide":false,
2383+ "instant":true,
2384+ "interval":"",
2385+ "legendFormat":"{{short_hostname}}",
2386+ "refId":"E"
2387+ },
2388+ {
2389+ "expr":"label_replace(sum by (hypervisor_hostname)(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum by (hypervisor_hostname)(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2390+ "format":"table",
2391+ "instant":true,
2392+ "interval":"",
2393+ "legendFormat":"{{short_hostname}}",
2394+ "refId":"F"
2395+ },
2396+ {
2397+ "expr":"label_replace(sum by (hypervisor_hostname)(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum by (hypervisor_hostname)(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2398+ "format":"table",
2399+ "instant":true,
2400+ "interval":"",
2401+ "legendFormat":"{{short_hostname}}",
2402+ "refId":"G"
2403+ },
2404+ {
2405+ "expr":"label_replace(count by (hypervisor_hostname, aggregate)(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2406+ "format":"table",
2407+ "hide":false,
2408+ "instant":true,
2409+ "interval":"",
2410+ "legendFormat":"",
2411+ "refId":"H"
2412+ },
2413+ {
2414+ "expr":"label_replace(sum by (dns_name)(rate(libvirt_domain_interface_stats_receive_bytes_total[1m])) + sum by (dns_name)(rate(libvirt_domain_interface_stats_transmit_bytes_total[1m])), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2415+ "format":"table",
2416+ "hide":false,
2417+ "instant":true,
2418+ "interval":"",
2419+ "intervalFactor":10,
2420+ "legendFormat":"{{short_hostname}}",
2421+ "refId":"I"
2422+ }
2423 ],
2424- "thresholds": {
2425- "mode": "absolute",
2426- "steps": [
2427- {
2428- "color": "green",
2429- "value": null
2430- },
2431- {
2432- "color": "red",
2433- "value": 80
2434- }
2435- ]
2436- },
2437- "unit": "none"
2438- },
2439- "overrides": []
2440- },
2441- "gridPos": {
2442- "h": 3,
2443- "w": 2,
2444- "x": 22,
2445- "y": 11
2446- },
2447- "id": 138,
2448- "interval": null,
2449- "links": [],
2450- "maxDataPoints": 100,
2451- "options": {
2452- "colorMode": "none",
2453- "graphMode": "none",
2454- "justifyMode": "auto",
2455- "orientation": "horizontal",
2456- "reduceOptions": {
2457- "calcs": [
2458- "lastNotNull"
2459+ "timeFrom":null,
2460+ "timeShift":null,
2461+ "title":"Hypervisors stats",
2462+ "transformations":[
2463+ {
2464+ "id":"merge",
2465+ "options":{
2466+
2467+ }
2468+ },
2469+ {
2470+ "id":"organize",
2471+ "options":{
2472+ "excludeByName":{
2473+ "Time":true,
2474+ "Value #H":true,
2475+ "__name__":true,
2476+ "dns_name":true,
2477+ "group":true,
2478+ "host":true,
2479+ "hypervisor_hostname":false,
2480+ "instance":true,
2481+ "job":true,
2482+ "juju_application":true,
2483+ "juju_model":true,
2484+ "juju_unit":true,
2485+ "short_hostname":true
2486+ },
2487+ "indexByName":{
2488+ "Time":0,
2489+ "Value #A":13,
2490+ "Value #B":14,
2491+ "Value #C":15,
2492+ "Value #D":16,
2493+ "Value #E":17,
2494+ "Value #F":18,
2495+ "Value #G":19,
2496+ "Value #H":20,
2497+ "__name__":4,
2498+ "aggregate":12,
2499+ "dns_name":8,
2500+ "group":5,
2501+ "host":1,
2502+ "hypervisor_hostname":2,
2503+ "instance":7,
2504+ "job":6,
2505+ "juju_application":9,
2506+ "juju_model":10,
2507+ "juju_unit":3,
2508+ "short_hostname":11
2509+ },
2510+ "renameByName":{
2511+ "Value #A":"",
2512+ "Value #B":"",
2513+ "Value #C":"",
2514+ "Value #D":"",
2515+ "aggregate":""
2516+ }
2517+ }
2518+ },
2519+ {
2520+ "id":"sortBy",
2521+ "options":{
2522+ "fields":{
2523+
2524+ },
2525+ "sort":[
2526+ {
2527+ "field":"short_hostname"
2528+ }
2529+ ]
2530+ }
2531+ }
2532 ],
2533- "fields": "",
2534- "values": false
2535- },
2536- "text": {},
2537- "textMode": "auto"
2538- },
2539- "pluginVersion": "7.4.1",
2540- "targets": [
2541- {
2542- "expr": "(sum(neutron_net_size{network_name=\"ext-net\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"ext-net\",cloud=\"$cloud\",ip_status=\"ACTIVE\"})) - (sum(neutron_net_size{network_name=\"ext-net\",cloud=\"$cloud\"}) - sum(neutron_public_ip_usage{subnet_name=\"ext-net\",cloud=\"$cloud\"}))",
2543- "intervalFactor": 2,
2544- "legendFormat": "",
2545- "metric": "",
2546- "refId": "A",
2547- "step": 1800
2548- }
2549- ],
2550- "title": "Unused IPs (ext-net)",
2551- "type": "stat"
2552- },
2553- {
2554- "datasource": "prometheus - Juju generated source",
2555- "fieldConfig": {
2556- "defaults": {
2557- "color": {
2558- "mode": "thresholds"
2559- },
2560- "custom": {
2561- "align": null,
2562- "displayMode": "auto",
2563- "filterable": false
2564- },
2565- "mappings": [],
2566- "thresholds": {
2567- "mode": "absolute",
2568- "steps": []
2569- }
2570- },
2571- "overrides": [
2572- {
2573- "matcher": {
2574- "id": "byName",
2575- "options": "hypervisor_hostname"
2576- },
2577- "properties": [
2578- {
2579- "id": "displayName",
2580- "value": "Hipervisor"
2581- },
2582- {
2583- "id": "links",
2584- "value": [
2585- {
2586- "targetBlank": false,
2587- "title": "${__value.text}",
2588- "url": "/d/<< hypervisor_dash_uid >>/juju-openstack-hypervisor-overview?orgId=1&var-cloud=${cloud:queryparams}&var-hypervisor=${__value.text}"
2589- }
2590- ]
2591- }
2592- ]
2593- },
2594- {
2595- "matcher": {
2596- "id": "byName",
2597- "options": "Value #A"
2598- },
2599- "properties": [
2600- {
2601- "id": "displayName",
2602- "value": "Load avg 5"
2603- }
2604- ]
2605- },
2606- {
2607- "matcher": {
2608- "id": "byName",
2609- "options": "Value #B"
2610- },
2611- "properties": [
2612- {
2613- "id": "displayName",
2614- "value": "Load avg 15"
2615- }
2616- ]
2617- },
2618- {
2619- "matcher": {
2620- "id": "byName",
2621- "options": "Value #C"
2622- },
2623- "properties": [
2624- {
2625- "id": "displayName",
2626- "value": "Ephemeral Disk Usage"
2627- },
2628- {
2629- "id": "unit",
2630- "value": "percent"
2631- }
2632- ]
2633- },
2634- {
2635- "matcher": {
2636- "id": "byName",
2637- "options": "Value #D"
2638- },
2639- "properties": [
2640- {
2641- "id": "displayName",
2642- "value": "Uptime"
2643- },
2644- {
2645- "id": "unit",
2646- "value": "s"
2647- },
2648- {
2649- "id": "decimals",
2650- "value": 1
2651- }
2652- ]
2653- },
2654- {
2655- "matcher": {
2656- "id": "byName",
2657- "options": "Value #E"
2658- },
2659- "properties": [
2660- {
2661- "id": "displayName",
2662- "value": "Running VMs"
2663- },
2664- {
2665- "id": "decimals",
2666- "value": 0
2667- }
2668- ]
2669- },
2670- {
2671- "matcher": {
2672- "id": "byName",
2673- "options": "Value #F"
2674- },
2675- "properties": [
2676- {
2677- "id": "displayName",
2678- "value": "CPUs Subscription"
2679- },
2680- {
2681- "id": "unit",
2682- "value": "percent"
2683- }
2684- ]
2685- },
2686- {
2687- "matcher": {
2688- "id": "byName",
2689- "options": "Value #G"
2690- },
2691- "properties": [
2692- {
2693- "id": "displayName",
2694- "value": "Mem Subscription"
2695- },
2696- {
2697- "id": "unit",
2698- "value": "percent"
2699- }
2700- ]
2701- },
2702- {
2703- "matcher": {
2704- "id": "byName",
2705- "options": "Value #I"
2706- },
2707- "properties": [
2708- {
2709- "id": "displayName",
2710- "value": "VMs net throughput"
2711- },
2712- {
2713- "id": "unit",
2714- "value": "binBps"
2715- }
2716- ]
2717- },
2718- {
2719- "matcher": {
2720- "id": "byName",
2721- "options": "aggregate"
2722- },
2723- "properties": [
2724- {
2725- "id": "custom.width",
2726- "value": null
2727- }
2728- ]
2729- }
2730- ]
2731- },
2732- "gridPos": {
2733- "h": 10,
2734- "w": 24,
2735- "x": 0,
2736- "y": 14
2737- },
2738- "id": 177,
2739- "options": {
2740- "showHeader": true,
2741- "sortBy": [
2742- {
2743- "desc": false,
2744- "displayName": "Hipervisor"
2745- }
2746- ]
2747- },
2748- "pluginVersion": "7.4.1",
2749- "targets": [
2750- {
2751- "expr": "label_replace(sum by (dns_name, juju_unit)(system_load5{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2752- "format": "table",
2753- "hide": false,
2754- "instant": true,
2755- "interval": "",
2756- "legendFormat": "{{short_hostname}}",
2757- "refId": "A"
2758- },
2759- {
2760- "expr": "label_replace(sum by (dns_name, juju_unit)(system_load15{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2761- "format": "table",
2762- "instant": true,
2763- "interval": "",
2764- "legendFormat": "{{short_hostname}}",
2765- "refId": "B"
2766- },
2767- {
2768- "expr": "label_replace(sum by (dns_name, juju_unit)(disk_used{path=~\".*nova/instances.*|.*var.*\",juju_unit=~\".*nova-compute.*\"})/sum by (dns_name, juju_unit)(disk_total{path=~\".*nova/instances.*|.*var.*\",\njuju_unit=~\".*nova-compute.*\"}) * 100, \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2769- "format": "table",
2770- "instant": true,
2771- "interval": "",
2772- "legendFormat": "{{short_hostname}}",
2773- "refId": "C"
2774- },
2775- {
2776- "expr": "label_replace(sum by (dns_name)(system_uptime{juju_unit=~\".*nova-compute.*\"}), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2777- "format": "table",
2778- "hide": false,
2779- "instant": true,
2780- "interval": "",
2781- "legendFormat": "{{short_hostname}}",
2782- "refId": "D"
2783- },
2784- {
2785- "exemplar": true,
2786- "expr": "label_replace(sum by (hypervisor_hostname)(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}), \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2787- "format": "table",
2788- "hide": false,
2789- "instant": true,
2790- "interval": "",
2791- "legendFormat": "{{short_hostname}}",
2792- "refId": "E"
2793- },
2794- {
2795- "expr": "label_replace(sum by (hypervisor_hostname)(hypervisor_vcpus_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum by (hypervisor_hostname)(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2796- "format": "table",
2797- "instant": true,
2798- "interval": "",
2799- "legendFormat": "{{short_hostname}}",
2800- "refId": "F"
2801- },
2802- {
2803- "expr": "label_replace(sum by (hypervisor_hostname)(hypervisor_memory_mbs_used{cloud=~\"$cloud\", aggregate=~\"$aggregate\"})/sum by (hypervisor_hostname)(hypervisor_memory_mbs_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2804- "format": "table",
2805- "instant": true,
2806- "interval": "",
2807- "legendFormat": "{{short_hostname}}",
2808- "refId": "G"
2809- },
2810- {
2811- "expr": "label_replace(count by (hypervisor_hostname, aggregate)(hypervisor_vcpus_total{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}) *100, \"short_hostname\", \"$1\", \"hypervisor_hostname\", \"([^\\\\.]*)\\\\..*\")",
2812- "format": "table",
2813- "hide": false,
2814- "instant": true,
2815- "interval": "",
2816- "legendFormat": "",
2817- "refId": "H"
2818- },
2819- {
2820- "expr": "label_replace(sum by (dns_name)(rate(libvirt_domain_interface_stats_receive_bytes_total[1m])) + sum by (dns_name)(rate(libvirt_domain_interface_stats_transmit_bytes_total[1m])), \"short_hostname\", \"$1\", \"dns_name\", \"([^\\\\.]*)\\\\..*\") and on (dns_name)label_replace(hypervisor_running_vms{cloud=~\"$cloud\", aggregate=~\"$aggregate\"}, \"dns_name\", \"$1\", \"hypervisor_hostname\", \"(.*)\")",
2821- "format": "table",
2822- "hide": false,
2823- "instant": true,
2824- "interval": "",
2825- "intervalFactor": 10,
2826- "legendFormat": "{{short_hostname}}",
2827- "refId": "I"
2828- }
2829- ],
2830- "timeFrom": null,
2831- "timeShift": null,
2832- "title": "Hypervisors stats",
2833- "transformations": [
2834- {
2835- "id": "merge",
2836- "options": {}
2837- },
2838- {
2839- "id": "organize",
2840- "options": {
2841- "excludeByName": {
2842- "Time": true,
2843- "Value #H": true,
2844- "__name__": true,
2845- "dns_name": true,
2846- "group": true,
2847- "host": true,
2848- "hypervisor_hostname": false,
2849- "instance": true,
2850- "job": true,
2851- "juju_application": true,
2852- "juju_model": true,
2853- "juju_unit": true,
2854- "short_hostname": true
2855- },
2856- "indexByName": {
2857- "Time": 0,
2858- "Value #A": 13,
2859- "Value #B": 14,
2860- "Value #C": 15,
2861- "Value #D": 16,
2862- "Value #E": 17,
2863- "Value #F": 18,
2864- "Value #G": 19,
2865- "Value #H": 20,
2866- "__name__": 4,
2867- "aggregate": 12,
2868- "dns_name": 8,
2869- "group": 5,
2870- "host": 1,
2871- "hypervisor_hostname": 2,
2872- "instance": 7,
2873- "job": 6,
2874- "juju_application": 9,
2875- "juju_model": 10,
2876- "juju_unit": 3,
2877- "short_hostname": 11
2878- },
2879- "renameByName": {
2880- "Value #A": "",
2881- "Value #B": "",
2882- "Value #C": "",
2883- "Value #D": "",
2884- "aggregate": ""
2885- }
2886- }
2887- },
2888- {
2889- "id": "sortBy",
2890- "options": {
2891- "fields": {},
2892- "sort": [
2893- {
2894- "field": "short_hostname"
2895- }
2896- ]
2897- }
2898- }
2899- ],
2900- "type": "table"
2901- },
2902- {
2903- "datasource": "prometheus - Juju generated source",
2904- "fieldConfig": {
2905- "defaults": {
2906- "color": {
2907- "mode": "thresholds"
2908- },
2909- "custom": {
2910- "align": null,
2911- "displayMode": "auto",
2912- "filterable": false,
2913- "width": 100
2914- },
2915- "mappings": [],
2916- "thresholds": {
2917- "mode": "absolute",
2918- "steps": []
2919- }
2920- },
2921- "overrides": [
2922- {
2923- "matcher": {
2924- "id": "byName",
2925- "options": "Value #A"
2926- },
2927- "properties": [
2928- {
2929- "id": "displayName",
2930- "value": "N° VMs"
2931- }
2932- ]
2933- },
2934- {
2935- "matcher": {
2936- "id": "byName",
2937- "options": "Value #B"
2938- },
2939- "properties": [
2940- {
2941- "id": "displayName",
2942- "value": "Cores in Use"
2943- }
2944- ]
2945- },
2946- {
2947- "matcher": {
2948- "id": "byName",
2949- "options": "Value #C"
2950- },
2951- "properties": [
2952- {
2953- "id": "displayName",
2954- "value": "Cores Reserved"
2955- }
2956- ]
2957- },
2958- {
2959- "matcher": {
2960- "id": "byName",
2961- "options": "Value #D"
2962- },
2963- "properties": [
2964- {
2965- "id": "displayName",
2966- "value": "Cores Limit"
2967- }
2968- ]
2969- },
2970- {
2971- "matcher": {
2972- "id": "byName",
2973- "options": "Value #E"
2974- },
2975- "properties": [
2976- {
2977- "id": "displayName",
2978- "value": "Cores Util"
2979- },
2980- {
2981- "id": "unit",
2982- "value": "percent"
2983- },
2984- {
2985- "id": "custom.displayMode",
2986- "value": "color-background"
2987- },
2988- {
2989- "id": "thresholds",
2990- "value": {
2991- "mode": "absolute",
2992- "steps": [
2993- {
2994- "color": "green",
2995- "value": null
2996- },
2997- {
2998- "color": "orange",
2999- "value": 80
3000- },
3001- {
3002- "color": "red",
3003- "value": 90
3004- }
3005- ]
3006+ "type":"table"
3007+ },
3008+ {
3009+ "datasource":"prometheus - Juju generated source",
3010+ "fieldConfig":{
3011+ "defaults":{
3012+ "color":{
3013+ "mode":"thresholds"
3014+ },
3015+ "custom":{
3016+ "align":null,
3017+ "displayMode":"auto",
3018+ "filterable":false,
3019+ "width":100
3020+ },
3021+ "mappings":[
3022+
3023+ ],
3024+ "thresholds":{
3025+ "mode":"absolute",
3026+ "steps":[
3027+
3028+ ]
3029 }
3030- }
3031- ]
3032- },
3033- {
3034- "matcher": {
3035- "id": "byName",
3036- "options": "Value #F"
3037- },
3038- "properties": [
3039- {
3040- "id": "displayName",
3041- "value": "VMs in Use"
3042- }
3043- ]
3044- },
3045- {
3046- "matcher": {
3047- "id": "byName",
3048- "options": "Value #G"
3049- },
3050- "properties": [
3051- {
3052- "id": "displayName",
3053- "value": "VMs Reserved"
3054- }
3055- ]
3056- },
3057- {
3058- "matcher": {
3059- "id": "byName",
3060- "options": "Value #H"
3061- },
3062- "properties": [
3063- {
3064- "id": "displayName",
3065- "value": "VMs Limit"
3066- }
3067- ]
3068- },
3069- {
3070- "matcher": {
3071- "id": "byName",
3072- "options": "Value #I"
3073- },
3074- "properties": [
3075- {
3076- "id": "displayName",
3077- "value": "VMs Util"
3078- },
3079- {
3080- "id": "unit",
3081- "value": "percent"
3082- },
3083- {
3084- "id": "custom.displayMode",
3085- "value": "color-background"
3086- },
3087- {
3088- "id": "thresholds",
3089- "value": {
3090- "mode": "absolute",
3091- "steps": [
3092- {
3093- "color": "green",
3094- "value": null
3095- },
3096- {
3097- "color": "orange",
3098- "value": 80
3099- },
3100- {
3101- "color": "red",
3102- "value": 90
3103- }
3104- ]
3105+ },
3106+ "overrides":[
3107+ {
3108+ "matcher":{
3109+ "id":"byName",
3110+ "options":"Value #A"
3111+ },
3112+ "properties":[
3113+ {
3114+ "id":"displayName",
3115+ "value":"N° VMs"
3116+ }
3117+ ]
3118+ },
3119+ {
3120+ "matcher":{
3121+ "id":"byName",
3122+ "options":"Value #B"
3123+ },
3124+ "properties":[
3125+ {
3126+ "id":"displayName",
3127+ "value":"Cores in Use"
3128+ }
3129+ ]
3130+ },
3131+ {
3132+ "matcher":{
3133+ "id":"byName",
3134+ "options":"Value #C"
3135+ },
3136+ "properties":[
3137+ {
3138+ "id":"displayName",
3139+ "value":"Cores Reserved"
3140+ }
3141+ ]
3142+ },
3143+ {
3144+ "matcher":{
3145+ "id":"byName",
3146+ "options":"Value #D"
3147+ },
3148+ "properties":[
3149+ {
3150+ "id":"displayName",
3151+ "value":"Cores Limit"
3152+ }
3153+ ]
3154+ },
3155+ {
3156+ "matcher":{
3157+ "id":"byName",
3158+ "options":"Value #E"
3159+ },
3160+ "properties":[
3161+ {
3162+ "id":"displayName",
3163+ "value":"Cores Util"
3164+ },
3165+ {
3166+ "id":"unit",
3167+ "value":"percent"
3168+ },
3169+ {
3170+ "id":"custom.displayMode",
3171+ "value":"color-background"
3172+ },
3173+ {
3174+ "id":"thresholds",
3175+ "value":{
3176+ "mode":"absolute",
3177+ "steps":[
3178+ {
3179+ "color":"green",
3180+ "value":null
3181+ },
3182+ {
3183+ "color":"orange",
3184+ "value":80
3185+ },
3186+ {
3187+ "color":"red",
3188+ "value":90
3189+ }
3190+ ]
3191+ }
3192+ }
3193+ ]
3194+ },
3195+ {
3196+ "matcher":{
3197+ "id":"byName",
3198+ "options":"Value #F"
3199+ },
3200+ "properties":[
3201+ {
3202+ "id":"displayName",
3203+ "value":"VMs in Use"
3204+ }
3205+ ]
3206+ },
3207+ {
3208+ "matcher":{
3209+ "id":"byName",
3210+ "options":"Value #G"
3211+ },
3212+ "properties":[
3213+ {
3214+ "id":"displayName",
3215+ "value":"VMs Reserved"
3216+ }
3217+ ]
3218+ },
3219+ {
3220+ "matcher":{
3221+ "id":"byName",
3222+ "options":"Value #H"
3223+ },
3224+ "properties":[
3225+ {
3226+ "id":"displayName",
3227+ "value":"VMs Limit"
3228+ }
3229+ ]
3230+ },
3231+ {
3232+ "matcher":{
3233+ "id":"byName",
3234+ "options":"Value #I"
3235+ },
3236+ "properties":[
3237+ {
3238+ "id":"displayName",
3239+ "value":"VMs Util"
3240+ },
3241+ {
3242+ "id":"unit",
3243+ "value":"percent"
3244+ },
3245+ {
3246+ "id":"custom.displayMode",
3247+ "value":"color-background"
3248+ },
3249+ {
3250+ "id":"thresholds",
3251+ "value":{
3252+ "mode":"absolute",
3253+ "steps":[
3254+ {
3255+ "color":"green",
3256+ "value":null
3257+ },
3258+ {
3259+ "color":"orange",
3260+ "value":80
3261+ },
3262+ {
3263+ "color":"red",
3264+ "value":90
3265+ }
3266+ ]
3267+ }
3268+ }
3269+ ]
3270+ },
3271+ {
3272+ "matcher":{
3273+ "id":"byName",
3274+ "options":"Value #J"
3275+ },
3276+ "properties":[
3277+ {
3278+ "id":"displayName",
3279+ "value":"Mem In Use"
3280+ },
3281+ {
3282+ "id":"unit",
3283+ "value":"mbytes"
3284+ }
3285+ ]
3286+ },
3287+ {
3288+ "matcher":{
3289+ "id":"byName",
3290+ "options":"Value #K"
3291+ },
3292+ "properties":[
3293+ {
3294+ "id":"displayName",
3295+ "value":"Mem Reserved"
3296+ }
3297+ ]
3298+ },
3299+ {
3300+ "matcher":{
3301+ "id":"byName",
3302+ "options":"Value #L"
3303+ },
3304+ "properties":[
3305+ {
3306+ "id":"displayName",
3307+ "value":"Mem Limit"
3308+ },
3309+ {
3310+ "id":"unit",
3311+ "value":"mbytes"
3312+ }
3313+ ]
3314+ },
3315+ {
3316+ "matcher":{
3317+ "id":"byName",
3318+ "options":"Value #M"
3319+ },
3320+ "properties":[
3321+ {
3322+ "id":"displayName",
3323+ "value":"Mem Util"
3324+ },
3325+ {
3326+ "id":"unit",
3327+ "value":"percent"
3328+ },
3329+ {
3330+ "id":"custom.displayMode",
3331+ "value":"color-background"
3332+ },
3333+ {
3334+ "id":"thresholds",
3335+ "value":{
3336+ "mode":"absolute",
3337+ "steps":[
3338+ {
3339+ "color":"green",
3340+ "value":null
3341+ },
3342+ {
3343+ "color":"orange",
3344+ "value":80
3345+ },
3346+ {
3347+ "color":"red",
3348+ "value":90
3349+ }
3350+ ]
3351+ }
3352+ }
3353+ ]
3354+ },
3355+ {
3356+ "matcher":{
3357+ "id":"byName",
3358+ "options":"Value #N"
3359+ },
3360+ "properties":[
3361+ {
3362+ "id":"displayName",
3363+ "value":"Disks in Use"
3364+ }
3365+ ]
3366+ },
3367+ {
3368+ "matcher":{
3369+ "id":"byName",
3370+ "options":"Value #O"
3371+ },
3372+ "properties":[
3373+ {
3374+ "id":"displayName",
3375+ "value":"Disks Reserv."
3376+ }
3377+ ]
3378+ },
3379+ {
3380+ "matcher":{
3381+ "id":"byName",
3382+ "options":"Value #P"
3383+ },
3384+ "properties":[
3385+ {
3386+ "id":"displayName",
3387+ "value":"Disks Limit"
3388+ }
3389+ ]
3390+ },
3391+ {
3392+ "matcher":{
3393+ "id":"byName",
3394+ "options":"Value #Q"
3395+ },
3396+ "properties":[
3397+ {
3398+ "id":"displayName",
3399+ "value":"Disks Util"
3400+ },
3401+ {
3402+ "id":"custom.displayMode",
3403+ "value":"color-background"
3404+ },
3405+ {
3406+ "id":"unit",
3407+ "value":"percent"
3408+ },
3409+ {
3410+ "id":"thresholds",
3411+ "value":{
3412+ "mode":"absolute",
3413+ "steps":[
3414+ {
3415+ "color":"green",
3416+ "value":null
3417+ },
3418+ {
3419+ "color":"orange",
3420+ "value":80
3421+ },
3422+ {
3423+ "color":"red",
3424+ "value":90
3425+ }
3426+ ]
3427+ }
3428+ }
3429+ ]
3430+ },
3431+ {
3432+ "matcher":{
3433+ "id":"byName",
3434+ "options":"Value #R"
3435+ },
3436+ "properties":[
3437+ {
3438+ "id":"displayName",
3439+ "value":"GBs in Use"
3440+ },
3441+ {
3442+ "id":"unit",
3443+ "value":"gbytes"
3444+ }
3445+ ]
3446+ },
3447+ {
3448+ "matcher":{
3449+ "id":"byName",
3450+ "options":"Value #S"
3451+ },
3452+ "properties":[
3453+ {
3454+ "id":"displayName",
3455+ "value":"GBs Reserv."
3456+ },
3457+ {
3458+ "id":"unit",
3459+ "value":"gbytes"
3460+ }
3461+ ]
3462+ },
3463+ {
3464+ "matcher":{
3465+ "id":"byName",
3466+ "options":"Value #T"
3467+ },
3468+ "properties":[
3469+ {
3470+ "id":"displayName",
3471+ "value":"GBs Limit"
3472+ },
3473+ {
3474+ "id":"unit",
3475+ "value":"gbytes"
3476+ }
3477+ ]
3478+ },
3479+ {
3480+ "matcher":{
3481+ "id":"byName",
3482+ "options":"Value #U"
3483+ },
3484+ "properties":[
3485+ {
3486+ "id":"displayName",
3487+ "value":"GBs Util"
3488+ },
3489+ {
3490+ "id":"unit",
3491+ "value":"percent"
3492+ },
3493+ {
3494+ "id":"custom.displayMode",
3495+ "value":"color-background"
3496+ },
3497+ {
3498+ "id":"thresholds",
3499+ "value":{
3500+ "mode":"absolute",
3501+ "steps":[
3502+ {
3503+ "color":"green",
3504+ "value":null
3505+ },
3506+ {
3507+ "color":"orange",
3508+ "value":80
3509+ },
3510+ {
3511+ "color":"red",
3512+ "value":90
3513+ }
3514+ ]
3515+ }
3516+ }
3517+ ]
3518+ },
3519+ {
3520+ "matcher":{
3521+ "id":"byName",
3522+ "options":"Value #V"
3523+ },
3524+ "properties":[
3525+ {
3526+ "id":"displayName",
3527+ "value":"FIPs in Use"
3528+ }
3529+ ]
3530+ },
3531+ {
3532+ "matcher":{
3533+ "id":"byName",
3534+ "options":"Value #W"
3535+ },
3536+ "properties":[
3537+ {
3538+ "id":"displayName",
3539+ "value":"FIPs Reserv."
3540+ }
3541+ ]
3542+ },
3543+ {
3544+ "matcher":{
3545+ "id":"byName",
3546+ "options":"Value #X"
3547+ },
3548+ "properties":[
3549+ {
3550+ "id":"displayName",
3551+ "value":"FIPs Limit"
3552+ }
3553+ ]
3554+ },
3555+ {
3556+ "matcher":{
3557+ "id":"byName",
3558+ "options":"Value #Y"
3559+ },
3560+ "properties":[
3561+ {
3562+ "id":"displayName",
3563+ "value":"FIPs Util"
3564+ },
3565+ {
3566+ "id":"unit",
3567+ "value":"percent"
3568+ },
3569+ {
3570+ "id":"custom.displayMode",
3571+ "value":"color-background"
3572+ },
3573+ {
3574+ "id":"thresholds",
3575+ "value":{
3576+ "mode":"absolute",
3577+ "steps":[
3578+ {
3579+ "color":"green",
3580+ "value":null
3581+ },
3582+ {
3583+ "color":"orange",
3584+ "value":80
3585+ },
3586+ {
3587+ "color":"red",
3588+ "value":90
3589+ }
3590+ ]
3591+ }
3592+ }
3593+ ]
3594+ },
3595+ {
3596+ "matcher":{
3597+ "id":"byName",
3598+ "options":"project"
3599+ },
3600+ "properties":[
3601+ {
3602+ "id":"custom.width",
3603+ "value":364
3604+ }
3605+ ]
3606 }
3607- }
3608- ]
3609- },
3610- {
3611- "matcher": {
3612- "id": "byName",
3613- "options": "Value #J"
3614- },
3615- "properties": [
3616- {
3617- "id": "displayName",
3618- "value": "Mem In Use"
3619- },
3620- {
3621- "id": "unit",
3622- "value": "mbytes"
3623- }
3624- ]
3625- },
3626- {
3627- "matcher": {
3628- "id": "byName",
3629- "options": "Value #K"
3630- },
3631- "properties": [
3632- {
3633- "id": "displayName",
3634- "value": "Mem Reserved"
3635- }
3636- ]
3637- },
3638- {
3639- "matcher": {
3640- "id": "byName",
3641- "options": "Value #L"
3642- },
3643- "properties": [
3644- {
3645- "id": "displayName",
3646- "value": "Mem Limit"
3647- },
3648- {
3649- "id": "unit",
3650- "value": "mbytes"
3651- }
3652- ]
3653- },
3654- {
3655- "matcher": {
3656- "id": "byName",
3657- "options": "Value #M"
3658- },
3659- "properties": [
3660- {
3661- "id": "displayName",
3662- "value": "Mem Util"
3663- },
3664- {
3665- "id": "unit",
3666- "value": "percent"
3667- },
3668- {
3669- "id": "custom.displayMode",
3670- "value": "color-background"
3671- },
3672- {
3673- "id": "thresholds",
3674- "value": {
3675- "mode": "absolute",
3676- "steps": [
3677- {
3678- "color": "green",
3679- "value": null
3680- },
3681- {
3682- "color": "orange",
3683- "value": 80
3684- },
3685- {
3686- "color": "red",
3687- "value": 90
3688- }
3689- ]
3690+ ]
3691+ },
3692+ "gridPos":{
3693+ "h":10,
3694+ "w":24,
3695+ "x":0,
3696+ "y":24
3697+ },
3698+ "id":178,
3699+ "options":{
3700+ "showHeader":true,
3701+ "sortBy":[
3702+ {
3703+ "desc":true,
3704+ "displayName":"VMs Util"
3705 }
3706- }
3707- ]
3708- },
3709- {
3710- "matcher": {
3711- "id": "byName",
3712- "options": "Value #N"
3713- },
3714- "properties": [
3715- {
3716- "id": "displayName",
3717- "value": "Disks in Use"
3718- }
3719- ]
3720- },
3721- {
3722- "matcher": {
3723- "id": "byName",
3724- "options": "Value #O"
3725- },
3726- "properties": [
3727- {
3728- "id": "displayName",
3729- "value": "Disks Reserv."
3730- }
3731- ]
3732- },
3733- {
3734- "matcher": {
3735- "id": "byName",
3736- "options": "Value #P"
3737- },
3738- "properties": [
3739- {
3740- "id": "displayName",
3741- "value": "Disks Limit"
3742- }
3743- ]
3744- },
3745- {
3746- "matcher": {
3747- "id": "byName",
3748- "options": "Value #Q"
3749- },
3750- "properties": [
3751- {
3752- "id": "displayName",
3753- "value": "Disks Util"
3754- },
3755- {
3756- "id": "custom.displayMode",
3757- "value": "color-background"
3758- },
3759- {
3760- "id": "unit",
3761- "value": "percent"
3762- },
3763- {
3764- "id": "thresholds",
3765- "value": {
3766- "mode": "absolute",
3767- "steps": [
3768- {
3769- "color": "green",
3770- "value": null
3771- },
3772- {
3773- "color": "orange",
3774- "value": 80
3775- },
3776- {
3777- "color": "red",
3778- "value": 90
3779- }
3780- ]
3781+ ]
3782+ },
3783+ "pluginVersion":"7.4.1",
3784+ "targets":[
3785+ {
3786+ "expr":"label_replace(sum by (tenant)(nova_instances{cloud=~\"$cloud\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3787+ "format":"table",
3788+ "hide":false,
3789+ "instant":true,
3790+ "interval":"",
3791+ "legendFormat":"{{project}}",
3792+ "refId":"A"
3793+ },
3794+ {
3795+ "expr":"label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3796+ "format":"table",
3797+ "hide":false,
3798+ "instant":true,
3799+ "interval":"",
3800+ "legendFormat":"{{project}}",
3801+ "refId":"B"
3802+ },
3803+ {
3804+ "expr":"label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3805+ "format":"table",
3806+ "hide":false,
3807+ "instant":true,
3808+ "interval":"",
3809+ "legendFormat":"{{project}}",
3810+ "refId":"C"
3811+ },
3812+ {
3813+ "expr":"label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3814+ "format":"table",
3815+ "hide":false,
3816+ "instant":true,
3817+ "interval":"",
3818+ "legendFormat":"{{project}}",
3819+ "refId":"D"
3820+ },
3821+ {
3822+ "expr":"label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
3823+ "format":"table",
3824+ "hide":false,
3825+ "instant":true,
3826+ "interval":"",
3827+ "legendFormat":"{{project}}",
3828+ "refId":"E"
3829+ },
3830+ {
3831+ "expr":"label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3832+ "format":"table",
3833+ "hide":false,
3834+ "instant":true,
3835+ "interval":"",
3836+ "legendFormat":"{{project}}",
3837+ "refId":"F"
3838+ },
3839+ {
3840+ "expr":"label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3841+ "format":"table",
3842+ "hide":false,
3843+ "instant":true,
3844+ "interval":"",
3845+ "legendFormat":"{{project}}",
3846+ "refId":"G"
3847+ },
3848+ {
3849+ "expr":"label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3850+ "format":"table",
3851+ "hide":false,
3852+ "instant":true,
3853+ "interval":"",
3854+ "legendFormat":"{{project}}",
3855+ "refId":"H"
3856+ },
3857+ {
3858+ "expr":"label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
3859+ "format":"table",
3860+ "hide":false,
3861+ "instant":true,
3862+ "interval":"",
3863+ "legendFormat":"{{project}}",
3864+ "refId":"I"
3865+ },
3866+ {
3867+ "expr":"label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3868+ "format":"table",
3869+ "hide":false,
3870+ "instant":true,
3871+ "interval":"",
3872+ "legendFormat":"{{project}}",
3873+ "refId":"J"
3874+ },
3875+ {
3876+ "expr":"label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3877+ "format":"table",
3878+ "hide":false,
3879+ "instant":true,
3880+ "interval":"",
3881+ "legendFormat":"{{project}}",
3882+ "refId":"K"
3883+ },
3884+ {
3885+ "expr":"label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3886+ "format":"table",
3887+ "hide":false,
3888+ "instant":true,
3889+ "interval":"",
3890+ "legendFormat":"{{project}}",
3891+ "refId":"L"
3892+ },
3893+ {
3894+ "expr":"label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
3895+ "format":"table",
3896+ "hide":false,
3897+ "instant":true,
3898+ "interval":"",
3899+ "legendFormat":"{{project}}",
3900+ "refId":"M"
3901+ },
3902+ {
3903+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3904+ "format":"table",
3905+ "hide":false,
3906+ "instant":true,
3907+ "interval":"",
3908+ "legendFormat":"{{project}}",
3909+ "refId":"N"
3910+ },
3911+ {
3912+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3913+ "format":"table",
3914+ "hide":false,
3915+ "instant":true,
3916+ "interval":"",
3917+ "legendFormat":"{{project}}",
3918+ "refId":"O"
3919+ },
3920+ {
3921+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3922+ "format":"table",
3923+ "hide":false,
3924+ "instant":true,
3925+ "interval":"",
3926+ "legendFormat":"{{project}}",
3927+ "refId":"P"
3928+ },
3929+ {
3930+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
3931+ "format":"table",
3932+ "hide":false,
3933+ "instant":true,
3934+ "interval":"",
3935+ "legendFormat":"{{project}}",
3936+ "refId":"Q"
3937+ },
3938+ {
3939+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3940+ "format":"table",
3941+ "hide":false,
3942+ "instant":true,
3943+ "interval":"",
3944+ "legendFormat":"{{project}}",
3945+ "refId":"R"
3946+ },
3947+ {
3948+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3949+ "format":"table",
3950+ "hide":false,
3951+ "instant":true,
3952+ "interval":"",
3953+ "legendFormat":"{{project}}",
3954+ "refId":"S"
3955+ },
3956+ {
3957+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3958+ "format":"table",
3959+ "hide":false,
3960+ "instant":true,
3961+ "interval":"",
3962+ "legendFormat":"{{project}}",
3963+ "refId":"T"
3964+ },
3965+ {
3966+ "expr":"label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
3967+ "format":"table",
3968+ "hide":false,
3969+ "instant":true,
3970+ "interval":"",
3971+ "legendFormat":"{{project}}",
3972+ "refId":"U"
3973+ },
3974+ {
3975+ "expr":"label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3976+ "format":"table",
3977+ "hide":false,
3978+ "instant":true,
3979+ "interval":"",
3980+ "legendFormat":"{{project}}",
3981+ "refId":"V"
3982+ },
3983+ {
3984+ "expr":"label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3985+ "format":"table",
3986+ "hide":false,
3987+ "instant":true,
3988+ "interval":"",
3989+ "legendFormat":"{{project}}",
3990+ "refId":"W"
3991+ },
3992+ {
3993+ "expr":"label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
3994+ "format":"table",
3995+ "hide":false,
3996+ "instant":true,
3997+ "interval":"",
3998+ "legendFormat":"{{project}}",
3999+ "refId":"X"
4000+ },
4001+ {
4002+ "expr":"label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4003+ "format":"table",
4004+ "hide":false,
4005+ "instant":true,
4006+ "interval":"",
4007+ "legendFormat":"{{project}}",
4008+ "refId":"Y"
4009+ }
4010+ ],
4011+ "timeFrom":null,
4012+ "timeShift":null,
4013+ "title":"Projects stats",
4014+ "transformations":[
4015+ {
4016+ "id":"merge",
4017+ "options":{
4018+
4019 }
4020- }
4021- ]
4022- },
4023- {
4024- "matcher": {
4025- "id": "byName",
4026- "options": "Value #R"
4027- },
4028- "properties": [
4029- {
4030- "id": "displayName",
4031- "value": "GBs in Use"
4032- },
4033- {
4034- "id": "unit",
4035- "value": "gbytes"
4036- }
4037- ]
4038- },
4039- {
4040- "matcher": {
4041- "id": "byName",
4042- "options": "Value #S"
4043- },
4044- "properties": [
4045- {
4046- "id": "displayName",
4047- "value": "GBs Reserv."
4048- },
4049- {
4050- "id": "unit",
4051- "value": "gbytes"
4052- }
4053- ]
4054- },
4055- {
4056- "matcher": {
4057- "id": "byName",
4058- "options": "Value #T"
4059- },
4060- "properties": [
4061- {
4062- "id": "displayName",
4063- "value": "GBs Limit"
4064- },
4065- {
4066- "id": "unit",
4067- "value": "gbytes"
4068- }
4069- ]
4070- },
4071- {
4072- "matcher": {
4073- "id": "byName",
4074- "options": "Value #U"
4075- },
4076- "properties": [
4077- {
4078- "id": "displayName",
4079- "value": "GBs Util"
4080- },
4081- {
4082- "id": "unit",
4083- "value": "percent"
4084- },
4085- {
4086- "id": "custom.displayMode",
4087- "value": "color-background"
4088- },
4089- {
4090- "id": "thresholds",
4091- "value": {
4092- "mode": "absolute",
4093- "steps": [
4094- {
4095- "color": "green",
4096- "value": null
4097- },
4098- {
4099- "color": "orange",
4100- "value": 80
4101- },
4102- {
4103- "color": "red",
4104- "value": 90
4105- }
4106- ]
4107+ },
4108+ {
4109+ "id":"organize",
4110+ "options":{
4111+ "excludeByName":{
4112+ "Time":true,
4113+ "Value #A":true,
4114+ "tenant":true
4115+ },
4116+ "indexByName":{
4117+ "Time":0,
4118+ "Value #A":3,
4119+ "Value #B":13,
4120+ "Value #C":14,
4121+ "Value #D":15,
4122+ "Value #E":5,
4123+ "Value #F":10,
4124+ "Value #G":11,
4125+ "Value #H":12,
4126+ "Value #I":4,
4127+ "Value #J":16,
4128+ "Value #K":17,
4129+ "Value #L":18,
4130+ "Value #M":6,
4131+ "Value #N":19,
4132+ "Value #O":20,
4133+ "Value #P":21,
4134+ "Value #Q":7,
4135+ "Value #R":22,
4136+ "Value #S":23,
4137+ "Value #T":24,
4138+ "Value #U":8,
4139+ "Value #V":25,
4140+ "Value #W":26,
4141+ "Value #X":27,
4142+ "Value #Y":9,
4143+ "project":1,
4144+ "tenant":2
4145+ },
4146+ "renameByName":{
4147+
4148+ }
4149 }
4150- }
4151- ]
4152- },
4153- {
4154- "matcher": {
4155- "id": "byName",
4156- "options": "Value #V"
4157- },
4158- "properties": [
4159- {
4160- "id": "displayName",
4161- "value": "FIPs in Use"
4162- }
4163- ]
4164- },
4165- {
4166- "matcher": {
4167- "id": "byName",
4168- "options": "Value #W"
4169- },
4170- "properties": [
4171- {
4172- "id": "displayName",
4173- "value": "FIPs Reserv."
4174- }
4175- ]
4176- },
4177- {
4178- "matcher": {
4179- "id": "byName",
4180- "options": "Value #X"
4181- },
4182- "properties": [
4183- {
4184- "id": "displayName",
4185- "value": "FIPs Limit"
4186- }
4187- ]
4188- },
4189- {
4190- "matcher": {
4191- "id": "byName",
4192- "options": "Value #Y"
4193- },
4194- "properties": [
4195- {
4196- "id": "displayName",
4197- "value": "FIPs Util"
4198- },
4199- {
4200- "id": "unit",
4201- "value": "percent"
4202- },
4203- {
4204- "id": "custom.displayMode",
4205- "value": "color-background"
4206- },
4207- {
4208- "id": "thresholds",
4209- "value": {
4210- "mode": "absolute",
4211- "steps": [
4212- {
4213- "color": "green",
4214- "value": null
4215- },
4216- {
4217- "color": "orange",
4218- "value": 80
4219- },
4220- {
4221- "color": "red",
4222- "value": 90
4223- }
4224- ]
4225+ },
4226+ {
4227+ "id":"sortBy",
4228+ "options":{
4229+ "fields":{
4230+
4231+ },
4232+ "sort":[
4233+ {
4234+ "desc":true,
4235+ "field":"Value #I"
4236+ }
4237+ ]
4238 }
4239- }
4240- ]
4241+ }
4242+ ],
4243+ "type":"table"
4244+ },
4245+ {
4246+ "aliasColors":{
4247+
4248+ },
4249+ "bars":false,
4250+ "dashLength":10,
4251+ "dashes":false,
4252+ "datasource":"prometheus - Juju generated source",
4253+ "editable":true,
4254+ "error":false,
4255+ "fieldConfig":{
4256+ "defaults":{
4257+ "custom":{
4258+
4259+ }
4260+ },
4261+ "overrides":[
4262+
4263+ ]
4264+ },
4265+ "fill":1,
4266+ "fillGradient":0,
4267+ "grid":{
4268+
4269+ },
4270+ "gridPos":{
4271+ "h":6,
4272+ "w":12,
4273+ "x":0,
4274+ "y":34
4275+ },
4276+ "height":"200px",
4277+ "hiddenSeries":false,
4278+ "id":14,
4279+ "legend":{
4280+ "avg":false,
4281+ "current":false,
4282+ "max":false,
4283+ "min":false,
4284+ "show":true,
4285+ "total":false,
4286+ "values":false
4287+ },
4288+ "lines":true,
4289+ "linewidth":2,
4290+ "links":[
4291+
4292+ ],
4293+ "nullPointMode":"connected",
4294+ "options":{
4295+ "alertThreshold":true
4296+ },
4297+ "percentage":false,
4298+ "pluginVersion":"7.4.1",
4299+ "pointradius":5,
4300+ "points":false,
4301+ "renderer":"flot",
4302+ "seriesOverrides":[
4303+
4304+ ],
4305+ "spaceLength":10,
4306+ "stack":true,
4307+ "steppedLine":false,
4308+ "targets":[
4309+ {
4310+ "expr":"(sum(hypervisor_disk_gbs_total{aggregate=~\".+\",cloud=\"$cloud\",nova_service_status=\"enabled\"} * on(cloud) group_left openstack_allocation_ratio{cloud=\"$cloud\",resource=\"disk\"}) by(aggregate)) - (sum(hypervisor_disk_gbs_used{aggregate=~\".+\",cloud=\"$cloud\",nova_service_status=\"enabled\"}) by(aggregate))",
4311+ "intervalFactor":2,
4312+ "legendFormat":"{{aggregate}}",
4313+ "refId":"A",
4314+ "step":240
4315+ }
4316+ ],
4317+ "thresholds":[
4318+
4319+ ],
4320+ "timeFrom":null,
4321+ "timeRegions":[
4322+
4323+ ],
4324+ "timeShift":null,
4325+ "title":"Free Disk by aggregate",
4326+ "tooltip":{
4327+ "msResolution":true,
4328+ "shared":true,
4329+ "sort":0,
4330+ "value_type":"individual"
4331+ },
4332+ "type":"graph",
4333+ "xaxis":{
4334+ "buckets":null,
4335+ "mode":"time",
4336+ "name":null,
4337+ "show":true,
4338+ "values":[
4339+
4340+ ]
4341+ },
4342+ "yaxes":[
4343+ {
4344+ "format":"gbytes",
4345+ "label":null,
4346+ "logBase":1,
4347+ "max":null,
4348+ "min":0,
4349+ "show":true
4350+ },
4351+ {
4352+ "format":"short",
4353+ "label":null,
4354+ "logBase":1,
4355+ "max":null,
4356+ "min":null,
4357+ "show":false
4358+ }
4359+ ],
4360+ "yaxis":{
4361+ "align":false,
4362+ "alignLevel":null
4363 }
4364- ]
4365- },
4366- "gridPos": {
4367- "h": 10,
4368- "w": 24,
4369- "x": 0,
4370- "y": 24
4371- },
4372- "id": 178,
4373- "options": {
4374- "showHeader": true,
4375- "sortBy": [
4376- {
4377- "desc": true,
4378- "displayName": "VMs Util"
4379+ },
4380+ {
4381+ "aliasColors":{
4382+
4383+ },
4384+ "bars":false,
4385+ "dashLength":10,
4386+ "dashes":false,
4387+ "datasource":"prometheus - Juju generated source",
4388+ "editable":true,
4389+ "error":false,
4390+ "fieldConfig":{
4391+ "defaults":{
4392+ "custom":{
4393+
4394+ }
4395+ },
4396+ "overrides":[
4397+
4398+ ]
4399+ },
4400+ "fill":1,
4401+ "fillGradient":0,
4402+ "grid":{
4403+
4404+ },
4405+ "gridPos":{
4406+ "h":6,
4407+ "w":12,
4408+ "x":12,
4409+ "y":34
4410+ },
4411+ "height":"200px",
4412+ "hiddenSeries":false,
4413+ "id":16,
4414+ "legend":{
4415+ "avg":false,
4416+ "current":false,
4417+ "max":false,
4418+ "min":false,
4419+ "show":true,
4420+ "total":false,
4421+ "values":false
4422+ },
4423+ "lines":true,
4424+ "linewidth":2,
4425+ "links":[
4426+
4427+ ],
4428+ "nullPointMode":"connected",
4429+ "options":{
4430+ "alertThreshold":true
4431+ },
4432+ "percentage":false,
4433+ "pluginVersion":"7.4.1",
4434+ "pointradius":5,
4435+ "points":false,
4436+ "renderer":"flot",
4437+ "seriesOverrides":[
4438+
4439+ ],
4440+ "spaceLength":10,
4441+ "stack":true,
4442+ "steppedLine":false,
4443+ "targets":[
4444+ {
4445+ "expr":"sum(hypervisor_running_vms{aggregate=~\".+\",cloud=\"$cloud\"}) by (aggregate)",
4446+ "intervalFactor":2,
4447+ "legendFormat":"{{aggregate}}",
4448+ "refId":"A",
4449+ "step":240
4450+ }
4451+ ],
4452+ "thresholds":[
4453+
4454+ ],
4455+ "timeFrom":null,
4456+ "timeRegions":[
4457+
4458+ ],
4459+ "timeShift":null,
4460+ "title":"Running VMs by aggregate",
4461+ "tooltip":{
4462+ "msResolution":true,
4463+ "shared":true,
4464+ "sort":0,
4465+ "value_type":"individual"
4466+ },
4467+ "type":"graph",
4468+ "xaxis":{
4469+ "buckets":null,
4470+ "mode":"time",
4471+ "name":null,
4472+ "show":true,
4473+ "values":[
4474+
4475+ ]
4476+ },
4477+ "yaxes":[
4478+ {
4479+ "format":"none",
4480+ "label":null,
4481+ "logBase":1,
4482+ "max":null,
4483+ "min":0,
4484+ "show":true
4485+ },
4486+ {
4487+ "format":"short",
4488+ "label":null,
4489+ "logBase":1,
4490+ "max":null,
4491+ "min":null,
4492+ "show":false
4493+ }
4494+ ],
4495+ "yaxis":{
4496+ "align":false,
4497+ "alignLevel":null
4498 }
4499- ]
4500- },
4501- "pluginVersion": "7.4.1",
4502- "targets": [
4503- {
4504- "expr": "label_replace(sum by (tenant)(nova_instances{cloud=~\"$cloud\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4505- "format": "table",
4506- "hide": false,
4507- "instant": true,
4508- "interval": "",
4509- "legendFormat": "{{project}}",
4510- "refId": "A"
4511- },
4512- {
4513- "expr": "label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4514- "format": "table",
4515- "hide": false,
4516- "instant": true,
4517- "interval": "",
4518- "legendFormat": "{{project}}",
4519- "refId": "B"
4520- },
4521- {
4522- "expr": "label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4523- "format": "table",
4524- "hide": false,
4525- "instant": true,
4526- "interval": "",
4527- "legendFormat": "{{project}}",
4528- "refId": "C"
4529- },
4530- {
4531- "expr": "label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4532- "format": "table",
4533- "hide": false,
4534- "instant": true,
4535- "interval": "",
4536- "legendFormat": "{{project}}",
4537- "refId": "D"
4538- },
4539- {
4540- "expr": "label_replace(sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_cores{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4541- "format": "table",
4542- "hide": false,
4543- "instant": true,
4544- "interval": "",
4545- "legendFormat": "{{project}}",
4546- "refId": "E"
4547- },
4548- {
4549- "expr": "label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4550- "format": "table",
4551- "hide": false,
4552- "instant": true,
4553- "interval": "",
4554- "legendFormat": "{{project}}",
4555- "refId": "F"
4556- },
4557- {
4558- "expr": "label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4559- "format": "table",
4560- "hide": false,
4561- "instant": true,
4562- "interval": "",
4563- "legendFormat": "{{project}}",
4564- "refId": "G"
4565- },
4566- {
4567- "expr": "label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4568- "format": "table",
4569- "hide": false,
4570- "instant": true,
4571- "interval": "",
4572- "legendFormat": "{{project}}",
4573- "refId": "H"
4574- },
4575- {
4576- "expr": "label_replace(sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_instances{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4577- "format": "table",
4578- "hide": false,
4579- "instant": true,
4580- "interval": "",
4581- "legendFormat": "{{project}}",
4582- "refId": "I"
4583- },
4584- {
4585- "expr": "label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4586- "format": "table",
4587- "hide": false,
4588- "instant": true,
4589- "interval": "",
4590- "legendFormat": "{{project}}",
4591- "refId": "J"
4592- },
4593- {
4594- "expr": "label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4595- "format": "table",
4596- "hide": false,
4597- "instant": true,
4598- "interval": "",
4599- "legendFormat": "{{project}}",
4600- "refId": "K"
4601- },
4602- {
4603- "expr": "label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4604- "format": "table",
4605- "hide": false,
4606- "instant": true,
4607- "interval": "",
4608- "legendFormat": "{{project}}",
4609- "refId": "L"
4610- },
4611- {
4612- "expr": "label_replace(sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_ram_mbs{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4613- "format": "table",
4614- "hide": false,
4615- "instant": true,
4616- "interval": "",
4617- "legendFormat": "{{project}}",
4618- "refId": "M"
4619- },
4620- {
4621- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4622- "format": "table",
4623- "hide": false,
4624- "instant": true,
4625- "interval": "",
4626- "legendFormat": "{{project}}",
4627- "refId": "N"
4628- },
4629- {
4630- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4631- "format": "table",
4632- "hide": false,
4633- "instant": true,
4634- "interval": "",
4635- "legendFormat": "{{project}}",
4636- "refId": "O"
4637- },
4638- {
4639- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4640- "format": "table",
4641- "hide": false,
4642- "instant": true,
4643- "interval": "",
4644- "legendFormat": "{{project}}",
4645- "refId": "P"
4646- },
4647- {
4648- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(cinder_quota_volume_disks{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4649- "format": "table",
4650- "hide": false,
4651- "instant": true,
4652- "interval": "",
4653- "legendFormat": "{{project}}",
4654- "refId": "Q"
4655- },
4656- {
4657- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4658- "format": "table",
4659- "hide": false,
4660- "instant": true,
4661- "interval": "",
4662- "legendFormat": "{{project}}",
4663- "refId": "R"
4664- },
4665- {
4666- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4667- "format": "table",
4668- "hide": false,
4669- "instant": true,
4670- "interval": "",
4671- "legendFormat": "{{project}}",
4672- "refId": "S"
4673- },
4674- {
4675- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4676- "format": "table",
4677- "hide": false,
4678- "instant": true,
4679- "interval": "",
4680- "legendFormat": "{{project}}",
4681- "refId": "T"
4682- },
4683- {
4684- "expr": "label_replace(sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(cinder_quota_volume_disk_gigabytes{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4685- "format": "table",
4686- "hide": false,
4687- "instant": true,
4688- "interval": "",
4689- "legendFormat": "{{project}}",
4690- "refId": "U"
4691- },
4692- {
4693- "expr": "label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"in_use\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4694- "format": "table",
4695- "hide": false,
4696- "instant": true,
4697- "interval": "",
4698- "legendFormat": "{{project}}",
4699- "refId": "V"
4700- },
4701- {
4702- "expr": "label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"reserved\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4703- "format": "table",
4704- "hide": false,
4705- "instant": true,
4706- "interval": "",
4707- "legendFormat": "{{project}}",
4708- "refId": "W"
4709- },
4710- {
4711- "expr": "label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"limit\"}), \"project\", \"$1\", \"tenant\", \"(.*)\")",
4712- "format": "table",
4713- "hide": false,
4714- "instant": true,
4715- "interval": "",
4716- "legendFormat": "{{project}}",
4717- "refId": "X"
4718- },
4719- {
4720- "expr": "label_replace(sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"in_use\"}) / (sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"limit\"}) - sum by (tenant)(nova_quota_floating_ips{cloud=~\"$cloud\", type=\"reserved\"}))* 100, \"project\", \"$1\", \"tenant\", \"(.*)\")",
4721- "format": "table",
4722- "hide": false,
4723- "instant": true,
4724- "interval": "",
4725- "legendFormat": "{{project}}",
4726- "refId": "Y"
4727- }
4728- ],
4729- "timeFrom": null,
4730- "timeShift": null,
4731- "title": "Projects stats",
4732- "transformations": [
4733- {
4734- "id": "merge",
4735- "options": {}
4736- },
4737- {
4738- "id": "organize",
4739- "options": {
4740- "excludeByName": {
4741- "Time": true,
4742- "Value #A": true,
4743- "tenant": true
4744- },
4745- "indexByName": {
4746- "Time": 0,
4747- "Value #A": 3,
4748- "Value #B": 13,
4749- "Value #C": 14,
4750- "Value #D": 15,
4751- "Value #E": 5,
4752- "Value #F": 10,
4753- "Value #G": 11,
4754- "Value #H": 12,
4755- "Value #I": 4,
4756- "Value #J": 16,
4757- "Value #K": 17,
4758- "Value #L": 18,
4759- "Value #M": 6,
4760- "Value #N": 19,
4761- "Value #O": 20,
4762- "Value #P": 21,
4763- "Value #Q": 7,
4764- "Value #R": 22,
4765- "Value #S": 23,
4766- "Value #T": 24,
4767- "Value #U": 8,
4768- "Value #V": 25,
4769- "Value #W": 26,
4770- "Value #X": 27,
4771- "Value #Y": 9,
4772- "project": 1,
4773- "tenant": 2
4774- },
4775- "renameByName": {}
4776+ },
4777+ {
4778+ "aliasColors":{
4779+
4780+ },
4781+ "bars":false,
4782+ "dashLength":10,
4783+ "dashes":false,
4784+ "datasource":"prometheus - Juju generated source",
4785+ "editable":true,
4786+ "error":false,
4787+ "fieldConfig":{
4788+ "defaults":{
4789+ "custom":{
4790+
4791+ }
4792+ },
4793+ "overrides":[
4794+
4795+ ]
4796+ },
4797+ "fill":0,
4798+ "fillGradient":0,
4799+ "grid":{
4800+
4801+ },
4802+ "gridPos":{
4803+ "h":7,
4804+ "w":12,
4805+ "x":0,
4806+ "y":40
4807+ },
4808+ "hiddenSeries":false,
4809+ "id":19,
4810+ "legend":{
4811+ "avg":false,
4812+ "current":false,
4813+ "max":false,
4814+ "min":false,
4815+ "show":true,
4816+ "total":false,
4817+ "values":false
4818+ },
4819+ "lines":true,
4820+ "linewidth":2,
4821+ "links":[
4822+
4823+ ],
4824+ "nullPointMode":"null as zero",
4825+ "options":{
4826+ "alertThreshold":true
4827+ },
4828+ "percentage":false,
4829+ "pluginVersion":"7.4.1",
4830+ "pointradius":5,
4831+ "points":false,
4832+ "renderer":"flot",
4833+ "seriesOverrides":[
4834+
4835+ ],
4836+ "spaceLength":10,
4837+ "stack":false,
4838+ "steppedLine":false,
4839+ "targets":[
4840+ {
4841+ "expr":"topk(10, nova_resources_disk_gbs{cloud=\"$cloud\"})",
4842+ "intervalFactor":2,
4843+ "legendFormat":"{{tenant}}",
4844+ "refId":"A",
4845+ "step":240
4846+ }
4847+ ],
4848+ "thresholds":[
4849+
4850+ ],
4851+ "timeFrom":null,
4852+ "timeRegions":[
4853+
4854+ ],
4855+ "timeShift":null,
4856+ "title":"Top disk projects",
4857+ "tooltip":{
4858+ "msResolution":false,
4859+ "shared":true,
4860+ "sort":0,
4861+ "value_type":"cumulative"
4862+ },
4863+ "type":"graph",
4864+ "xaxis":{
4865+ "buckets":null,
4866+ "mode":"time",
4867+ "name":null,
4868+ "show":true,
4869+ "values":[
4870+
4871+ ]
4872+ },
4873+ "yaxes":[
4874+ {
4875+ "format":"gbytes",
4876+ "label":null,
4877+ "logBase":1,
4878+ "max":null,
4879+ "min":null,
4880+ "show":true
4881+ },
4882+ {
4883+ "format":"short",
4884+ "label":null,
4885+ "logBase":1,
4886+ "max":null,
4887+ "min":null,
4888+ "show":false
4889+ }
4890+ ],
4891+ "yaxis":{
4892+ "align":false,
4893+ "alignLevel":null
4894 }
4895- },
4896- {
4897- "id": "sortBy",
4898- "options": {
4899- "fields": {},
4900- "sort": [
4901- {
4902- "desc": true,
4903- "field": "Value #I"
4904- }
4905- ]
4906+ },
4907+ {
4908+ "aliasColors":{
4909+
4910+ },
4911+ "bars":false,
4912+ "dashLength":10,
4913+ "dashes":false,
4914+ "datasource":"prometheus - Juju generated source",
4915+ "editable":true,
4916+ "error":false,
4917+ "fieldConfig":{
4918+ "defaults":{
4919+ "custom":{
4920+
4921+ }
4922+ },
4923+ "overrides":[
4924+
4925+ ]
4926+ },
4927+ "fill":0,
4928+ "fillGradient":0,
4929+ "grid":{
4930+
4931+ },
4932+ "gridPos":{
4933+ "h":7,
4934+ "w":12,
4935+ "x":12,
4936+ "y":40
4937+ },
4938+ "hiddenSeries":false,
4939+ "id":18,
4940+ "legend":{
4941+ "avg":false,
4942+ "current":false,
4943+ "max":false,
4944+ "min":false,
4945+ "show":true,
4946+ "total":false,
4947+ "values":false
4948+ },
4949+ "lines":true,
4950+ "linewidth":2,
4951+ "links":[
4952+
4953+ ],
4954+ "nullPointMode":"null as zero",
4955+ "options":{
4956+ "alertThreshold":true
4957+ },
4958+ "percentage":false,
4959+ "pluginVersion":"7.4.1",
4960+ "pointradius":5,
4961+ "points":false,
4962+ "renderer":"flot",
4963+ "seriesOverrides":[
4964+
4965+ ],
4966+ "spaceLength":10,
4967+ "stack":false,
4968+ "steppedLine":false,
4969+ "targets":[
4970+ {
4971+ "expr":"topk(10, nova_resources_vcpus{cloud=\"$cloud\"})",
4972+ "intervalFactor":2,
4973+ "legendFormat":"{{tenant}}",
4974+ "refId":"A",
4975+ "step":240
4976+ }
4977+ ],
4978+ "thresholds":[
4979+
4980+ ],
4981+ "timeFrom":null,
4982+ "timeRegions":[
4983+
4984+ ],
4985+ "timeShift":null,
4986+ "title":"Top vCPU projects",
4987+ "tooltip":{
4988+ "msResolution":false,
4989+ "shared":true,
4990+ "sort":0,
4991+ "value_type":"cumulative"
4992+ },
4993+ "type":"graph",
4994+ "xaxis":{
4995+ "buckets":null,
4996+ "mode":"time",
4997+ "name":null,
4998+ "show":true,
4999+ "values":[
5000+
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: