#!/bin/bash

# Alias: Process performance data with PNP4Nagios
# Menu: Addons
# Description:
#  PNP4Nagios is a great addon for storing Nagios performance data
#  into round robin databases. This switch enabled the processing
#  of performance data by pnp. It implies the starting of the daemon
#  "npcd", the rrdcached and load the broker module npcdmod into
#  Nagios.

case "$1" in
   default)
       echo "on"
   ;;
   choices)
       echo "on: enable bulk mode with npcdmod and npcd"
       echo "npcd: enable bulk mode with npcd"
       echo "gearman: enable gearman worker"
       echo "off: disable"
   ;;
   set)
       if [ "$2" == "on" ]
       then
           #mkdir -p $OMD_ROOT/etc/nagios/nagios.d
           if [ -e $OMD_ROOT/etc/nagios/nagios.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_npcdmod.cfg $OMD_ROOT/etc/nagios/nagios.d/pnp4nagios.cfg
           fi
           if [ -e $OMD_ROOT/etc/icinga/icinga.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_npcdmod.cfg $OMD_ROOT/etc/icinga/icinga.d/pnp4nagios.cfg
           fi
           ln -sfn ../../pnp4nagios/apache.conf $OMD_ROOT/etc/apache/conf.d/pnp4nagios.conf
           if [ -s $OMD_ROOT/etc/mod-gearman/perfdata.conf ]; then
               sed -i -e 's/^perfdata=.*$/perfdata=no/' $OMD_ROOT/etc/mod-gearman/perfdata.conf
           fi
       elif [ "$2" == "gearman" ]
       then
           if [ -e $OMD_ROOT/etc/nagios/nagios.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_gearman.cfg $OMD_ROOT/etc/nagios/nagios.d/pnp4nagios.cfg
           fi
           if [ -e $OMD_ROOT/etc/icinga/icinga.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_gearman.cfg $OMD_ROOT/etc/icinga/icinga.d/pnp4nagios.cfg
           fi
           ln -sfn ../../pnp4nagios/apache.conf $OMD_ROOT/etc/apache/conf.d/pnp4nagios.conf
           if [ -s $OMD_ROOT/etc/mod-gearman/perfdata.conf ]; then
               sed -i -e 's/^perfdata=.*$/perfdata=yes/' $OMD_ROOT/etc/mod-gearman/perfdata.conf
           fi
       elif [ "$2" == "npcd" ]
       then
           if [ -e $OMD_ROOT/etc/nagios/nagios.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_npcd.cfg $OMD_ROOT/etc/nagios/nagios.d/pnp4nagios.cfg
           fi
           if [ -e $OMD_ROOT/etc/icinga/icinga.d ] ; then
               ln -sfn ../../pnp4nagios/nagios_npcd.cfg $OMD_ROOT/etc/icinga/icinga.d/pnp4nagios.cfg
           fi
           ln -sfn ../../pnp4nagios/apache.conf $OMD_ROOT/etc/apache/conf.d/pnp4nagios.conf
       else
           rm -f $OMD_ROOT/etc/nagios/nagios.d/pnp4nagios.cfg
           rm -f $OMD_ROOT/etc/icinga/icinga.d/pnp4nagios.cfg
           rm -f $OMD_ROOT/etc/apache/conf.d/pnp4nagios.conf
           if [ -s $OMD_ROOT/etc/mod-gearman/perfdata.conf ]; then
               sed -i -e 's/^perfdata=.*$/perfdata=no/' $OMD_ROOT/etc/mod-gearman/perfdata.conf
           fi
       fi
    ;;
    depends)
        [ "$CONFIG_CORE" != cmc -a "$CONFIG_CORE" != none ]
    ;;

esac
