Prometheus: Expr undefined at runtime (#70010)

* null/undefined expression default to empty string
pull/69648/head
Galen Kistler 3 years ago committed by GitHub
parent 7ec91990ff
commit c1fe8e8927
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      public/app/plugins/datasource/prometheus/querybuilder/state.ts

@ -36,7 +36,7 @@ function getDefaultEditorMode(expr: string, defaultEditor: QueryEditorMode = Que
* Returns query with defaults, and boolean true/false depending on change was required
*/
export function getQueryWithDefaults(
query: PromQuery,
query: PromQuery & { expr?: string },
app: CoreApp | undefined,
defaultEditor?: QueryEditorMode
): PromQuery {
@ -47,7 +47,8 @@ export function getQueryWithDefaults(
}
// default query expr is now empty string, set in getDefaultQuery
if (query.expr === '') {
// While expr is required in the types, it is not always defined at runtime, so we need to check for undefined and default to an empty string to prevent runtime errors
if (!query.expr) {
result = { ...result, expr: '', legendFormat: LegendFormatMode.Auto };
}

Loading…
Cancel
Save