Polling Using WMI versus the new Agent

Currently polling a lot of internal servers using WMI and a couple of remote servers using the agent.  So far, the agent is working great for the remote sites, but are there any performance gains for running the agent locally to collect information versus having WMI polling on a node straight from the Orion server?

  • In terms of bandwidth consumption, our internal testing has seen ~80% reduction with the agent vs. native WMI queries.

  • I've noticed that my application templates seem to have chosen agent based polling without any direction on my part. Is this a known bug?

  • Is that in terms of network bandwidth, or server side performance?  I'm talking server side performance gains...

  • I've seen a definite improvement on resource usage on some of our older slower servers.  There is a lot less consumption of resources by WMI.  The one trade-off I've noted is that it can take a little space on the target with the install and logging created.

  • This is by design. All application templates by default utilize the agent unless no agent is installed; in which case agentless polling is used. This functions the same as the 64bit polling method when/if SAM is installed on a 32bit operating system. In that scenario it will automatically use 32bit polling. The option to override a template to use agentless polling when an agent is installed can be handy in the event you wanted to measure response time of user experience. You would likely get a far more accurate measurement polling from the Orion server than the Agent polling the localhost.

  • Monitoring is far and away faster and more efficient locally. In most cases there is less communication overhead since there's no need to authenticate for most locally collected information. There is of course some small overhead associated with any agent, even if that agent is SNMP or WMI. The agent typically consumes under 1% CPU (0.24% on average) and between 10-100MB of RAM depending on the number and type of jobs being executed. Bandwidth consumption as rob.hock stated above, is ~80% less than that of a WMI managed node.

  • Thanks for the reply. So if I have say 1000 servers running a particular app monitor, and I have an agent on 10 of them, if the app template is set to use agent it will use the agent on those 10 and use (in my case) WMI for the other 990?

  • From what I have read (SolarWinds Knowledge Base :: How do SNMP and WMI polling compare?), WMI takes 5 times longer to poll and likely uses up more resources on your pollers.  I would expect that installing agents on your WMI nodes would reduce the polling load on your pollers, leaving them more resources to poll other things.  It might also reduce the need to purchase an additional poller as you grow if your poller is just gathering data from your agents as opposed to actually performing the WMI polls itself for the Node (CPU, RAM, Disk) and any applications you define to poll via WMI (if you have SAM).

    The following report also supports that WMI uses more resources on the poller than snmp:  SNMP_vs_WMI_20130412.docx.  This document suggests a 10% increase in CPU on the poller using WMI vs snmp against 300 nodes, 2% increase in RAM and 1.5 Kbps incoming bandwidth.

    Based on this information I believe that using the agent could potentially save resources on your pollers and in the case of your pollers running low on resources, could save you from having to purchase an additional poller.  Keep in mind that the Agent documentation says that a single poller only supports 1000 agents as of the initial release of the agent.

  • Hello,

    I read this as well about the maximum number of agents is 1000 per poller. Is this still the case?

    If the agent is less of a use of resources what is the reason a poller can handle more WMI monitored nodes than Agent monitored nodes?