UNPKG

@studion/infra-code-blocks

Version:
39 lines (38 loc) 1.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createLogsAndTracesDashboard = createLogsAndTracesDashboard; const merge_with_defaults_1 = require("../../../shared/merge-with-defaults"); const builder_1 = require("./builder"); const limit_1 = require("../variables/limit"); const log_level_1 = require("../variables/log-level"); const search_1 = require("../variables/search"); const trace_id_1 = require("../variables/trace-id"); const logs_traces_1 = require("../panels/logs-traces"); const defaults = { title: 'Logs & Traces', dashboardConfig: { refresh: '1m', }, }; function createLogsAndTracesDashboard(config) { const argsWithDefaults = (0, merge_with_defaults_1.mergeWithDefaults)(defaults, config); const { title, logsDataSourceName, logGroupName, tracesDataSourceName } = argsWithDefaults; return new builder_1.GrafanaDashboardBuilder(config.name) .withConfig(argsWithDefaults.dashboardConfig) .withTitle(title) .addVariable((0, search_1.createSearchVariable)({ description: 'Search inside the whole message (case sensitive)', })) .addVariable((0, log_level_1.createLogLevelVariable)()) .addVariable((0, limit_1.createLimitVariable)()) .addVariable((0, trace_id_1.createTraceIdVariable)()) .addPanel((0, logs_traces_1.createLogsViewPanel)({ logGroupName, logsDataSourceName, tracesDataSourceName, })) .addPanel((0, logs_traces_1.createTracesViewPanel)({ dataSourceName: tracesDataSourceName, })) .build(); }