@oneuptime/common 10.2.12 → 10.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Server/API/DashboardAPI.ts +96 -0
- package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +29 -0
- package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +36 -0
- package/Types/Dashboard/DashboardVariable.ts +17 -0
- package/Types/Metrics/MetricsQuery.ts +2 -1
- package/Utils/Dashboard/VariableInterpolation.ts +169 -0
- package/Utils/Dashboard/VariableUrlState.ts +128 -0
- package/build/dist/Server/API/DashboardAPI.js +68 -2
- package/build/dist/Server/API/DashboardAPI.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +23 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js +32 -0
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardVariable.js +1 -0
- package/build/dist/Types/Dashboard/DashboardVariable.js.map +1 -1
- package/build/dist/Utils/Dashboard/VariableInterpolation.js +101 -0
- package/build/dist/Utils/Dashboard/VariableInterpolation.js.map +1 -0
- package/build/dist/Utils/Dashboard/VariableUrlState.js +101 -0
- package/build/dist/Utils/Dashboard/VariableUrlState.js.map +1 -0
- package/package.json +1 -1
|
@@ -24,6 +24,8 @@ import { DASHBOARD_MASTER_PASSWORD_INVALID_MESSAGE } from "../../Types/Dashboard
|
|
|
24
24
|
import NotAuthenticatedException from "../../Types/Exception/NotAuthenticatedException";
|
|
25
25
|
import ForbiddenException from "../../Types/Exception/ForbiddenException";
|
|
26
26
|
import JSONFunctions from "../../Types/JSONFunctions";
|
|
27
|
+
import TelemetryAttributeService from "../Services/TelemetryAttributeService";
|
|
28
|
+
import TelemetryType from "../../Types/Telemetry/TelemetryType";
|
|
27
29
|
|
|
28
30
|
export default class DashboardAPI extends BaseAPI<
|
|
29
31
|
Dashboard,
|
|
@@ -302,6 +304,100 @@ export default class DashboardAPI extends BaseAPI<
|
|
|
302
304
|
},
|
|
303
305
|
);
|
|
304
306
|
|
|
307
|
+
/*
|
|
308
|
+
* Public attribute-value lookup for dashboard variables.
|
|
309
|
+
*
|
|
310
|
+
* The private `/telemetry/metrics/get-attribute-values` route requires
|
|
311
|
+
* a logged-in session; public dashboards have no session, so we mirror
|
|
312
|
+
* the behaviour here scoped to the dashboard's owning projectId.
|
|
313
|
+
* Authorization reuses DashboardService.hasReadAccess (public flag, IP
|
|
314
|
+
* whitelist, master password) — never falls back to project-wide read.
|
|
315
|
+
*/
|
|
316
|
+
this.router.post(
|
|
317
|
+
`${new this.entityType()
|
|
318
|
+
.getCrudApiPath()
|
|
319
|
+
?.toString()}/attribute-values/:dashboardId`,
|
|
320
|
+
UserMiddleware.getUserMiddleware,
|
|
321
|
+
async (req: ExpressRequest, res: ExpressResponse, next: NextFunction) => {
|
|
322
|
+
try {
|
|
323
|
+
const dashboardId: ObjectID = new ObjectID(
|
|
324
|
+
req.params["dashboardId"] as string,
|
|
325
|
+
);
|
|
326
|
+
|
|
327
|
+
const accessResult: {
|
|
328
|
+
hasReadAccess: boolean;
|
|
329
|
+
error?: NotAuthenticatedException | ForbiddenException;
|
|
330
|
+
} = await DashboardService.hasReadAccess({
|
|
331
|
+
dashboardId,
|
|
332
|
+
req,
|
|
333
|
+
});
|
|
334
|
+
|
|
335
|
+
if (!accessResult.hasReadAccess) {
|
|
336
|
+
throw (
|
|
337
|
+
accessResult.error ||
|
|
338
|
+
new BadDataException("Access denied to this dashboard.")
|
|
339
|
+
);
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
const attributeKey: string | undefined =
|
|
343
|
+
req.body && (req.body["attributeKey"] as string);
|
|
344
|
+
|
|
345
|
+
if (!attributeKey || !attributeKey.trim()) {
|
|
346
|
+
throw new BadDataException("attributeKey is required.");
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
const metricNameRaw: string | undefined =
|
|
350
|
+
req.body && (req.body["metricName"] as string);
|
|
351
|
+
const metricName: string | undefined =
|
|
352
|
+
metricNameRaw && metricNameRaw.trim() ? metricNameRaw : undefined;
|
|
353
|
+
|
|
354
|
+
const telemetryTypeRaw: string | undefined =
|
|
355
|
+
req.body && (req.body["telemetryType"] as string);
|
|
356
|
+
let telemetryType: TelemetryType = TelemetryType.Metric;
|
|
357
|
+
if (telemetryTypeRaw) {
|
|
358
|
+
const match: TelemetryType | undefined = (
|
|
359
|
+
Object.values(TelemetryType) as Array<string>
|
|
360
|
+
).includes(telemetryTypeRaw)
|
|
361
|
+
? (telemetryTypeRaw as TelemetryType)
|
|
362
|
+
: undefined;
|
|
363
|
+
if (match) {
|
|
364
|
+
telemetryType = match;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
const dashboard: Dashboard | null =
|
|
369
|
+
await DashboardService.findOneById({
|
|
370
|
+
id: dashboardId,
|
|
371
|
+
select: {
|
|
372
|
+
_id: true,
|
|
373
|
+
projectId: true,
|
|
374
|
+
},
|
|
375
|
+
props: {
|
|
376
|
+
isRoot: true,
|
|
377
|
+
},
|
|
378
|
+
});
|
|
379
|
+
|
|
380
|
+
if (!dashboard || !dashboard.projectId) {
|
|
381
|
+
throw new NotFoundException("Dashboard not found");
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
const values: Array<string> =
|
|
385
|
+
await TelemetryAttributeService.fetchAttributeValues({
|
|
386
|
+
projectId: dashboard.projectId,
|
|
387
|
+
telemetryType,
|
|
388
|
+
attributeKey: attributeKey.trim(),
|
|
389
|
+
metricName,
|
|
390
|
+
});
|
|
391
|
+
|
|
392
|
+
return Response.sendJsonObjectResponse(req, res, {
|
|
393
|
+
values,
|
|
394
|
+
});
|
|
395
|
+
} catch (err) {
|
|
396
|
+
next(err);
|
|
397
|
+
}
|
|
398
|
+
},
|
|
399
|
+
);
|
|
400
|
+
|
|
305
401
|
this.router.post(
|
|
306
402
|
`${new this.entityType()
|
|
307
403
|
.getCrudApiPath()
|
|
@@ -20,6 +20,7 @@ import GreaterThan from "../../../Types/BaseDatabase/GreaterThan";
|
|
|
20
20
|
import GreaterThanOrEqual from "../../../Types/BaseDatabase/GreaterThanOrEqual";
|
|
21
21
|
import InBetween from "../../../Types/BaseDatabase/InBetween";
|
|
22
22
|
import Includes from "../../../Types/BaseDatabase/Includes";
|
|
23
|
+
import ObjectID from "../../../Types/ObjectID";
|
|
23
24
|
import IsNull from "../../../Types/BaseDatabase/IsNull";
|
|
24
25
|
import LessThan from "../../../Types/BaseDatabase/LessThan";
|
|
25
26
|
import LessThanOrEqual from "../../../Types/BaseDatabase/LessThanOrEqual";
|
|
@@ -711,6 +712,34 @@ export default class StatementGenerator<TBaseModel extends AnalyticsBaseModel> {
|
|
|
711
712
|
continue;
|
|
712
713
|
}
|
|
713
714
|
|
|
715
|
+
/*
|
|
716
|
+
* Multi-value selection (dashboard variables, ad-hoc filters):
|
|
717
|
+
* an empty `Includes` would expand to `IN ()`, which ClickHouse
|
|
718
|
+
* treats as "match nothing" and is never the user's intent
|
|
719
|
+
* here — skip the predicate instead so a cleared multi-select
|
|
720
|
+
* behaves like "All".
|
|
721
|
+
*/
|
|
722
|
+
if (mapEntry instanceof Includes) {
|
|
723
|
+
const includesValues: Array<string> = (
|
|
724
|
+
(mapEntry as Includes).values || []
|
|
725
|
+
).map((v: string | ObjectID | number) => {
|
|
726
|
+
return String(v);
|
|
727
|
+
});
|
|
728
|
+
if (includesValues.length === 0) {
|
|
729
|
+
continue;
|
|
730
|
+
}
|
|
731
|
+
whereStatement.append(
|
|
732
|
+
SQL`AND ${key}[${{
|
|
733
|
+
value: mapKey,
|
|
734
|
+
type: TableColumnType.Text,
|
|
735
|
+
}}] IN ${{
|
|
736
|
+
value: new Includes(includesValues),
|
|
737
|
+
type: TableColumnType.Text,
|
|
738
|
+
}}`,
|
|
739
|
+
);
|
|
740
|
+
continue;
|
|
741
|
+
}
|
|
742
|
+
|
|
714
743
|
// Bare string/number/boolean — direct Map subscript.
|
|
715
744
|
whereStatement.append(
|
|
716
745
|
SQL`AND ${key}[${{
|
|
@@ -18,6 +18,7 @@ import NotEqual from "../../../../Types/BaseDatabase/NotEqual";
|
|
|
18
18
|
import IsNull from "../../../../Types/BaseDatabase/IsNull";
|
|
19
19
|
import NotNull from "../../../../Types/BaseDatabase/NotNull";
|
|
20
20
|
import GreaterThan from "../../../../Types/BaseDatabase/GreaterThan";
|
|
21
|
+
import Includes from "../../../../Types/BaseDatabase/Includes";
|
|
21
22
|
import Search from "../../../../Types/BaseDatabase/Search";
|
|
22
23
|
import StartsWith from "../../../../Types/BaseDatabase/StartsWith";
|
|
23
24
|
|
|
@@ -323,6 +324,41 @@ describe("StatementGenerator", () => {
|
|
|
323
324
|
expect(statement.query).toContain("lowerUTF8");
|
|
324
325
|
expect(statement.query).toContain("ILIKE");
|
|
325
326
|
});
|
|
327
|
+
|
|
328
|
+
test("emits direct map subscript IN(...) for Includes wrapper", () => {
|
|
329
|
+
const statement: Statement = mapGenerator.toWhereStatement({
|
|
330
|
+
attributes: {
|
|
331
|
+
"k8s.cluster.name": new Includes(["prod-east", "prod-west"]),
|
|
332
|
+
},
|
|
333
|
+
} as any);
|
|
334
|
+
/*
|
|
335
|
+
* Multi-value dashboard variables emit Includes on a map column;
|
|
336
|
+
* the generator must produce an O(1) Map subscript followed by
|
|
337
|
+
* IN, matching the fast-path used for bare-value equality.
|
|
338
|
+
*/
|
|
339
|
+
expect(statement.query).toBe(
|
|
340
|
+
"AND {p0:Identifier}[{p1:String}] IN {p2:Array(String)}",
|
|
341
|
+
);
|
|
342
|
+
expect(statement.query_params).toStrictEqual({
|
|
343
|
+
p0: "attributes",
|
|
344
|
+
p1: "k8s.cluster.name",
|
|
345
|
+
p2: ["prod-east", "prod-west"],
|
|
346
|
+
});
|
|
347
|
+
});
|
|
348
|
+
|
|
349
|
+
test("drops empty Includes wrapper instead of producing IN ()", () => {
|
|
350
|
+
const statement: Statement = mapGenerator.toWhereStatement({
|
|
351
|
+
attributes: {
|
|
352
|
+
"k8s.cluster.name": new Includes([]),
|
|
353
|
+
},
|
|
354
|
+
} as any);
|
|
355
|
+
/*
|
|
356
|
+
* An empty multi-select is the user's "All" — must not emit
|
|
357
|
+
* `IN ()` (which ClickHouse treats as match-nothing).
|
|
358
|
+
*/
|
|
359
|
+
expect(statement.query).toBe("");
|
|
360
|
+
expect(statement.query_params).toStrictEqual({});
|
|
361
|
+
});
|
|
326
362
|
});
|
|
327
363
|
});
|
|
328
364
|
|
|
@@ -2,6 +2,7 @@ export enum DashboardVariableType {
|
|
|
2
2
|
CustomList = "Custom List",
|
|
3
3
|
Query = "Query",
|
|
4
4
|
TextInput = "Text Input",
|
|
5
|
+
TelemetryAttribute = "Telemetry Attribute",
|
|
5
6
|
}
|
|
6
7
|
|
|
7
8
|
export default interface DashboardVariable {
|
|
@@ -13,6 +14,22 @@ export default interface DashboardVariable {
|
|
|
13
14
|
customListValues?: string | undefined;
|
|
14
15
|
// For Query: a ClickHouse query to populate options
|
|
15
16
|
query?: string | undefined;
|
|
17
|
+
/*
|
|
18
|
+
* For TelemetryAttribute: the OpenTelemetry attribute key this
|
|
19
|
+
* variable binds to (e.g. "k8s.cluster.name"). At render time the
|
|
20
|
+
* selected value is injected into any widget filter that targets
|
|
21
|
+
* this attribute key. Options are fetched from the distinct values
|
|
22
|
+
* of this attribute across the current time range.
|
|
23
|
+
*/
|
|
24
|
+
attributeKey?: string | undefined;
|
|
25
|
+
/*
|
|
26
|
+
* For TelemetryAttribute: optional metric name to scope the option
|
|
27
|
+
* lookup to. When set, the dropdown lists distinct attribute values
|
|
28
|
+
* observed on that metric only (e.g. distinct `k8s.pod.name` values
|
|
29
|
+
* emitted by `k8s.container.cpu_usage`). Leave undefined to list
|
|
30
|
+
* values across every metric in the project.
|
|
31
|
+
*/
|
|
32
|
+
metricName?: string | undefined;
|
|
16
33
|
// Current selected value(s)
|
|
17
34
|
selectedValue?: string | undefined;
|
|
18
35
|
selectedValues?: Array<string> | undefined;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import Includes from "../BaseDatabase/Includes";
|
|
1
2
|
import Search from "../BaseDatabase/Search";
|
|
2
3
|
import Dictionary from "../Dictionary";
|
|
3
4
|
import MetricsAggregationType from "./MetricsAggregationType";
|
|
4
5
|
|
|
5
6
|
export default interface MetricsQuery {
|
|
6
7
|
metricName: string;
|
|
7
|
-
attributes: Dictionary<string | boolean | number | Search<string
|
|
8
|
+
attributes: Dictionary<string | boolean | number | Search<string> | Includes>;
|
|
8
9
|
aggegationType: MetricsAggregationType;
|
|
9
10
|
aggregateBy: Dictionary<boolean>;
|
|
10
11
|
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import Includes from "../../Types/BaseDatabase/Includes";
|
|
2
|
+
import DashboardVariable, {
|
|
3
|
+
DashboardVariableType,
|
|
4
|
+
} from "../../Types/Dashboard/DashboardVariable";
|
|
5
|
+
import MetricQueryConfigData from "../../Types/Metrics/MetricQueryConfigData";
|
|
6
|
+
|
|
7
|
+
export interface ResolvedVariableValue {
|
|
8
|
+
/*
|
|
9
|
+
* Single-value selection. Becomes a `attributes[key] = '...'` predicate
|
|
10
|
+
* server-side.
|
|
11
|
+
*/
|
|
12
|
+
scalar?: string | undefined;
|
|
13
|
+
/*
|
|
14
|
+
* Multi-value selection. Becomes a `attributes[key] IN (...)` predicate.
|
|
15
|
+
* Always non-empty when present; an empty multi-select is treated as
|
|
16
|
+
* "All" and produces neither field.
|
|
17
|
+
*/
|
|
18
|
+
multi?: Array<string> | undefined;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/*
|
|
22
|
+
* Applies dashboard variables to a metric query at render time.
|
|
23
|
+
*
|
|
24
|
+
* For each TelemetryAttribute variable with a selected value, the
|
|
25
|
+
* variable's bound attribute key is injected into the query's attribute
|
|
26
|
+
* filter. An empty/unset selection means "All" — no filter is applied,
|
|
27
|
+
* and any previously-set filter on that key is removed so the widget
|
|
28
|
+
* shows the cross-cluster view by default.
|
|
29
|
+
*
|
|
30
|
+
* Multi-select variables emit an `Includes` operator on the same map
|
|
31
|
+
* key so the server's WHERE-builder produces `attributes[key] IN (...)`.
|
|
32
|
+
*/
|
|
33
|
+
export default class DashboardVariableInterpolation {
|
|
34
|
+
public static resolveValue(
|
|
35
|
+
variable: DashboardVariable,
|
|
36
|
+
): ResolvedVariableValue | undefined {
|
|
37
|
+
if (variable.isMultiSelect) {
|
|
38
|
+
const values: Array<string> = (variable.selectedValues || []).filter(
|
|
39
|
+
(v: string) => {
|
|
40
|
+
return Boolean(v);
|
|
41
|
+
},
|
|
42
|
+
);
|
|
43
|
+
if (values.length > 0) {
|
|
44
|
+
return { multi: values };
|
|
45
|
+
}
|
|
46
|
+
// No multi-select picks. Fall through to default value handling.
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const v: string | undefined =
|
|
50
|
+
variable.selectedValue ?? variable.defaultValue ?? undefined;
|
|
51
|
+
if (v === undefined || v === null || v === "") {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
return { scalar: v };
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/*
|
|
58
|
+
* Generic helper: take a plain attributes map and return a new map
|
|
59
|
+
* with all TelemetryAttribute variables applied. Used by every widget
|
|
60
|
+
* type whose filter is shaped like `{ [attrKey]: value | operator }`
|
|
61
|
+
* (metric charts, log streams). Returns the original reference when
|
|
62
|
+
* nothing changes so React.memo can short-circuit.
|
|
63
|
+
*/
|
|
64
|
+
public static applyToAttributes(
|
|
65
|
+
attributes: Record<string, unknown> | undefined,
|
|
66
|
+
variables: Array<DashboardVariable> | undefined,
|
|
67
|
+
): Record<string, unknown> {
|
|
68
|
+
const source: Record<string, unknown> = attributes || {};
|
|
69
|
+
if (!variables || variables.length === 0) {
|
|
70
|
+
return source;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const telemetryAttributeVariables: Array<DashboardVariable> =
|
|
74
|
+
variables.filter((v: DashboardVariable) => {
|
|
75
|
+
return (
|
|
76
|
+
v.type === DashboardVariableType.TelemetryAttribute &&
|
|
77
|
+
Boolean(v.attributeKey)
|
|
78
|
+
);
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
if (telemetryAttributeVariables.length === 0) {
|
|
82
|
+
return source;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
const next: Record<string, unknown> = { ...source };
|
|
86
|
+
let changed: boolean = false;
|
|
87
|
+
|
|
88
|
+
for (const variable of telemetryAttributeVariables) {
|
|
89
|
+
const key: string = variable.attributeKey as string;
|
|
90
|
+
const resolved: ResolvedVariableValue | undefined =
|
|
91
|
+
DashboardVariableInterpolation.resolveValue(variable);
|
|
92
|
+
|
|
93
|
+
if (!resolved) {
|
|
94
|
+
if (key in next) {
|
|
95
|
+
delete next[key];
|
|
96
|
+
changed = true;
|
|
97
|
+
}
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (resolved.multi && resolved.multi.length > 0) {
|
|
102
|
+
next[key] = new Includes(resolved.multi);
|
|
103
|
+
changed = true;
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (resolved.scalar !== undefined && next[key] !== resolved.scalar) {
|
|
108
|
+
next[key] = resolved.scalar;
|
|
109
|
+
changed = true;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return changed ? next : source;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
public static applyToQueryConfig(
|
|
117
|
+
queryConfig: MetricQueryConfigData,
|
|
118
|
+
variables: Array<DashboardVariable> | undefined,
|
|
119
|
+
): MetricQueryConfigData {
|
|
120
|
+
if (!variables || variables.length === 0) {
|
|
121
|
+
return queryConfig;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const filterData: typeof queryConfig.metricQueryData.filterData =
|
|
125
|
+
queryConfig.metricQueryData?.filterData;
|
|
126
|
+
|
|
127
|
+
if (!filterData) {
|
|
128
|
+
return queryConfig;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
const originalAttributes: Record<string, unknown> =
|
|
132
|
+
(filterData.attributes as Record<string, unknown> | undefined) || {};
|
|
133
|
+
const nextAttributes: Record<string, unknown> =
|
|
134
|
+
DashboardVariableInterpolation.applyToAttributes(
|
|
135
|
+
originalAttributes,
|
|
136
|
+
variables,
|
|
137
|
+
);
|
|
138
|
+
|
|
139
|
+
if (nextAttributes === originalAttributes) {
|
|
140
|
+
return queryConfig;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
return {
|
|
144
|
+
...queryConfig,
|
|
145
|
+
metricQueryData: {
|
|
146
|
+
...queryConfig.metricQueryData,
|
|
147
|
+
filterData: {
|
|
148
|
+
...filterData,
|
|
149
|
+
attributes: nextAttributes,
|
|
150
|
+
} as typeof queryConfig.metricQueryData.filterData,
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
public static applyToQueryConfigs(
|
|
156
|
+
queryConfigs: Array<MetricQueryConfigData>,
|
|
157
|
+
variables: Array<DashboardVariable> | undefined,
|
|
158
|
+
): Array<MetricQueryConfigData> {
|
|
159
|
+
if (!variables || variables.length === 0) {
|
|
160
|
+
return queryConfigs;
|
|
161
|
+
}
|
|
162
|
+
return queryConfigs.map((config: MetricQueryConfigData) => {
|
|
163
|
+
return DashboardVariableInterpolation.applyToQueryConfig(
|
|
164
|
+
config,
|
|
165
|
+
variables,
|
|
166
|
+
);
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import DashboardVariable from "../../Types/Dashboard/DashboardVariable";
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* URL state for dashboard variables.
|
|
5
|
+
*
|
|
6
|
+
* Selected values are reflected in the URL as `?var-<name>=<value>` so a
|
|
7
|
+
* dashboard link is shareable with a specific scope already applied. We
|
|
8
|
+
* use the *name* (not the id) because names are user-facing — links
|
|
9
|
+
* survive across dashboards if a variable named `cluster` exists in both.
|
|
10
|
+
*
|
|
11
|
+
* Multi-select uses a `,` separator. Variable names are restricted to
|
|
12
|
+
* `[A-Za-z_][A-Za-z0-9_]*` by the editor, which never collides with `,`.
|
|
13
|
+
*/
|
|
14
|
+
const VAR_PREFIX: string = "var-";
|
|
15
|
+
|
|
16
|
+
export interface VariableUrlSnapshot {
|
|
17
|
+
selectedValue?: string | undefined;
|
|
18
|
+
selectedValues?: Array<string> | undefined;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default class DashboardVariableUrlState {
|
|
22
|
+
public static parseFromSearch(
|
|
23
|
+
search: string,
|
|
24
|
+
): Record<string, VariableUrlSnapshot> {
|
|
25
|
+
const out: Record<string, VariableUrlSnapshot> = {};
|
|
26
|
+
if (!search) {
|
|
27
|
+
return out;
|
|
28
|
+
}
|
|
29
|
+
const params: URLSearchParams = new URLSearchParams(
|
|
30
|
+
search.startsWith("?") ? search.slice(1) : search,
|
|
31
|
+
);
|
|
32
|
+
params.forEach((rawValue: string, rawKey: string) => {
|
|
33
|
+
if (!rawKey.startsWith(VAR_PREFIX)) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const name: string = rawKey.slice(VAR_PREFIX.length);
|
|
37
|
+
if (!name) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const decoded: string = rawValue;
|
|
41
|
+
if (decoded.includes(",")) {
|
|
42
|
+
out[name] = {
|
|
43
|
+
selectedValues: decoded
|
|
44
|
+
.split(",")
|
|
45
|
+
.map((v: string) => {
|
|
46
|
+
return v.trim();
|
|
47
|
+
})
|
|
48
|
+
.filter((v: string) => {
|
|
49
|
+
return v.length > 0;
|
|
50
|
+
}),
|
|
51
|
+
};
|
|
52
|
+
} else {
|
|
53
|
+
out[name] = { selectedValue: decoded };
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
return out;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
public static applyUrlToVariables(
|
|
60
|
+
variables: Array<DashboardVariable>,
|
|
61
|
+
fromUrl: Record<string, VariableUrlSnapshot>,
|
|
62
|
+
): Array<DashboardVariable> {
|
|
63
|
+
return variables.map((variable: DashboardVariable) => {
|
|
64
|
+
const fromName: VariableUrlSnapshot | undefined = fromUrl[variable.name];
|
|
65
|
+
if (!fromName) {
|
|
66
|
+
return variable;
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
...variable,
|
|
70
|
+
selectedValue: fromName.selectedValue,
|
|
71
|
+
selectedValues: fromName.selectedValues,
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/*
|
|
77
|
+
* Write the current variable selection to window.location without
|
|
78
|
+
* pushing a history entry. We mutate only the `var-<name>` params so
|
|
79
|
+
* unrelated query string state (auth tokens, filter overrides) is
|
|
80
|
+
* preserved.
|
|
81
|
+
*
|
|
82
|
+
* No-op outside browser contexts so callers can be reused in SSR/tests.
|
|
83
|
+
*/
|
|
84
|
+
public static writeToBrowserUrl(variables: Array<DashboardVariable>): void {
|
|
85
|
+
if (
|
|
86
|
+
typeof window === "undefined" ||
|
|
87
|
+
typeof window.history === "undefined" ||
|
|
88
|
+
typeof window.location === "undefined"
|
|
89
|
+
) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const url: URL = new URL(window.location.href);
|
|
94
|
+
const params: URLSearchParams = url.searchParams;
|
|
95
|
+
|
|
96
|
+
// Strip any prior var-* params so deleted variables stop appearing.
|
|
97
|
+
const toDelete: Array<string> = [];
|
|
98
|
+
params.forEach((_value: string, key: string) => {
|
|
99
|
+
if (key.startsWith(VAR_PREFIX)) {
|
|
100
|
+
toDelete.push(key);
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
for (const key of toDelete) {
|
|
104
|
+
params.delete(key);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
for (const variable of variables) {
|
|
108
|
+
const name: string = (variable.name || "").trim();
|
|
109
|
+
if (!name) {
|
|
110
|
+
continue;
|
|
111
|
+
}
|
|
112
|
+
const paramKey: string = `${VAR_PREFIX}${name}`;
|
|
113
|
+
if (variable.selectedValues && variable.selectedValues.length > 0) {
|
|
114
|
+
params.set(paramKey, variable.selectedValues.join(","));
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
if (variable.selectedValue && variable.selectedValue.length > 0) {
|
|
118
|
+
params.set(paramKey, variable.selectedValue);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
const nextSearch: string = params.toString();
|
|
123
|
+
const nextUrl: string = `${url.pathname}${
|
|
124
|
+
nextSearch ? `?${nextSearch}` : ""
|
|
125
|
+
}${url.hash || ""}`;
|
|
126
|
+
window.history.replaceState(window.history.state, "", nextUrl);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
@@ -13,9 +13,11 @@ import Dashboard from "../../Models/DatabaseModels/Dashboard";
|
|
|
13
13
|
import { EncryptionSecret } from "../EnvironmentConfig";
|
|
14
14
|
import { DASHBOARD_MASTER_PASSWORD_INVALID_MESSAGE } from "../../Types/Dashboard/MasterPassword";
|
|
15
15
|
import JSONFunctions from "../../Types/JSONFunctions";
|
|
16
|
+
import TelemetryAttributeService from "../Services/TelemetryAttributeService";
|
|
17
|
+
import TelemetryType from "../../Types/Telemetry/TelemetryType";
|
|
16
18
|
export default class DashboardAPI extends BaseAPI {
|
|
17
19
|
constructor() {
|
|
18
|
-
var _a, _b, _c, _d, _e;
|
|
20
|
+
var _a, _b, _c, _d, _e, _f;
|
|
19
21
|
super(Dashboard, DashboardService);
|
|
20
22
|
// SEO endpoint - resolve dashboard by ID or domain
|
|
21
23
|
this.router.get(`${(_a = new this.entityType()
|
|
@@ -215,8 +217,72 @@ export default class DashboardAPI extends BaseAPI {
|
|
|
215
217
|
next(err);
|
|
216
218
|
}
|
|
217
219
|
});
|
|
220
|
+
/*
|
|
221
|
+
* Public attribute-value lookup for dashboard variables.
|
|
222
|
+
*
|
|
223
|
+
* The private `/telemetry/metrics/get-attribute-values` route requires
|
|
224
|
+
* a logged-in session; public dashboards have no session, so we mirror
|
|
225
|
+
* the behaviour here scoped to the dashboard's owning projectId.
|
|
226
|
+
* Authorization reuses DashboardService.hasReadAccess (public flag, IP
|
|
227
|
+
* whitelist, master password) — never falls back to project-wide read.
|
|
228
|
+
*/
|
|
218
229
|
this.router.post(`${(_e = new this.entityType()
|
|
219
|
-
.getCrudApiPath()) === null || _e === void 0 ? void 0 : _e.toString()}/
|
|
230
|
+
.getCrudApiPath()) === null || _e === void 0 ? void 0 : _e.toString()}/attribute-values/:dashboardId`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
231
|
+
try {
|
|
232
|
+
const dashboardId = new ObjectID(req.params["dashboardId"]);
|
|
233
|
+
const accessResult = await DashboardService.hasReadAccess({
|
|
234
|
+
dashboardId,
|
|
235
|
+
req,
|
|
236
|
+
});
|
|
237
|
+
if (!accessResult.hasReadAccess) {
|
|
238
|
+
throw (accessResult.error ||
|
|
239
|
+
new BadDataException("Access denied to this dashboard."));
|
|
240
|
+
}
|
|
241
|
+
const attributeKey = req.body && req.body["attributeKey"];
|
|
242
|
+
if (!attributeKey || !attributeKey.trim()) {
|
|
243
|
+
throw new BadDataException("attributeKey is required.");
|
|
244
|
+
}
|
|
245
|
+
const metricNameRaw = req.body && req.body["metricName"];
|
|
246
|
+
const metricName = metricNameRaw && metricNameRaw.trim() ? metricNameRaw : undefined;
|
|
247
|
+
const telemetryTypeRaw = req.body && req.body["telemetryType"];
|
|
248
|
+
let telemetryType = TelemetryType.Metric;
|
|
249
|
+
if (telemetryTypeRaw) {
|
|
250
|
+
const match = Object.values(TelemetryType).includes(telemetryTypeRaw)
|
|
251
|
+
? telemetryTypeRaw
|
|
252
|
+
: undefined;
|
|
253
|
+
if (match) {
|
|
254
|
+
telemetryType = match;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
const dashboard = await DashboardService.findOneById({
|
|
258
|
+
id: dashboardId,
|
|
259
|
+
select: {
|
|
260
|
+
_id: true,
|
|
261
|
+
projectId: true,
|
|
262
|
+
},
|
|
263
|
+
props: {
|
|
264
|
+
isRoot: true,
|
|
265
|
+
},
|
|
266
|
+
});
|
|
267
|
+
if (!dashboard || !dashboard.projectId) {
|
|
268
|
+
throw new NotFoundException("Dashboard not found");
|
|
269
|
+
}
|
|
270
|
+
const values = await TelemetryAttributeService.fetchAttributeValues({
|
|
271
|
+
projectId: dashboard.projectId,
|
|
272
|
+
telemetryType,
|
|
273
|
+
attributeKey: attributeKey.trim(),
|
|
274
|
+
metricName,
|
|
275
|
+
});
|
|
276
|
+
return Response.sendJsonObjectResponse(req, res, {
|
|
277
|
+
values,
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
catch (err) {
|
|
281
|
+
next(err);
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
this.router.post(`${(_f = new this.entityType()
|
|
285
|
+
.getCrudApiPath()) === null || _f === void 0 ? void 0 : _f.toString()}/master-password/:dashboardId`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
220
286
|
try {
|
|
221
287
|
if (!req.params["dashboardId"]) {
|
|
222
288
|
throw new BadDataException("Dashboard ID not found");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardAPI.js","sourceRoot":"","sources":["../../../../Server/API/DashboardAPI.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DashboardAPI.js","sourceRoot":"","sources":["../../../../Server/API/DashboardAPI.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,gBAEN,MAAM,8BAA8B,CAAC;AACtC,OAAO,sBAAsB,MAAM,oCAAoC,CAAC;AACxE,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,MAAM,EAAE,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAOtE,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,iBAAiB,MAAM,yCAAyC,CAAC;AACxE,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAE9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,yCAAyC,EAAE,MAAM,sCAAsC,CAAC;AAGjG,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,yBAAyB,MAAM,uCAAuC,CAAC;AAC9E,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAEhE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAGzC;IACC;;QACE,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAEnC,mDAAmD;QACnD,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,2BAA2B,EACzC,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;;YACtE,IAAI,CAAC;gBACH,MAAM,mBAAmB,GAAW,GAAG,CAAC,MAAM,CAC5C,qBAAqB,CACZ,CAAC;gBAEZ,IAAI,WAAW,GAAoB,IAAI,CAAC;gBAExC,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,6CAA6C;oBAC7C,MAAM,eAAe,GACnB,MAAM,sBAAsB,CAAC,SAAS,CAAC;wBACrC,KAAK,EAAE;4BACL,UAAU,EAAE,mBAAmB;4BAC/B,MAAM,EAAE;gCACN,UAAU,EAAE,IAAI;6BACV;yBACT;wBACD,MAAM,EAAE;4BACN,WAAW,EAAE,IAAI;yBAClB;wBACD,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEL,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;wBACrD,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAC7C,CAAC;oBACJ,CAAC;oBAED,WAAW,GAAG,eAAe,CAAC,WAAW,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC;wBACH,WAAW,GAAG,IAAI,QAAQ,CAAC,mBAAmB,CAAC,CAAC;oBAClD,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,KAAK,CACV,GAAG,EACH,2BAA2B,CAAC,GAAuB,CAAC,CACrD,CAAC;wBACF,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,sBAAsB,CAAC,CAC7C,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,EAAE,EAAE,WAAW;oBACf,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;wBACjB,SAAS,EAAE,IAAI;wBACf,eAAe,EAAE,IAAI;qBACtB;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAC7C,CAAC;gBACJ,CAAC;gBAED,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;oBAC/C,GAAG,EAAE,CAAA,MAAA,SAAS,CAAC,GAAG,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBACpC,KAAK,EAAE,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,IAAI,WAAW;oBAC3D,WAAW,EACT,SAAS,CAAC,eAAe;wBACzB,SAAS,CAAC,WAAW;wBACrB,sCAAsC;iBACzC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,6BAA6B;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,0CAAE,QAAQ,EAAE,SAAS,EAC9D,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACxB,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,MAAM,GAAW,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAW,CAAC;gBAEpD,MAAM,eAAe,GACnB,MAAM,sBAAsB,CAAC,SAAS,CAAC;oBACrC,KAAK,EAAE;wBACL,UAAU,EAAE,MAAM;wBAClB,MAAM,EAAE;4BACN,UAAU,EAAE,IAAI;yBACV;qBACT;oBACD,MAAM,EAAE;wBACN,WAAW,EAAE,IAAI;qBAClB;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,IAAI,gBAAgB,CAAC,qCAAqC,CAAC,CAAC;gBACpE,CAAC;gBAED,MAAM,QAAQ,GAAa,eAAe,CAAC,WAAY,CAAC;gBAExD,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;oBAC/C,WAAW,EAAE,QAAQ,CAAC,QAAQ,EAAE;iBACjC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,mEAAmE;QACnE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,wBAAwB,EACtC,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;;YACtE,IAAI,CAAC;gBACH,MAAM,WAAW,GAAa,IAAI,QAAQ,CACxC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAW,CACpC,CAAC;gBAEF,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,EAAE,EAAE,WAAW;oBACf,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;wBACjB,iBAAiB,EAAE,IAAI;wBACvB,oBAAoB,EAAE,IAAI;wBAC1B,SAAS,EAAE,IAAI;wBACf,eAAe,EAAE,IAAI;wBACrB,QAAQ,EAAE;4BACR,IAAI,EAAE,IAAI;4BACV,QAAQ,EAAE,IAAI;yBACf;wBACD,WAAW,EAAE;4BACX,IAAI,EAAE,IAAI;4BACV,QAAQ,EAAE,IAAI;yBACf;qBACF;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACrD,CAAC;gBAED,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;oBAC/C,GAAG,EAAE,CAAA,MAAA,SAAS,CAAC,GAAG,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBACpC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,WAAW;oBACnC,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,EAAE;oBACxC,iBAAiB,EAAE,SAAS,CAAC,iBAAiB,IAAI,KAAK;oBACvD,oBAAoB,EAAE,SAAS,CAAC,oBAAoB,IAAI,KAAK;oBAC7D,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE;oBACpC,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,EAAE;oBAChD,QAAQ,EAAE,YAAY,CAAC,yBAAyB,CAC9C,SAAS,CAAC,QAAQ,CACnB;oBACD,WAAW,EAAE,YAAY,CAAC,yBAAyB,CACjD,SAAS,CAAC,WAAW,CACtB;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,oFAAoF;QACpF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,2BAA2B,EACzC,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;;YACtE,IAAI,CAAC;gBACH,MAAM,WAAW,GAAa,IAAI,QAAQ,CACxC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAW,CACpC,CAAC;gBAEF,0EAA0E;gBAC1E,MAAM,YAAY,GAGd,MAAM,gBAAgB,CAAC,aAAa,CAAC;oBACvC,WAAW;oBACX,GAAG;iBACJ,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;oBAChC,MAAM,CACJ,YAAY,CAAC,KAAK;wBAClB,IAAI,gBAAgB,CAAC,kCAAkC,CAAC,CACzD,CAAC;gBACJ,CAAC;gBAED,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,EAAE,EAAE,WAAW;oBACf,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;wBACjB,mBAAmB,EAAE,IAAI;wBACzB,SAAS,EAAE,IAAI;wBACf,eAAe,EAAE,IAAI;wBACrB,QAAQ,EAAE;4BACR,IAAI,EAAE,IAAI;4BACV,QAAQ,EAAE,IAAI;yBACf;qBACF;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACrD,CAAC;gBAED,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;oBAC/C,GAAG,EAAE,CAAA,MAAA,SAAS,CAAC,GAAG,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBACpC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,WAAW;oBACnC,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,EAAE;oBACxC,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE;oBACpC,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,EAAE;oBAChD,QAAQ,EAAE,YAAY,CAAC,yBAAyB,CAC9C,SAAS,CAAC,QAAQ,CACnB;oBACD,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;wBAChD,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,mBAA0B,CAAC;wBAC/D,CAAC,CAAC,IAAI;iBACT,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;QAEF;;;;;;;;WAQG;QACH,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,gCAAgC,EAC9C,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI,CAAC;gBACH,MAAM,WAAW,GAAa,IAAI,QAAQ,CACxC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAW,CACpC,CAAC;gBAEF,MAAM,YAAY,GAGd,MAAM,gBAAgB,CAAC,aAAa,CAAC;oBACvC,WAAW;oBACX,GAAG;iBACJ,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;oBAChC,MAAM,CACJ,YAAY,CAAC,KAAK;wBAClB,IAAI,gBAAgB,CAAC,kCAAkC,CAAC,CACzD,CAAC;gBACJ,CAAC;gBAED,MAAM,YAAY,GAChB,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAI,CAAC,cAAc,CAAY,CAAC;gBAEnD,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC1C,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;gBAC1D,CAAC;gBAED,MAAM,aAAa,GACjB,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAI,CAAC,YAAY,CAAY,CAAC;gBACjD,MAAM,UAAU,GACd,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;gBAEpE,MAAM,gBAAgB,GACpB,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAI,CAAC,eAAe,CAAY,CAAC;gBACpD,IAAI,aAAa,GAAkB,aAAa,CAAC,MAAM,CAAC;gBACxD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,KAAK,GACT,MAAM,CAAC,MAAM,CAAC,aAAa,CAC5B,CAAC,QAAQ,CAAC,gBAAgB,CAAC;wBAC1B,CAAC,CAAE,gBAAkC;wBACrC,CAAC,CAAC,SAAS,CAAC;oBACd,IAAI,KAAK,EAAE,CAAC;wBACV,aAAa,GAAG,KAAK,CAAC;oBACxB,CAAC;gBACH,CAAC;gBAED,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,EAAE,EAAE,WAAW;oBACf,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,SAAS,EAAE,IAAI;qBAChB;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;oBACvC,MAAM,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACrD,CAAC;gBAED,MAAM,MAAM,GACV,MAAM,yBAAyB,CAAC,oBAAoB,CAAC;oBACnD,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,aAAa;oBACb,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE;oBACjC,UAAU;iBACX,CAAC,CAAC;gBAEL,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;oBAC/C,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,+BAA+B,EAC7C,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC/B,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;gBACvD,CAAC;gBAED,MAAM,WAAW,GAAa,IAAI,QAAQ,CACxC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAW,CACpC,CAAC;gBAEF,MAAM,QAAQ,GACZ,GAAG,CAAC,IAAI,IAAK,GAAG,CAAC,IAAI,CAAC,UAAU,CAAY,CAAC;gBAE/C,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,CAAC,CAAC;gBAC7D,CAAC;gBAED,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,EAAE,EAAE,WAAW;oBACf,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,SAAS,EAAE,IAAI;wBACf,oBAAoB,EAAE,IAAI;wBAC1B,cAAc,EAAE,IAAI;wBACpB,iBAAiB,EAAE,IAAI;qBACxB;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACrD,CAAC;gBAED,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;oBACjC,MAAM,IAAI,gBAAgB,CACxB,4CAA4C,CAC7C,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,SAAS,CAAC,oBAAoB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;oBACjE,MAAM,IAAI,gBAAgB,CACxB,6DAA6D,CAC9D,CAAC;gBACJ,CAAC;gBAED,MAAM,WAAW,GAAW,MAAM,YAAY,CAAC,SAAS,CACtD,QAAQ,EACR,gBAAgB,CACjB,CAAC;gBAEF,IAAI,WAAW,KAAK,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACxD,MAAM,IAAI,gBAAgB,CACxB,yCAAyC,CAC1C,CAAC;gBACJ,CAAC;gBAED,UAAU,CAAC,gCAAgC,CAAC;oBAC1C,eAAe,EAAE,GAAG;oBACpB,WAAW;iBACZ,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,yBAAyB,CACtC,IAAS;QAET,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,MAAc,CAAC;QACnB,MAAM,UAAU,GAAQ,IAAI,CAAC,IAAI,CAAC;QAElC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;aAAM,IACL,UAAU;YACV,OAAO,UAAU,KAAK,QAAQ;YAC9B,UAAU,CAAC,KAAK;YAChB,UAAU,CAAC,KAAK,CAAC,IAAI,EACrB,CAAC;YACD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAG,IAAI,CAAC,QAAmB,IAAI,WAAW;SACnD,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -558,6 +558,29 @@ export default class StatementGenerator {
|
|
|
558
558
|
}}`);
|
|
559
559
|
continue;
|
|
560
560
|
}
|
|
561
|
+
/*
|
|
562
|
+
* Multi-value selection (dashboard variables, ad-hoc filters):
|
|
563
|
+
* an empty `Includes` would expand to `IN ()`, which ClickHouse
|
|
564
|
+
* treats as "match nothing" and is never the user's intent
|
|
565
|
+
* here — skip the predicate instead so a cleared multi-select
|
|
566
|
+
* behaves like "All".
|
|
567
|
+
*/
|
|
568
|
+
if (mapEntry instanceof Includes) {
|
|
569
|
+
const includesValues = (mapEntry.values || []).map((v) => {
|
|
570
|
+
return String(v);
|
|
571
|
+
});
|
|
572
|
+
if (includesValues.length === 0) {
|
|
573
|
+
continue;
|
|
574
|
+
}
|
|
575
|
+
whereStatement.append(SQL `AND ${key}[${{
|
|
576
|
+
value: mapKey,
|
|
577
|
+
type: TableColumnType.Text,
|
|
578
|
+
}}] IN ${{
|
|
579
|
+
value: new Includes(includesValues),
|
|
580
|
+
type: TableColumnType.Text,
|
|
581
|
+
}}`);
|
|
582
|
+
continue;
|
|
583
|
+
}
|
|
561
584
|
// Bare string/number/boolean — direct Map subscript.
|
|
562
585
|
whereStatement.append(SQL `AND ${key}[${{
|
|
563
586
|
value: mapKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatementGenerator.js","sourceRoot":"","sources":["../../../../../Server/Utils/AnalyticsDatabase/StatementGenerator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatementGenerator.js","sourceRoot":"","sources":["../../../../../Server/Utils/AnalyticsDatabase/StatementGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ import NotEqual from "../../../../Types/BaseDatabase/NotEqual";
|
|
|
14
14
|
import IsNull from "../../../../Types/BaseDatabase/IsNull";
|
|
15
15
|
import NotNull from "../../../../Types/BaseDatabase/NotNull";
|
|
16
16
|
import GreaterThan from "../../../../Types/BaseDatabase/GreaterThan";
|
|
17
|
+
import Includes from "../../../../Types/BaseDatabase/Includes";
|
|
17
18
|
import Search from "../../../../Types/BaseDatabase/Search";
|
|
18
19
|
import StartsWith from "../../../../Types/BaseDatabase/StartsWith";
|
|
19
20
|
function expectStatement(actual, expected) {
|
|
@@ -274,6 +275,37 @@ describe("StatementGenerator", () => {
|
|
|
274
275
|
expect(statement.query).toContain("lowerUTF8");
|
|
275
276
|
expect(statement.query).toContain("ILIKE");
|
|
276
277
|
});
|
|
278
|
+
test("emits direct map subscript IN(...) for Includes wrapper", () => {
|
|
279
|
+
const statement = mapGenerator.toWhereStatement({
|
|
280
|
+
attributes: {
|
|
281
|
+
"k8s.cluster.name": new Includes(["prod-east", "prod-west"]),
|
|
282
|
+
},
|
|
283
|
+
});
|
|
284
|
+
/*
|
|
285
|
+
* Multi-value dashboard variables emit Includes on a map column;
|
|
286
|
+
* the generator must produce an O(1) Map subscript followed by
|
|
287
|
+
* IN, matching the fast-path used for bare-value equality.
|
|
288
|
+
*/
|
|
289
|
+
expect(statement.query).toBe("AND {p0:Identifier}[{p1:String}] IN {p2:Array(String)}");
|
|
290
|
+
expect(statement.query_params).toStrictEqual({
|
|
291
|
+
p0: "attributes",
|
|
292
|
+
p1: "k8s.cluster.name",
|
|
293
|
+
p2: ["prod-east", "prod-west"],
|
|
294
|
+
});
|
|
295
|
+
});
|
|
296
|
+
test("drops empty Includes wrapper instead of producing IN ()", () => {
|
|
297
|
+
const statement = mapGenerator.toWhereStatement({
|
|
298
|
+
attributes: {
|
|
299
|
+
"k8s.cluster.name": new Includes([]),
|
|
300
|
+
},
|
|
301
|
+
});
|
|
302
|
+
/*
|
|
303
|
+
* An empty multi-select is the user's "All" — must not emit
|
|
304
|
+
* `IN ()` (which ClickHouse treats as match-nothing).
|
|
305
|
+
*/
|
|
306
|
+
expect(statement.query).toBe("");
|
|
307
|
+
expect(statement.query_params).toStrictEqual({});
|
|
308
|
+
});
|
|
277
309
|
});
|
|
278
310
|
});
|
|
279
311
|
describe("toSelectStatement", () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatementGenerator.test.js","sourceRoot":"","sources":["../../../../../../Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatementGenerator.test.js","sourceRoot":"","sources":["../../../../../../Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,6 @@ export var DashboardVariableType;
|
|
|
3
3
|
DashboardVariableType["CustomList"] = "Custom List";
|
|
4
4
|
DashboardVariableType["Query"] = "Query";
|
|
5
5
|
DashboardVariableType["TextInput"] = "Text Input";
|
|
6
|
+
DashboardVariableType["TelemetryAttribute"] = "Telemetry Attribute";
|
|
6
7
|
})(DashboardVariableType || (DashboardVariableType = {}));
|
|
7
8
|
//# sourceMappingURL=DashboardVariable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardVariable.js","sourceRoot":"","sources":["../../../../Types/Dashboard/DashboardVariable.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"DashboardVariable.js","sourceRoot":"","sources":["../../../../Types/Dashboard/DashboardVariable.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,mDAA0B,CAAA;IAC1B,wCAAe,CAAA;IACf,iDAAwB,CAAA;IACxB,mEAA0C,CAAA;AAC5C,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import Includes from "../../Types/BaseDatabase/Includes";
|
|
2
|
+
import { DashboardVariableType, } from "../../Types/Dashboard/DashboardVariable";
|
|
3
|
+
/*
|
|
4
|
+
* Applies dashboard variables to a metric query at render time.
|
|
5
|
+
*
|
|
6
|
+
* For each TelemetryAttribute variable with a selected value, the
|
|
7
|
+
* variable's bound attribute key is injected into the query's attribute
|
|
8
|
+
* filter. An empty/unset selection means "All" — no filter is applied,
|
|
9
|
+
* and any previously-set filter on that key is removed so the widget
|
|
10
|
+
* shows the cross-cluster view by default.
|
|
11
|
+
*
|
|
12
|
+
* Multi-select variables emit an `Includes` operator on the same map
|
|
13
|
+
* key so the server's WHERE-builder produces `attributes[key] IN (...)`.
|
|
14
|
+
*/
|
|
15
|
+
export default class DashboardVariableInterpolation {
|
|
16
|
+
static resolveValue(variable) {
|
|
17
|
+
var _a, _b;
|
|
18
|
+
if (variable.isMultiSelect) {
|
|
19
|
+
const values = (variable.selectedValues || []).filter((v) => {
|
|
20
|
+
return Boolean(v);
|
|
21
|
+
});
|
|
22
|
+
if (values.length > 0) {
|
|
23
|
+
return { multi: values };
|
|
24
|
+
}
|
|
25
|
+
// No multi-select picks. Fall through to default value handling.
|
|
26
|
+
}
|
|
27
|
+
const v = (_b = (_a = variable.selectedValue) !== null && _a !== void 0 ? _a : variable.defaultValue) !== null && _b !== void 0 ? _b : undefined;
|
|
28
|
+
if (v === undefined || v === null || v === "") {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
return { scalar: v };
|
|
32
|
+
}
|
|
33
|
+
/*
|
|
34
|
+
* Generic helper: take a plain attributes map and return a new map
|
|
35
|
+
* with all TelemetryAttribute variables applied. Used by every widget
|
|
36
|
+
* type whose filter is shaped like `{ [attrKey]: value | operator }`
|
|
37
|
+
* (metric charts, log streams). Returns the original reference when
|
|
38
|
+
* nothing changes so React.memo can short-circuit.
|
|
39
|
+
*/
|
|
40
|
+
static applyToAttributes(attributes, variables) {
|
|
41
|
+
const source = attributes || {};
|
|
42
|
+
if (!variables || variables.length === 0) {
|
|
43
|
+
return source;
|
|
44
|
+
}
|
|
45
|
+
const telemetryAttributeVariables = variables.filter((v) => {
|
|
46
|
+
return (v.type === DashboardVariableType.TelemetryAttribute &&
|
|
47
|
+
Boolean(v.attributeKey));
|
|
48
|
+
});
|
|
49
|
+
if (telemetryAttributeVariables.length === 0) {
|
|
50
|
+
return source;
|
|
51
|
+
}
|
|
52
|
+
const next = Object.assign({}, source);
|
|
53
|
+
let changed = false;
|
|
54
|
+
for (const variable of telemetryAttributeVariables) {
|
|
55
|
+
const key = variable.attributeKey;
|
|
56
|
+
const resolved = DashboardVariableInterpolation.resolveValue(variable);
|
|
57
|
+
if (!resolved) {
|
|
58
|
+
if (key in next) {
|
|
59
|
+
delete next[key];
|
|
60
|
+
changed = true;
|
|
61
|
+
}
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (resolved.multi && resolved.multi.length > 0) {
|
|
65
|
+
next[key] = new Includes(resolved.multi);
|
|
66
|
+
changed = true;
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (resolved.scalar !== undefined && next[key] !== resolved.scalar) {
|
|
70
|
+
next[key] = resolved.scalar;
|
|
71
|
+
changed = true;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return changed ? next : source;
|
|
75
|
+
}
|
|
76
|
+
static applyToQueryConfig(queryConfig, variables) {
|
|
77
|
+
var _a;
|
|
78
|
+
if (!variables || variables.length === 0) {
|
|
79
|
+
return queryConfig;
|
|
80
|
+
}
|
|
81
|
+
const filterData = (_a = queryConfig.metricQueryData) === null || _a === void 0 ? void 0 : _a.filterData;
|
|
82
|
+
if (!filterData) {
|
|
83
|
+
return queryConfig;
|
|
84
|
+
}
|
|
85
|
+
const originalAttributes = filterData.attributes || {};
|
|
86
|
+
const nextAttributes = DashboardVariableInterpolation.applyToAttributes(originalAttributes, variables);
|
|
87
|
+
if (nextAttributes === originalAttributes) {
|
|
88
|
+
return queryConfig;
|
|
89
|
+
}
|
|
90
|
+
return Object.assign(Object.assign({}, queryConfig), { metricQueryData: Object.assign(Object.assign({}, queryConfig.metricQueryData), { filterData: Object.assign(Object.assign({}, filterData), { attributes: nextAttributes }) }) });
|
|
91
|
+
}
|
|
92
|
+
static applyToQueryConfigs(queryConfigs, variables) {
|
|
93
|
+
if (!variables || variables.length === 0) {
|
|
94
|
+
return queryConfigs;
|
|
95
|
+
}
|
|
96
|
+
return queryConfigs.map((config) => {
|
|
97
|
+
return DashboardVariableInterpolation.applyToQueryConfig(config, variables);
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=VariableInterpolation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VariableInterpolation.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/VariableInterpolation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* URL state for dashboard variables.
|
|
3
|
+
*
|
|
4
|
+
* Selected values are reflected in the URL as `?var-<name>=<value>` so a
|
|
5
|
+
* dashboard link is shareable with a specific scope already applied. We
|
|
6
|
+
* use the *name* (not the id) because names are user-facing — links
|
|
7
|
+
* survive across dashboards if a variable named `cluster` exists in both.
|
|
8
|
+
*
|
|
9
|
+
* Multi-select uses a `,` separator. Variable names are restricted to
|
|
10
|
+
* `[A-Za-z_][A-Za-z0-9_]*` by the editor, which never collides with `,`.
|
|
11
|
+
*/
|
|
12
|
+
const VAR_PREFIX = "var-";
|
|
13
|
+
export default class DashboardVariableUrlState {
|
|
14
|
+
static parseFromSearch(search) {
|
|
15
|
+
const out = {};
|
|
16
|
+
if (!search) {
|
|
17
|
+
return out;
|
|
18
|
+
}
|
|
19
|
+
const params = new URLSearchParams(search.startsWith("?") ? search.slice(1) : search);
|
|
20
|
+
params.forEach((rawValue, rawKey) => {
|
|
21
|
+
if (!rawKey.startsWith(VAR_PREFIX)) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const name = rawKey.slice(VAR_PREFIX.length);
|
|
25
|
+
if (!name) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const decoded = rawValue;
|
|
29
|
+
if (decoded.includes(",")) {
|
|
30
|
+
out[name] = {
|
|
31
|
+
selectedValues: decoded
|
|
32
|
+
.split(",")
|
|
33
|
+
.map((v) => {
|
|
34
|
+
return v.trim();
|
|
35
|
+
})
|
|
36
|
+
.filter((v) => {
|
|
37
|
+
return v.length > 0;
|
|
38
|
+
}),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
out[name] = { selectedValue: decoded };
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
return out;
|
|
46
|
+
}
|
|
47
|
+
static applyUrlToVariables(variables, fromUrl) {
|
|
48
|
+
return variables.map((variable) => {
|
|
49
|
+
const fromName = fromUrl[variable.name];
|
|
50
|
+
if (!fromName) {
|
|
51
|
+
return variable;
|
|
52
|
+
}
|
|
53
|
+
return Object.assign(Object.assign({}, variable), { selectedValue: fromName.selectedValue, selectedValues: fromName.selectedValues });
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/*
|
|
57
|
+
* Write the current variable selection to window.location without
|
|
58
|
+
* pushing a history entry. We mutate only the `var-<name>` params so
|
|
59
|
+
* unrelated query string state (auth tokens, filter overrides) is
|
|
60
|
+
* preserved.
|
|
61
|
+
*
|
|
62
|
+
* No-op outside browser contexts so callers can be reused in SSR/tests.
|
|
63
|
+
*/
|
|
64
|
+
static writeToBrowserUrl(variables) {
|
|
65
|
+
if (typeof window === "undefined" ||
|
|
66
|
+
typeof window.history === "undefined" ||
|
|
67
|
+
typeof window.location === "undefined") {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const url = new URL(window.location.href);
|
|
71
|
+
const params = url.searchParams;
|
|
72
|
+
// Strip any prior var-* params so deleted variables stop appearing.
|
|
73
|
+
const toDelete = [];
|
|
74
|
+
params.forEach((_value, key) => {
|
|
75
|
+
if (key.startsWith(VAR_PREFIX)) {
|
|
76
|
+
toDelete.push(key);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
for (const key of toDelete) {
|
|
80
|
+
params.delete(key);
|
|
81
|
+
}
|
|
82
|
+
for (const variable of variables) {
|
|
83
|
+
const name = (variable.name || "").trim();
|
|
84
|
+
if (!name) {
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
const paramKey = `${VAR_PREFIX}${name}`;
|
|
88
|
+
if (variable.selectedValues && variable.selectedValues.length > 0) {
|
|
89
|
+
params.set(paramKey, variable.selectedValues.join(","));
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
if (variable.selectedValue && variable.selectedValue.length > 0) {
|
|
93
|
+
params.set(paramKey, variable.selectedValue);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
const nextSearch = params.toString();
|
|
97
|
+
const nextUrl = `${url.pathname}${nextSearch ? `?${nextSearch}` : ""}${url.hash || ""}`;
|
|
98
|
+
window.history.replaceState(window.history.state, "", nextUrl);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=VariableUrlState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VariableUrlState.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/VariableUrlState.ts"],"names":[],"mappings":"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"}
|