As I have started to work on the Ethereum platform, one of my first needs as a system administrator is the monitoring of the health of my node. Many projects allow you the monitor, one of them is https://ethstats.net/ which is very cool. In it, you can see your general node health, but to be honest, it is quite a hassle to have the web page on, not to mention you need to install some nodejs application in your server.
Because of this, I decided to write my own Ethereum Nagios Plugins. As I have already a Nagios deployment that monitors no less than 40 servers, it is a good idea to send an alert if something is going wrong.
The initial release of these plugins will help any system administrator to know the following:
- Detection when the local blockchain is getting out of sync, by default (if you don't specify anything else) it will send you a CRITICAL signal if sync is behind 10 blocks, and a WARNING signal if it is behind 5 blocks.
- Detection when the mining hash rate speed is slowing or mining activity has stopped at all, if you have one full node and many workers, usually you have a stable Hashing speed, when some workers start going down your speed will decrease and you will get an alert if this is happening.
- Detection when you are not connected to enough peers, by default (if you don't specify anything else) it will send you a CRITICAL signal if you are connected to 5 or fewer peers in the network, and a WARNING signal if you are connected to 10 or less. The go-ethereum and the cpp-ethereum projects use 25 peers as a default value.
I will write later a guide to show you all how to implement the plugins. It is quite easy.
Good Luck!