Network Management

Find nodes that are not Polling CPU data

This article instructs how you can determine if nodes are actively polling. Nodes are not collecting data, volumes or interfaces aren't polling, not receiving data. Orion health check.

First published date

9/13/2019 8:10 PM

Last published date

6/18/2020 5:02 AM

Overview

Solarwinds Orion typically uses ICMP polling to determine status and response time for nodes. Even when polled via SNMP and WMI. There is limited measures built into Orion that will indicate there is an issue with polling CPU data from a SNMP or WMI managed node. This article demonstrates a custom way this can be accomplished.

Product section

Orion Platform

Resolution

A custom SQL query can be ran against the Orion database. Utilize Database Manager or SQL Server Management Studio to execute the following query:

This query dials into the existence of node CPU pollers. Then checks to see if there is CPU logged for the corresponding node in the past hour. This query can easily be modified to show just WMI nodes, or just SNMP nodes. You could also change the timeframe to minutes, hours, days, etc.
  • SNMP cpu poller: N.Cpu.SNMP.HrProcessorLoad
  • WMI cpu poller: N.Cpu.WMI.Windows
-- Scripts are not supported under any SolarWinds support program or service.
-- Scripts are provided AS IS without warranty of any kind. SolarWinds further
-- disclaims all warranties including, without limitation, any implied warranties
-- of merchantability or of fitness for a particular purpose. The risk arising
-- out of the use or performance of the scripts and documentation stays with you.
-- In no event shall SolarWinds or anyone else involved in the creation,
-- production, or delivery of the scripts be liable for any damages whatsoever
-- (including, without limitation, damages for loss of business profits, business
-- interruption, loss of business information, or other pecuniary loss) arising
-- out of the use of or inability to use the scripts or documentation.
SELECT 
    p.NetObjectID, 
    n.Caption, 
    n.ObjectSubType,
    c.DateTime
FROM Pollers p
LEFT JOIN NodesData n 
  ON n.NodeID = p.NetObjectID
OUTER APPLY (
            SELECT TOP (1) * 
            FROM CPULOad c 
              WHERE c.NodeID = p.NetObjectID 
              ORDER BY DateTime DESC
            ) c
WHERE p.PollerType LIKE 'N.Cpu.%'
  AND c.DateTime <= DATEADD(Hour, -1,GETDATE())
  AND n.UnManaged = 'False'

If you own the Server & Application Product, you may set up a SQL User Experience Monitor against the Orion database. However, this component monitor only supports a statistic output. You will need to have a statistic such as a count of the nodes. Something such as: 
SELECT COUNT(p.NetObjectID)
FROM Pollers p
LEFT JOIN NodesData n 
  ON n.NodeID = p.NetObjectID
OUTER APPLY (
            SELECT TOP (1) * 
            FROM CPULOad c 
              WHERE c.NodeID = p.NetObjectID 
              ORDER BY DateTime DESC
            ) c
WHERE p.PollerType LIKE 'N.Cpu.%'
  AND c.DateTime <= DATEADD(Hour, -1,GETDATE())
  AND n.UnManaged = 'False'
**Please be aware that the above query is a custom script and is for informational use only. Solarwinds support does not support the writing of custom scripts.