Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Nagios plugin to monitor bitcoind, to allow escalation of alerts when problems are sensed. Can be used on any Bitcoin variant network.




The easiest way of using this script is to check it out directly from Github into your Nagios plugins directory:

$ cd /usr/lib/nagios/plugins
$ git clone bitcoin

Nagios Commands

Paste the following into the appropriate Nagios command configuration file

define command {
        command_line                   $USER1$/bitcoin/ -u $ARG1$ -p $ARG2$ -H $HOSTADDRESS$ -P $ARG3$ -B $ARG4$ -w $ARG5$ -c $ARG6$ -t blockchain
        command_name                   check_bitcoin_blockchain

define command {
        command_line                   $USER1$/bitcoin/ -u $ARG1$ -p $ARG2$ -H $HOSTADDRESS$ -P $ARG3$ -B $ARG4$ -w $ARG5$ -c $ARG6$ -t connections
        command_name                   check_bitcoin_connections

define command {
        command_line                   $USER1$/bitcoin/ -u $ARG1$ -p $ARG2$ -H $HOSTADDRESS$ -P $ARG3$ -B $ARG4$ -w $ARG5$ -c $ARG6$ -t time
        command_name                   check_bitcoin_time

define command {
       command_line                   $USER1$/bitcoin/ -u $ARG1$ -p $ARG2$ -H $HOSTADDRESS$ -P $ARG3$ -B $ARG4$ -i "$ARG5" -t warnings
       command_name                   check_bitcoin_warnings

Nagios Services

Paste the following into your Nagios service configuration file, changing the values as needed

define service {
        check_command                  check_bitcoin_connections!<USERNAME>!<PASSWORD>!<PORT>!<CURRENCY>!<WARN>!<CRIT>
        host_name                      <HOSTNAME>
        service_description            Bitcoind Connections
        use                            generic-service

define service {
        check_command                  check_bitcoin_blockchain!<USERNAME>!<PASSWORD>!<PORT>!<CURRENCY>!<WARN>!<CRIT>
        host_name                      <HOSTNAME>
        service_description            Bitcoind Blockchain
        use                            generic-service

define service {
        check_command                  check_bitcoin_time!<USERNAME>!<PASSWORD>!<PORT>!<CURRENCY>!<WARN>!<CRIT>
        host_name                      <HOSTNAME>
        service_description            Bitcoind Block Time
        use                            generic-service

define service {
        check_command                  check_bitcoin_warnings!<USERNAME>!<PASSWORD>!<PORT>!<CURRENCY>!<WARNINGS>
        host_name                      <HOSTNAME>
        service_description            Bitcoind Warnings
        use                            generic-service

Service Descriptions

Check Type Description Example output
blockchain Check the height of the node blockchain against remote APIs CRITICAL - node block height = 380882, global block height = 494377
connections Check the number of connections (peers) reported OK - network connections = 8
warnings Check for any warnings on the network OK
time Check the difference between the current time and the last generated block WARNING - last block = 2504 secs ago

Command line options

Argument Description Example
-u RPC username rpcuser
-p RPC password rpcpass
-H RPC host localhost
-P RPC port 8332
-B Currency to use (only for blockchain check - any not supported will trigger an alert) btc
-w Warning level to use for Nagios output 5
-c Critical level to use for Nagios output 10
-t Type of check to run - either blockchain, connections, time or warnings blockchain
-i Any warning messages to suppress (separated by ;) when using the warnings check type pre-release test build;Unknown block versions


No releases published


No packages published


You can’t perform that action at this time.