Skip to content

Commit

Permalink
[Obs Alerts table] Fix error on clicking alert reason message (elasti…
Browse files Browse the repository at this point in the history
…c#193693)

Resolves elastic#193692

(cherry picked from commit 2304fb6)
  • Loading branch information
benakansara committed Sep 23, 2024
1 parent b3311a9 commit 8122454
Showing 1 changed file with 32 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,9 @@ export const mapRuleParamsWithFlyout = (alert: TopAlert): FlyoutThresholdData[]
switch (ruleId) {
case OBSERVABILITY_THRESHOLD_RULE_TYPE_ID:
return observedValues.map((observedValue, metricIndex) => {
const criteria = ruleCriteria[metricIndex] as CustomMetricExpressionParams;
const criteria = Array.isArray(ruleCriteria)
? (ruleCriteria[metricIndex] as CustomMetricExpressionParams)
: (ruleCriteria as CustomMetricExpressionParams);
const fields = criteria.metrics.map((metric) => metric.field || 'COUNT_AGG');
const comparator = criteria.comparator;
const threshold = criteria.threshold;
Expand Down Expand Up @@ -118,12 +120,20 @@ export const mapRuleParamsWithFlyout = (alert: TopAlert): FlyoutThresholdData[]

case METRIC_THRESHOLD_ALERT_TYPE_ID:
return observedValues.map((observedValue, metricIndex) => {
const criteria = ruleCriteria[metricIndex] as BaseMetricExpressionParams & {
metric: string;
customMetrics: Array<{
field?: string;
}>;
};
const criteria = Array.isArray(ruleCriteria)
? (ruleCriteria[metricIndex] as BaseMetricExpressionParams & {
metric: string;
customMetrics: Array<{
field?: string;
}>;
})
: (ruleCriteria as BaseMetricExpressionParams & {
metric: string;
customMetrics: Array<{
field?: string;
}>;
});

let fields: string[] = [];
const metric = criteria.metric;
const customMetric = criteria.customMetrics;
Expand Down Expand Up @@ -157,14 +167,21 @@ export const mapRuleParamsWithFlyout = (alert: TopAlert): FlyoutThresholdData[]

case METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID:
return observedValues.map((observedValue, metricIndex) => {
const { threshold, customMetric, metric, comparator } = ruleCriteria[
metricIndex
] as BaseMetricExpressionParams & {
metric: string;
customMetric: {
field: string;
};
};
const criteria = Array.isArray(ruleCriteria)
? (ruleCriteria[metricIndex] as BaseMetricExpressionParams & {
metric: string;
customMetric: {
field: string;
};
})
: (ruleCriteria as BaseMetricExpressionParams & {
metric: string;
customMetric: {
field: string;
};
});

const { threshold, customMetric, metric, comparator } = criteria;
const metricField = customMetric?.field || metric;
const thresholdFormatted = threshold.map((thresholdToFormat) => {
if (
Expand Down

0 comments on commit 8122454

Please sign in to comment.