ICMP Ping as internal parameter

Started by bdefloo, May 09, 2012, 06:03:14 PM

Previous topic - Next topic

bdefloo

Hello,

One of the most basic things I use NetXMS for is monitoring if a node is reachable over the network or not. Most of the times, the nodes support either a NetXMS agent or SNMP, but I have quite a few that don't either.

NetXMS is capable of detecting if these nodes are up or down by using a ICMP ping, which is good, but the only way to do anything with that information seems to be relying on the SYS_NODE_DOWN event or its effects (such as the status of the node becoming critical)

I'd find it very useful if the result of the ICMP ping could be accessed in a DCI, as for example an internal parameter (similar to the Status)

Victor Kirhenshtein

Hi!

Currently you can do this using PING subagent. You can load it on agent on management server itself, and configure Icmp.Ping parameters for all nodes you want to ping. If you wish to have those parameters on each target node and not on management server node, you can do this by configuring Icmp.Ping parameters on target nodes and setting proxy node to management server node.

Best regards,
Victor

bdefloo

I hadn't thought of using the NetXMS Agent proxy setting for that, thanks!

For anyone who comes across this post in the future, you also need to add
EnableProxy = yes
to the agent configuration file for the proxy, and add the device that is to be pinged to the trusted nodes list if CheckTrustedNodes is enabled.

On the wiki, on the PING Subagent page, it's mentioned Icmp.Ping shouldn't be used for instant monitoring. Should I interpret this that if I want to check, say 100 nodes every minute, I'd probably better balance them a bit between several nodes with NetXMS agents?

Victor Kirhenshtein

One correction - you don't need to set EnableProxy = yes on agent for this configuration to work. It's a bit confusing, but it's a different things - agent proxy and proxy DCI. Agent proxy (configured on communication tab in node properties) is connecting to remote agent via proxy agent. Proxy DCI - displaying DCI on one node but really collecting data from another (proxy) node. It could be any type of DCI, including internal.

As for Icmp.Ping, it's more about using preconfigured targets in ping subagent (configured via Target = xxx parameter in PING section of nxagentd.conf) and then Icmp.AvgPingTime instead of Icmp.Ping for collecting data. But if you have hundreds of ping targets, then separating them between several nodes could be a good idea too.

Best regards,
Victor