Network Management
Unmanaged or Down Node Displays Stale CPU Data in "Nodes with High CPU Load" or Top XX Widgets
When a node is powered off, marked Down, or unmanaged in the SolarWinds Platform, the built-in "Nodes with High Average CPU Load" (and other Top XX) widgets may continue displaying the node's last polled CPU value indefinitely. This is by-design behavior — the Platform retains the last polled value in the database and the OOTB widget does not filter out unmanaged or Down nodes.
First published date
Last published date
Overview
Environment
-
SolarWinds Platform (all versions)
-
Network Performance Monitor (NPM)
-
Any built-in Top XX or "Nodes with High Average CPU Load" widget (ResourceID 780)
Symptoms
-
A node that is powered off, Down, or unmanaged continues to appear in the "Nodes with High Average CPU Load" widget with its last polled CPU percentage (e.g., 99%)
-
The node displays the Unmanaged status icon (blue circle) or Down status icon (red) in the widget
-
The stale value persists indefinitely until the node is either re-managed and re-polled, or deleted from SolarWinds
Product section
Cause
Two platform behaviors combine to produce this issue:
1. The CPULoad column retains the last polled value indefinitely.
When a node is unmanaged, polling stops but the CPULoad value in the Nodes/NodesData table is NOT reset to 0 or NULL. The SolarWinds Platform preserves all configuration, entity relationships, pollers, custom properties, and historical statistics when a node is unmanaged — nothing is deleted or modified beyond the unmanage flag itself. The official KB article confirms: "Polling jobs are suspended, so no further data is collected."
Reference: What happens when I unmanage a node in the SolarWinds Platform
2. The built-in "Nodes with High Average CPU Load" widget does not exclude unmanaged or Down nodes.
The SWQL query used by the OOTB widget (ResourceID 780, source method TopXXSWQLDAL.GetCPULoad) contains only:
WHERE CPULoad >= 0
ORDER BY CPULoad DESC
There is no filter for UnManaged = FALSE or Status != Unmanaged/Down. Any node with a CPULoad value >= 0 will appear in the widget regardless of its managed state or operational status.
Resolution
Option A — Edit the widget to exclude unmanaged and Down nodes (recommended, no downtime required)
-
Navigate to the dashboard view containing the "Nodes with High Average CPU Load" widget
-
Click the Edit button on the widget
-
Add a filter condition to exclude unmanaged nodes:
-
Filter: "Unmanaged" → "is equal to" → "No"
-
-
Optionally add a second filter to exclude Down nodes:
-
Filter: "Status" → "is not equal to" → "Down"
-
-
Save the widget
After applying the filter, unmanaged and Down nodes will no longer appear in the widget even if they retain stale CPU values in the database.
Option B — Delete the node from SolarWinds (no downtime required)
If the server is permanently decommissioned:
-
Navigate to the node's details page or Manage Nodes
-
Delete the node from SolarWinds
-
Wait for DB Maintenance to run (default schedule: daily) — the orphaned data will be automatically cleaned up
After deletion and DB Maintenance, the node will no longer appear in any widget.
Option C — Re-manage and re-poll the node (no downtime required)
If the server is back online and should be actively monitored:
-
Navigate to Manage Nodes, select the node, and click Manage Again from the More Actions menu
-
Wait for the next polling cycle (default: 10 minutes for Statistics Poll Interval)
-
The CPULoad value will update to the current actual CPU utilization
Notes
-
This behavior applies to all Top XX widgets that read current CPULoad, PercentMemoryUsed, ResponseTime, or PercentLoss from the Nodes entity — not just the CPU widget
-
DB Maintenance does NOT clear stale CPULoad values on unmanaged nodes — it only removes orphaned data from deleted nodes
-
If using custom SWQL-based resources or reports, add
WHERE UnManaged = FALSEto exclude unmanaged nodes from results