Skip to content

Commit

Permalink
Fixed filter based on current node (#85615)
Browse files Browse the repository at this point in the history
  • Loading branch information
igoristic authored Dec 10, 2020
1 parent 617852f commit d743107
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,7 @@ export const AdvancedNode = ({ nodeSummary, metrics, alerts, nodeId, ...props })
</h1>
</EuiScreenReaderOnly>
<EuiPanel>
<NodeDetailStatus
stats={nodeSummary}
alerts={alerts}
alertsStateFilter={(state) => state.nodeId === nodeId}
/>
<NodeDetailStatus stats={nodeSummary} alerts={alerts} />
</EuiPanel>
<EuiSpacer size="m" />
<AlertsCallout alerts={alerts} stateFilter={(state) => state.nodeId === nodeId} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,14 +70,10 @@ export const Node = ({
</h1>
</EuiScreenReaderOnly>
<EuiPanel>
<NodeDetailStatus
stats={nodeSummary}
alerts={alerts}
alertsStateFilter={(state) => state.nodeId === nodeId}
/>
<NodeDetailStatus stats={nodeSummary} alerts={alerts} />
</EuiPanel>
<EuiSpacer size="m" />
<AlertsCallout alerts={alerts} stateFilter={(state) => state.nodeId === nodeId} />
<AlertsCallout alerts={alerts} />
<EuiPageContent>
<EuiFlexGrid columns={2} gutterSize="s">
{metricsToShow.map((metric, index) => (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand All @@ -33,7 +33,7 @@ export function NodeDetailStatus({ stats, alerts = {}, alertsStateFilter = () =>
label: i18n.translate('xpack.monitoring.elasticsearch.nodeDetailStatus.alerts', {
defaultMessage: 'Alerts',
}),
value: <AlertsStatus alerts={alerts} showOnlyCount={true} stateFilter={alertsStateFilter} />,
value: <AlertsStatus alerts={alerts} showOnlyCount={true} />,
},
{
label: i18n.translate('xpack.monitoring.elasticsearch.nodeDetailStatus.transportAddress', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,6 @@ uiRoutes.when('/elasticsearch/nodes', {
ALERT_MEMORY_USAGE,
ALERT_MISSING_MONITORING_DATA,
],
filters: [
{
stackProduct: ELASTICSEARCH_SYSTEM_ID,
},
],
},
},
});
Expand Down
17 changes: 9 additions & 8 deletions x-pack/plugins/monitoring/server/alerts/base_alert.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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,
};
}
}
Expand All @@ -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({
Expand Down

0 comments on commit d743107

Please sign in to comment.