UNPKG

@studion/infra-code-blocks

Version:
37 lines (36 loc) 2.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createLatencyPanel = createLatencyPanel; exports.createLatencyPercentilePanel = createLatencyPercentilePanel; exports.createLatencyPercentagePanel = createLatencyPercentagePanel; exports.createLatencyBurnRatePanel = createLatencyBurnRatePanel; const prometheus_1 = require("../../prometheus"); const helpers_1 = require("./helpers"); function createLatencyPanel(config) { return (0, helpers_1.createStatPercentagePanel)(`Request % below ${config.targetLatency}ms`, { x: 16, y: 0, w: 8, h: 8 }, config.dataSourceName, { label: `Request % below ${config.targetLatency}ms`, query: prometheus_1.queries.getLatencyPercentageQuery(config.ampNamespace, config.window, config.targetLatency, config.filter), thresholds: [], }); } function createLatencyPercentilePanel(config) { return (0, helpers_1.createTimeSeriesPanel)('99th Percentile Latency', { x: 12, y: 16, w: 12, h: 8 }, config.dataSourceName, { label: '99th Percentile Latency', query: prometheus_1.queries.getPercentileLatencyQuery(config.ampNamespace, config.shortWindow, config.target, config.filter), thresholds: [], }, 'ms'); } function createLatencyPercentagePanel(config) { return (0, helpers_1.createTimeSeriesPercentagePanel)(`Request percentage below ${config.targetLatency}ms`, { x: 0, y: 24, w: 12, h: 8 }, config.dataSourceName, { label: `Request percentage below ${config.targetLatency}ms`, query: prometheus_1.queries.getLatencyPercentageQuery(config.ampNamespace, config.shortWindow, config.targetLatency, config.filter), thresholds: [], }); } function createLatencyBurnRatePanel(config) { return (0, helpers_1.createBurnRatePanel)('Latency Burn Rate', { x: 16, y: 8, w: 8, h: 4 }, config.dataSourceName, { label: 'Burn Rate', query: prometheus_1.queries.getBurnRateQuery(prometheus_1.queries.getLatencyRateQuery(config.ampNamespace, '1h', config.targetLatency), config.target), thresholds: [], }); }