From d743107420e92fb513de771b2a102b70dda281b8 Mon Sep 17 00:00:00 2001 From: igoristic Date: Thu, 10 Dec 2020 14:56:23 -0500 Subject: [PATCH] Fixed filter based on current node (#85615) --- .../components/elasticsearch/node/advanced.js | 6 +----- .../components/elasticsearch/node/node.js | 8 ++------ .../elasticsearch/node_detail_status/index.js | 4 ++-- .../public/views/elasticsearch/nodes/index.js | 5 ----- .../monitoring/server/alerts/base_alert.ts | 17 +++++++++-------- 5 files changed, 14 insertions(+), 26 deletions(-) diff --git a/x-pack/plugins/monitoring/public/components/elasticsearch/node/advanced.js b/x-pack/plugins/monitoring/public/components/elasticsearch/node/advanced.js index 6b72f95a1dbfc..86e8a7d9095f5 100644 --- a/x-pack/plugins/monitoring/public/components/elasticsearch/node/advanced.js +++ b/x-pack/plugins/monitoring/public/components/elasticsearch/node/advanced.js @@ -51,11 +51,7 @@ export const AdvancedNode = ({ nodeSummary, metrics, alerts, nodeId, ...props }) - state.nodeId === nodeId} - /> + state.nodeId === nodeId} /> diff --git a/x-pack/plugins/monitoring/public/components/elasticsearch/node/node.js b/x-pack/plugins/monitoring/public/components/elasticsearch/node/node.js index ac1a5212a8d26..f91e251030d76 100644 --- a/x-pack/plugins/monitoring/public/components/elasticsearch/node/node.js +++ b/x-pack/plugins/monitoring/public/components/elasticsearch/node/node.js @@ -70,14 +70,10 @@ export const Node = ({ - state.nodeId === nodeId} - /> + - state.nodeId === nodeId} /> + {metricsToShow.map((metric, index) => ( diff --git a/x-pack/plugins/monitoring/public/components/elasticsearch/node_detail_status/index.js b/x-pack/plugins/monitoring/public/components/elasticsearch/node_detail_status/index.js index 77d0b294f66d0..85b4d0daddade 100644 --- a/x-pack/plugins/monitoring/public/components/elasticsearch/node_detail_status/index.js +++ b/x-pack/plugins/monitoring/public/components/elasticsearch/node_detail_status/index.js @@ -11,7 +11,7 @@ import { formatMetric } from '../../../lib/format_number'; import { i18n } from '@kbn/i18n'; import { AlertsStatus } from '../../../alerts/status'; -export function NodeDetailStatus({ stats, alerts = {}, alertsStateFilter = () => true }) { +export function NodeDetailStatus({ stats, alerts = {} }) { const { transport_address: transportAddress, usedHeap, @@ -33,7 +33,7 @@ export function NodeDetailStatus({ stats, alerts = {}, alertsStateFilter = () => label: i18n.translate('xpack.monitoring.elasticsearch.nodeDetailStatus.alerts', { defaultMessage: 'Alerts', }), - value: , + value: , }, { label: i18n.translate('xpack.monitoring.elasticsearch.nodeDetailStatus.transportAddress', { diff --git a/x-pack/plugins/monitoring/public/views/elasticsearch/nodes/index.js b/x-pack/plugins/monitoring/public/views/elasticsearch/nodes/index.js index 3ec9c6235867b..834134f80ceeb 100644 --- a/x-pack/plugins/monitoring/public/views/elasticsearch/nodes/index.js +++ b/x-pack/plugins/monitoring/public/views/elasticsearch/nodes/index.js @@ -100,11 +100,6 @@ uiRoutes.when('/elasticsearch/nodes', { ALERT_MEMORY_USAGE, ALERT_MISSING_MONITORING_DATA, ], - filters: [ - { - stackProduct: ELASTICSEARCH_SYSTEM_ID, - }, - ], }, }, }); diff --git a/x-pack/plugins/monitoring/server/alerts/base_alert.ts b/x-pack/plugins/monitoring/server/alerts/base_alert.ts index b345689bdc504..6e89caf43230c 100644 --- a/x-pack/plugins/monitoring/server/alerts/base_alert.ts +++ b/x-pack/plugins/monitoring/server/alerts/base_alert.ts @@ -199,11 +199,12 @@ export class BaseAlert { return accum; } const alertInstance: RawAlertInstance = states.alertInstances[instanceId]; - if (alertInstance && this.filterAlertInstance(alertInstance, filters)) { - accum[instanceId] = alertInstance; - if (alertInstance.state) { + const filteredAlertInstance = this.filterAlertInstance(alertInstance, filters); + if (filteredAlertInstance) { + accum[instanceId] = filteredAlertInstance as RawAlertInstance; + if (filteredAlertInstance.state) { accum[instanceId].state = { - alertStates: (alertInstance.state as AlertInstanceState).alertStates, + alertStates: (filteredAlertInstance.state as AlertInstanceState).alertStates, }; } } @@ -219,15 +220,15 @@ export class BaseAlert { filterOnNodes: boolean = false ) { if (!filterOnNodes) { - return true; + return alertInstance; } const alertInstanceStates = alertInstance.state?.alertStates as AlertNodeState[]; const nodeFilter = filters?.find((filter) => filter.nodeUuid); if (!filters || !filters.length || !alertInstanceStates?.length || !nodeFilter?.nodeUuid) { - return true; + return alertInstance; } - const nodeAlerts = alertInstanceStates.filter(({ nodeId }) => nodeId === nodeFilter.nodeUuid); - return Boolean(nodeAlerts.length); + const alertStates = alertInstanceStates.filter(({ nodeId }) => nodeId === nodeFilter.nodeUuid); + return { state: { alertStates } }; } protected async execute({