-
Notifications
You must be signed in to change notification settings - Fork 770
/
Copy pathdashboards.libsonnet
41 lines (37 loc) · 1.53 KB
/
dashboards.libsonnet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
local g = import 'g.libsonnet';
local dashboard = g.dashboard;
local row = g.panel.row;
local panels = import './panels.libsonnet';
local variables = import './variables.libsonnet';
local queries = import './queries.libsonnet';
// import config
local c = import '../config.libsonnet';
{
grafanaDashboards+:: {
'overview.json':
dashboard.new('%s Overview' % $._config.dashboardNamePrefix)
+ dashboard.withTags($._config.dashboardTags)
+ dashboard.withRefresh('1m')
+ dashboard.time.withFrom(value='now-1h')
+ dashboard.graphTooltip.withSharedCrosshair()
+ dashboard.withVariables([
variables.datasource,
])
+ dashboard.withPanels(
g.util.grid.makeGrid([
row.new('Overview')
+ row.withPanels([
panels.stat.qps('QPS', queries.qps),
panels.timeSeries.ratio1('Cache Hit Ratio', queries.cacheHitRatio),
panels.timeSeries.base('Active Connections', queries.activeConnections)
]),
row.new('server')
+ row.withPanels([
panels.timeSeries.base('Conflicts/Deadlocks', [queries.conflicts, queries.deadlocks]),
panels.timeSeries.base('Buffers', [queries.buffersAlloc, queries.buffersBackendFsync, queries.buffersBackend, queries.buffersClean, queries.buffersCheckpoint]),
panels.timeSeries.base('Rows', [queries.databaseTupFetched, queries.databaseTupReturned, queries.databaseTupInserted, queries.databaseTupUpdated, queries.databaseTupDeleted]),
]),
])
)
}
}