Benutzer-Werkzeuge

Webseiten-Werkzeuge


nagiosnotification

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
nagiosnotification [2018/04/03 14:17]
dh3wr angelegt
nagiosnotification [2018/04/03 14:37]
dh3wr
Zeile 3: Zeile 3:
 By default, Nagios can send emails to registered contact. Fortunately,​ there is also a contact property names ''​pager''​ which can be used very conveniently. Two things have to be added to your nagios config in order to reveice the Nagios notifications via DAPNET. By default, Nagios can send emails to registered contact. Fortunately,​ there is also a contact property names ''​pager''​ which can be used very conveniently. Two things have to be added to your nagios config in order to reveice the Nagios notifications via DAPNET.
  
-===== Define ​DAPNET Username and Password ​=====+===== Define ​commands to send paging calls =====
  
 +Edit ''​commands.cfg''​ and add the following lines:
 +<​code>​
 +# '​notify-host-by-pager'​ command definition
 +define command{
 +        command_name ​   notify-host-by-pager
 +        command_line ​   /​usr/​bin/​curl -H "​Content-Type:​ application/​json"​ -X POST -u $USER12$:​$USER13$ -d '{ "​text":​ "​NAGIOS $NOTIFICATIONTYPE$:​ $HOSTNAME$ $HOSTSTATE$",​ "​callSignNames":​ ["​$CONTACTPAGER$"​],​ "​transmitterGroupNames":​ ["​$CONTACTADDRESS1$"​],​ "​emergency":​ false }' $USER11$/​calls
 +        }
  
 +# '​notify-service-by-pager'​ command definition
 +define command{
 +        command_name ​   notify-service-by-pager
 +        command_line ​   /​usr/​bin/​curl -H "​Content-Type:​ application/​json"​ -X POST -u $USER12$:​$USER13$ -d '{ "​text":​ "​NAGIOS $NOTIFICATIONTYPE$:​ $HOSTNAME$ $SERVICEDESC$ $SERVICESTATE$",​ "​callSignNames":​ ["​$CONTACTPAGER$"​],​ "​transmitterGroupNames":​ ["​$CONTACTADDRESS1$"​],​ "​emergency":​ false }' $USER11$/​calls
 +        }
 +
 +</​code>​
 +
 +===== Define DAPNET API-URL, username and password =====
 +As you see, there are macros ''​$USER11$''​ to ''​$USER13$''​ used. They should contain the API-URL, your DAPNET username and password. Define them in the ''​resource.cfg'':​
 +<​code>​
 +$USER11$=http://​dapnet.db0sda.ampr.org:​8080
 +$USER12$=dl1abc
 +$USER13$=VERYSCECRETPASSWORD
 +</​code>​
 +
 +If you don't have HAMNET access to dapnet.db0sda.ampr.org,​ use ''​http://​hampager.de/​api''​ without port (default 80 is right) or use your own DAPNET Core's API.
 +
 +===== Setup contacts =====
 +Edit ''​contacts.cfg''​ and add the pager subscriber as set in DAPNET and the notification commands:
 +<​code>​
 +define contact{
 +        contact_name ​                   dh3wr
 +        alias                           Ralf Wilke
 +        service_notifications_enabled ​  1
 +        host_notifications_enabled ​     1
 +        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,​notify-service-by-pager
 +        host_notification_commands ​     notify-host-by-email,​notify-host-by-pager
 +        email                           ​spam@myemail.cl
 +        pager                           dh3wr
 +        address1 ​                       dl-nw
 +        }
 +
 +</​code>​
 +The ''​pager''​ entry defines the subscriber on DAPNET, the ''​address1''​ defines the transmitter group. Remember to add the commands just created.
 +
 +{{:​icons:​warning.png?​nolink |}}{{ :​icons:​warning.png?​nolink|}}Attention:​ In order to minimize traffic on the DAPNET, please select a transmitter group just big enough to fulfill your requirements. Not whole Europe wants to be informed, that you disk space is below 10%.
 +
 +===== Assign the contact to the host or service =====
 +Either use the template or define at each host and service the contacts you want to notify.
 +<​code>​
 +define host{
 +        name                            generic-host-rwthafu ​   ; The name of this host template
 +        notifications_enabled ​          ​1 ​      ; Host notifications are enabled
 +        event_handler_enabled ​          ​1 ​      ; Host event handler is enabled
 +        flap_detection_enabled ​         1       ; Flap detection is enabled
 +        failure_prediction_enabled ​     1       ; Failure prediction is enabled
 +        process_perf_data ​              ​1 ​      ; Process performance data
 +        retain_status_information ​      ​1 ​      ; Retain status information across program restarts
 +        retain_nonstatus_information ​   1       ; Retain non-status information across program restarts
 +        check_command ​                  ​check-host-alive
 +        max_check_attempts ​             10
 +        notification_interval ​          0
 +        notification_period ​            24x7
 +        notification_options ​           d,u,r
 +        contacts ​                       rwthafu,​dh3wr
 +        register ​                       0       ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
 +        }
 +</​code>​
 +
 +===== Example =====
 +This is how the result looks like:
 +{{ :​swissphone:​swissphone2_300.jpg?​direct |}}
  
nagiosnotification.txt · Zuletzt geändert: 2018/04/05 17:16 von dh3wr