[CentOS-es] Script Nagios

Guille griola en gmail.com
Mar Abr 22 15:16:14 UTC 2008


Lo que deberias hacer es verificar si los datos son traidos ejecutando el
script con el usuario de nagios ya que es el que usa el NRPE.

Saludos!.

El día 22 de abril de 2008 12:08, Fequay <fequay en esfera.cl> escribió:

> buenas,
>
> Tengo el siguiente shell script configurados en una maquina
> Linux, al ejecutar el script en la maquina local, me trae
> los datos al pasarlos por el NRPE hacia la maquina con
> Nagios, no me lleva los datos.
>
> Este el el programa:
>
> #!/bin/bash
>
> debug=$(echo "$@" | sed -e "s/.*\(-D\).*/\1/g")
>
> if [ "$debug" = "-D" ]; then
>    opcion=$( expr "$#" - 1 )
>  else
>    opcion="$#"
> fi
>
>
> function retorna_estado {
>
> ##############################################################################################
>
> status=$(/usr/sbin/asterisk -rx "core show channels" | grep
> "active calls" | awk '{ print $3" "$2" "$1}')
> register=$(/usr/sbin/asterisk -rx "sip show peers " | grep
> "OK" | awk '{ print $3" "$2" "$1}' | wc -l)
> usadas=$(echo $status | awk '{ print $3 }')
> libres=$(echo "$register - $usadas" | bc)
> #echo "Call simultaneas: $usadas Total Registros: $register
> Chanels No Activos: $libres"
>
>
> ##############################################################################################
>
> prused=$(echo "$usadas - $libres" | bc -l | sed -e
> "s/\(^.....\).*/\1/g" )
> #echo $register
> echo "Call OK: Totalles $(echo "$usadas")x, Registros
> $register x, Free $libres x"
> #echo $register
> exit 0
> if [ "$1" = 0 ]; then
> echo "-"
>  ##################################
>  elif [ "$1" = 1 ]; then
>  if [ "$libres" -le "$(echo "$2" | bc)" ]; then
>  echo "Call WARNING:$(echo "$register" | bc )Kb, Used:$(echo
> "$usadas" | bc )Kb, Free:$(echo "$libres" | bc )Kb $status"
>       exit 1
>  elif [ "$libres" -gt "$(echo "$2" | bc)" ];then
>  echo "Call OK: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>         exit 0
> fi
> ####################################
> elif [ "$1" = 2 ];then
>
>  if [ "$libres" -le "$(echo "$2" | bc)" ];then
>
>  echo "MEM CRITICAL: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>        exit 2
>  elif [ "$libres" -gt "$(echo "$2" | bc)" ];then
>
>  echo "MEM OK: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>        exit 0
>  fi
> ####################################
> elif [ "$1" = 3 ];then
>
>  if [ "$libres" -le "$(echo "$3" | b) " ];then
>
>  echo "MEM CRITICAL: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>        exit 2
>  elif [ "$libres" -le "$(echo "$2" | bc)" ];then
>
>  echo "MEM WARNING: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>            exit 1
>  elif [ "$libres" -gt "$(echo "$2" | bc)" ];then
>  echo "MEM OK: Total:$(echo "$register" | bc )Kb,
> Used:$(echo "$usadas" | bc )Kb, Free:$(echo "$libres" | bc
> )Kb $status"
>         exit 0
>
> fi
>
> ####################################
> return 0
> fi
> }
>
>
> if [ "$1" = "-?" ];then
>
> echo ""
> echo "uso: $0 -w INTEGER -c INTEGER -D"
> echo "-w : umbral de warning(INTEGER)"
> echo "-c : umbral de critical(INTEGER)"
> echo "-D : Debug de memoria(APAN)"
> echo "-? : esta ayuda"
> echo ""
>
>        elif [ "$#" = 1 ] && [ "$1" = "-D" ] || [ "$#" = 0
> ];then
>
>                retorna_estado 0
>
>        elif [ "$opcion" = 2 ];then
>
>        if [ "$1" == "-w" ] && [ "$2" != "" ]; then
>                retorna_estado 1 $2
>
>                elif [ "$1" == "-c" ] && [ "$2" != "" ];then
>                        retorna_estado 2 $2
>
>                else
>                        echo "$0: error de parametros"
>                        exit 4
>        fi
>
>        elif [ "$opcion" = 4 ];then
>
>        if [ "$1" == "-w" ] && [ "$2" != "" ] && [ "$3" ==
> "-c" ] && [ "$4" != "" ];then
>                  retorna_estado 3 $2 $4
>        else
>                echo "$0: error de parametros"
>                exit 4
>        fi
>
>        else
>
>        echo "$0: error en parametros"
>        echo ""
>        echo "uso: $0 -w INTEGER -c INTEGER"
>        echo "-w : umbral de warning(INTEGER)"
>        echo "-c : umbral de critical(INTEGER)"
>        echo "-? : esta ayuda"
>        echo ""
>
> fi
>
> Atte.
> Fernando Quil Ayala
>
> _______________________________________________
> CentOS-es mailing list
> CentOS-es en centos.org
> http://lists.centos.org/mailman/listinfo/centos-es
>



-- 
Take it easy
Guille
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://lists.centos.org/pipermail/centos-es/attachments/20080422/78ea92a9/attachment.htm


Más información sobre la lista de distribución CentOS-es