Alerting: Fix Graphite subqueries (#80744)

This commit is contained in:
Gilles De Mey 2024-01-18 15:15:21 +01:00 committed by GitHub
parent bb2e0dad22
commit 8a4bd85efd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 8 additions and 4 deletions

View File

@ -136,6 +136,9 @@ export const QueryWrapper = ({
}
const showVizualisation = data.state !== LoadingState.NotStarted;
// ⚠️ the query editors want the entire array of queries passed as "DataQuery" NOT "AlertQuery"
// TypeScript isn't complaining here because the interfaces just happen to be compatible
const editorQueries = cloneDeep(queries.map((query) => query.model));
return (
<Stack direction="column" gap={0.5}>
@ -155,7 +158,7 @@ export const QueryWrapper = ({
onRemoveQuery={onRemoveQuery}
onAddQuery={() => onDuplicateQuery(cloneDeep(query))}
onRunQuery={onRunQueries}
queries={queries}
queries={editorQueries}
renderHeaderExtras={() => <HeaderExtras query={query} index={index} error={error} />}
app={CoreApp.UnifiedAlerting}
hideDisableQuery={true}

View File

@ -76,7 +76,7 @@ export const GraphiteQueryEditorContext = ({
() => {
if (needsRefresh && state) {
setNeedsRefresh(false);
onChange({ ...query, target: state.target.target });
onChange({ ...query, target: state.target.target, targetFull: state.target.targetFull });
onRunQuery();
}
},
@ -92,8 +92,8 @@ export const GraphiteQueryEditorContext = ({
datasource: datasource,
range: range,
templateSrv: getTemplateSrv(),
// list of queries is passed only when the editor is in Dashboards. This is to allow interpolation
// of sub-queries which are stored in "targetFull" property used by alerting in the backend.
// list of queries is passed only when the editor is in Dashboards or Alerting. This is to allow interpolation
// of sub-queries which are stored in "targetFull" property. This is used by alerting in the backend.
queries: queries || [],
refresh: () => {
// do not run onChange/onRunQuery straight away to ensure the internal state gets updated first

View File

@ -14,6 +14,7 @@ export interface GraphiteQuery extends DataQuery {
queryType?: string;
textEditor?: boolean;
target?: string;
targetFull?: string;
tags?: string[];
fromAnnotations?: boolean;
}