A Nagios/Icinga module to submit notifications to mqttwarn
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
notify-by-mqtt.py

README.md

notify-by-mqtt

a Nagios/Icinga notification module which wraps data into JSON and fires it off to an MQTT broker.

icinga.cfg

enable_environment_macros=1

commands.cfg

define command{
    command_name notify-by-mqtt
    command_line /home/jpm/icinga/notify-mqtt.py
    }

contacts_icinga.cfg

define contact{
        contact_name                    root
        alias                           Root
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r
        host_notification_options       d,r
#        service_notification_commands   notify-service-by-email
        service_notification_commands   notify-by-mqtt
#        host_notification_commands      notify-host-by-email
        host_notification_commands      notify-by-mqtt
        email                           root@localhost
        }

As an example payload for a host notification:

{
    "_type": "icinga", 
    "date": "2014-04-04", 
    "eventstarttime": "1396621975", 
    
    "hostdisplayname": "localhost", 
    "hostname": "localhost", 
    "hostoutput": "PING OK - Packet loss = 0%, RTA = 0.34 ms",
    "hoststate": "UP",
    "hoststateid": "0",
    "hoststatetype": "HARD", 
    
    "shortdatetime": "2014-04-04 16:38:25", 
    "time": "16:38:25", 
    "timet": "1396622305"
}

As an example payload for a service notification:

{
    "_type": "icinga", 
    "date": "2014-04-04", 
    "eventstarttime": "1396621975", 
    
    "hostdisplayname": "localhost", 
    "hostname": "localhost", 
    "hoststatetype": "HARD", 
    
    "servicedesc": "JPtest", 
    "servicedisplayname": "JPtest", 
    "serviceoutput": "file /tmp/f1: ENOENT", 
    "servicestate": "CRITICAL", 
    "servicestateid": "2", 
    
    "shortdatetime": "2014-04-04 16:38:25", 
    "time": "16:38:25", 
    "timet": "1396622305"
}