Network Management
CPU load alert did not trigger
This article discusses an issue where the CPU load alerts that the customer setup did not trigger even though the Orion node summary shows that a CPU went above the threshold configured on the alert.
First published date
Last published date
Overview
Product section
Cause
Resolution
The alert in the following example checks the average CPU load of each node. This is the reason why it did not trigger on 1 of the nodes that show high CPU utilization on 1 of the 4 CPUs. The average CPU load of this node by the time a simulation was performed was 12%. The time period when the SolarWinds Platform should have triggered the alert as expected only shows 36.25% CPU average utilization(CPU 1=100% + CPU 2=3% + CPU 3=12% + CPU 4=30% / 4 is equal to 36.25%).
There is no native alert that monitors the CPU load of each of the CPU cores of a node. However, you may create an alert and use a custom SQL query that checks for the utilization of each of the CPU of a node (choose I want to alert on Custom SQL Alert).
Use the basic SQL query below as an example: This looks for a node that has 'test' or 'test2' custom properties and has a CPU load of more than 1 percent of CPU utilization. Work with your database admin to fully customize the SQL query as we do not support customization of the SQL queries. We can only provide you with the tables needed to fetch the information.
-- 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 nodes.NodeID, nodes.Caption, CPUMultiLoad.TimeStampUTC, CPUMultiLoad.AvgLoad from Nodes join CPUMultiLoad on Nodes.NodeID = CPUMultiLoad.NodeID join NodesCustomProperties on Nodes.NodeID = NodesCustomProperties.NodeID where NodesCustomProperties.City ='test' OR NodesCustomProperties.City ='test3' AND DATEDIFF(mi, CPUMultiLoad.TimeStampUTC, SYSUTCDATETIME()) < 5 and CPUMultiLoad.AvgLoad > 1
If this query resulted in at least 1 row. The alert should trigger.