blob: a49486de8929b6211d6f51939ed96de83205fa28 [file] [log] [blame]
local grafana = import '../../../vendor/grafonnet/grafana.libsonnet';
local dashboard = grafana.dashboard;
local template = grafana.template;
local row = grafana.row;
local graphPanel = grafana.graphPanel;
local prometheus = grafana.prometheus;
local defaults = import '../../globals/defaults.libsonnet';
local gridPos = import '../../globals/grid_pos.libsonnet';
local publishVariables = import '../../globals/publish.libsonnet';
local variables = import '../globals/variables.libsonnet';
local latency_panel = import './panels/latency.libsonnet';
local QUERIES = ['accounts', 'changes', 'groups', 'projects'];
dashboard.new(
'Gerrit - QUERY Latency',
tags=['gerrit'],
schemaVersion=defaults.dashboards.schemaVersion,
editable=defaults.dashboards.editable,
time_from=defaults.dashboards.timeFrom,
time_to=defaults.dashboards.timeTo,
refresh=defaults.dashboards.refresh,
graphTooltip='shared_tooltip',
)
.addTemplate(variables.instance)
.addTemplate(variables.replica)
.addPanel(latency_panel.new(
metric='query_query_latency_total',
title='TOTAL query latency',
),
gridPos=gridPos.new(0,0,1),
)
.addPanels([
latency_panel.new(
metric=std.format('query_query_latency_%s', QUERIES[i]),
title=std.format('%s query latency', std.asciiUpper(QUERIES[i])),
) { gridPos: {w: 12, h: 11, x: (i%2)*12} }
for i in std.range(0, std.length(QUERIES) - 1)
])
+ if std.extVar('publish') then publishVariables else {}