summaryrefslogtreecommitdiffstats
path: root/monitor/custom-dashboard.py
diff options
context:
space:
mode:
authorYu Yang (Gabriel) <Gabriel.yuyang@huawei.com>2018-04-02 04:08:13 +0000
committerGerrit Code Review <gerrit@opnfv.org>2018-04-02 04:08:14 +0000
commitc4a33d033497629b5e0b2ef1b269742eb26b0502 (patch)
tree351b35616cc50ac2eaf4d412846c7c639be3a2ac /monitor/custom-dashboard.py
parentd10c4644d44f707998c7f05dc72ec4913576b752 (diff)
parent5053b1c137d1d22678a416abbaf4dd4cce3e5285 (diff)
Merge "Grafana Dashboard customization script"
Diffstat (limited to 'monitor/custom-dashboard.py')
-rw-r--r--monitor/custom-dashboard.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/monitor/custom-dashboard.py b/monitor/custom-dashboard.py
new file mode 100644
index 00000000..48173f8e
--- /dev/null
+++ b/monitor/custom-dashboard.py
@@ -0,0 +1,31 @@
+##############################################################################
+# Copyright (c) 2018 Huawei Tech and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+import json
+
+def customize_query(filename, rowtitle, panelname, expr):
+ with open(filename, 'r+') as f:
+ data = json.load(f)
+ x = data['rows'] #this is an array of the rows of the dashboard
+ for y in x:
+ if y['title'] == rowtitle:
+ pan = y['panels']
+ for i in range(len(pan)-1) :
+ z = pan[i]
+ if z['title'] == panelname:
+ tar = z['targets']
+ for a in tar:
+ a['expr'] = expr
+ f.seek(0) # <--- reset file position to start
+ json.dump(data, f, indent=4)
+ f.truncate()
+
+customize_query("/home/opnfv/bottlenecks/monitor/custom-query-dashboard.json",
+ "Dashboard Row", "Memory Usage per Container", "Sample Prometheus Query")
+