mirror of
https://github.com/grafana/grafana.git
synced 2024-11-26 02:40:26 -06:00
1.5 KiB
1.5 KiB
page_title | page_description | page_keywords |
---|---|---|
Scripted dashboards | Scripted dashboards | grafana, scripted, guide, documentation |
Scripted Dashboards
If you have lots of metric names that change (new servers etc) in a defined pattern it is irritating to constantly have to create new dashboards.
With scripted dashboards you can dynamically create your dashboards using javascript. In the folder grafana install folder app/dashboards/ there is a file named scripted.js. This file contains an example of a scripted dashboard. You can access it by using the url:
http://grafana_url/#/dashboard/script/scripted.js?rows=3&name=myName
If you open scripted.js you can see how it reads url paramters from ARGS variable and then adds rows and panels.
Example
var rows = 1;
var seriesName = 'argName';
if(!_.isUndefined(ARGS.rows)) {
rows = parseInt(ARGS.rows, 10);
}
if(!_.isUndefined(ARGS.name)) {
seriesName = ARGS.name;
}
for (var i = 0; i < rows; i++) {
dashboard.rows.push({
title: 'Scripted Graph ' + i,
height: '300px',
panels: [
{
title: 'Events',
type: 'graph',
span: 12,
fill: 1,
linewidth: 2,
targets: [
{
'target': "randomWalk('" + seriesName + "')"
},
{
'target': "randomWalk('random walk2')"
}
],
}
]
});
}
return dashboard;
More examples
You can find more examples in app/dashboards/
directory of your grafana installation.