Does anyone know which database tables the NPM Performance Analysis Widget in NPM pulls its data from for things such as AVG CPU Load and Avg % Memory used? Also, What table holds the polling engine % polling rate capacity?
Please and Thank you!
Average CPU/Memory % used can be found within the Orion.CPULoad table.% Polling rate is found within the Orion.PollingUsage table against the 'Orion.Standard.Polling' ScaleFactor in the 'Current Usage' column
Here is a SWQL query bringing back the current polling rate for Polling Engine where EngineID = 1
SELECT ServerName, CurrentUsage AS PollingRateFROM Orion.PollingUsage pINNER JOIN Orion.Engines e ON p.EngineID = e.EngineID WHERE EngineID = 1AND ScaleFactor = 'Orion.Standard.Polling'
Hope this helps
You want to download the Orion SDK and start poking around in SWQL studio, it'll make more sense. You can search for a value and see every table it exists in.https://github.com/solarwinds/OrionSDK
Note with these questions you'll get a slightly different answer sometimes if you don't mention SWQL or SQL as there's some differences in table names (via views/view-type-things)
I'd normally pull it out of Orion.Engines, but that's not where the data lives as such
With the other capacity stats, you've got historical storage vs current storage in play
I can't find a table named Orion.PollingUsage ??
What version of SolarWinds are you running?
2023.1.0
got it working... The only thing I can't seem to find is polling capacity... not sure if they have a filed that stores their calculation, or HOW they get that calculation.... otherwise, this gives me everything that I need. You pointed me in the right direction. Thank you so much!
SELECT ND.NodeID AS ND_NodeID, ND.SysName, ND.IP_Address, ND.EngineID, ND.MachineType, NS.CPUCount, NS.NodeID AS NS_NodeID, NS.SystemUpTime, NS.CPULoad, NS.PercentMemoryUsed, NS.PercentLoss, EN.EngineID AS EN_EngineID, EN.Elements, EN.Nodes, EN.Interfaces, EN.Volumes, EN.PollingCompletion, EV.EngineID AS EV_EngineID, EV.ServerType, EV.RAMInfoFROM [dbo].[NodesData] NDFULL OUTER JOIN [dbo].[NodesStatistics] NS ON ND.NodeID = NS.NodeIDFULL OUTER JOIN [dbo].[Engines] EN ON ND.SysName = EN.ServerNameFULL OUTER JOIN [dbo].[EnvironmentalOverview] EV ON ND.SysName = EV.HostName
great idea. Thank you. I will check this out for sure!