PowerLogic EGX300 Monitoring with Nagios

The EGX300 is an Ethernet-based device providing a transparent interface between Ethernet-based networks and field devices. Field devices include meters, monitors, protective relays, PLCs, trip units, motor controls, and other devices that communicate using Modbus, Jbus, or PowerLogic protocol. The EGX300 uses Modbus TCP/IP protocol to access field device information across a local area network (LAN) or a wide area network (WAN).

And all information is available from Embedded Web Interface. Sounds cool huh?

However, what if you have many similar devices like this, wouldn’t you want to see all data in one single place like Monitoring system such as Nagios or Zabbix?

I bet you do. 🙂

This task was given to me months ago: to get vital readings from The PowerLogic EGX300 interface and embed it to Nagios Web Monitoring server.

Its time to check if check_modbus is working by typing it in shell.You should receive lots of help output. However, if check_modbus is reporting that it cannot find libmodbus, this might help:[root@ /]# touch /etc/ld.so.conf.d/libc.conf[root@ /]# echo "/usr/local/lib" >/etc/ld.so.conf.d/libc.conf

Verify if library can now be seen by system, Run:

[root@ /]# ldconfig -v | grep libmodbus

By itself “check_modbus” has great capabilities, far beyond our needs.

If you are willing to know what it can do type: “man check_modbus”

So, we have “check_modbus” working but we still need some wrapper so Nagios would understand the output according to its standards.

Therefore, i ‘ve decided to create my own wrapper on bash which can be easily extended if required.