elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  AYUDA con Script para un plugin de perl!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: AYUDA con Script para un plugin de perl!  (Leído 2,073 veces)
Kithai

Desconectado Desconectado

Mensajes: 22


Ver Perfil
AYUDA con Script para un plugin de perl!
« en: 16 Noviembre 2016, 10:44 am »

Saludos!!

Estoy tratando de realizar un script en la empresa donde estoy de practicas, y mi talon de aquiles es la programacion  :-X :-X
Se trata de un script que lance un plugin en perl para Nagios, y dependiendo del texto resultante de la ejecucion de ese plugin, dar un valor de salida "exit 0" o "exit 2" acompañado de un texto a poder ser
Especifico, si en el texto resultante de la ejecucion del PLUGIN existe la palabra CRITICAL solo 1 vez, el script deberia dar "exit 0" y un texto en plan "Tranquilos, todo va bien".
En cambio, si en dicho texto existe la palabra CRITICAL mas de una vez, acabar con "exit 2" mas texto acompañante de alerta

Para aclarar, el valor 0 le dice a nagios que el servicio chequeado esta OK, el 2 le dice que pinte CRITICAL

La putada es que no puedo probar la ejecucion del script "al vuelo" indefinidamente, pues la maquina esta en proceso supervisando servicios criticos de produccion, por lo tanto necesito minimizar los intentos fallidos al minimo

Se que para contabilizar el las palabras puedo usar grep CRITICAL -c
Pero poco mas....

Voy modificando este script que usan ellos que hace algo parecido, pero no lo entiendo del todo:

#!/bin/bash

Código
  1. PROG=/usr/local/nagios/libexec/check_mssql_health
  2. HOST=$1
  3. FILE=/tmp/check_mssqlhealth$1.txt
  4. OK=$2
  5.  
  6. $PROG $HOST > $FILE
  7.  
  8. grep CRITICAL -c $OK $FILE
  9. if [ $? -eq 1 ] ; then
  10.  echo "OK!"
  11.  exit 0
  12. else
  13.  echo "ERROR!"
  14.  exit 2
  15. fi
  16.  
Cualquier ayuda sera muy agradecida!!

Muchas gracias de antemano!



« Última modificación: 16 Noviembre 2016, 11:16 am por Kithai » En línea

Ocelot1994

Desconectado Desconectado

Mensajes: 40



Ver Perfil
Re: AYUDA con Script para un plugin de perl!
« Respuesta #1 en: 21 Noviembre 2016, 16:58 pm »

Saludos!!

Estoy tratando de realizar un script en la empresa donde estoy de practicas, y mi talon de aquiles es la programacion  :-X :-X
Se trata de un script que lance un plugin en perl para Nagios, y dependiendo del texto resultante de la ejecucion de ese plugin, dar un valor de salida "exit 0" o "exit 2" acompañado de un texto a poder ser
Especifico, si en el texto resultante de la ejecucion del PLUGIN existe la palabra CRITICAL solo 1 vez, el script deberia dar "exit 0" y un texto en plan "Tranquilos, todo va bien".
En cambio, si en dicho texto existe la palabra CRITICAL mas de una vez, acabar con "exit 2" mas texto acompañante de alerta

Para aclarar, el valor 0 le dice a nagios que el servicio chequeado esta OK, el 2 le dice que pinte CRITICAL

La putada es que no puedo probar la ejecucion del script "al vuelo" indefinidamente, pues la maquina esta en proceso supervisando servicios criticos de produccion, por lo tanto necesito minimizar los intentos fallidos al minimo

Se que para contabilizar el las palabras puedo usar grep CRITICAL -c
Pero poco mas....

Voy modificando este script que usan ellos que hace algo parecido, pero no lo entiendo del todo:

#!/bin/bash

Código
  1. PROG=/usr/local/nagios/libexec/check_mssql_health
  2. HOST=$1
  3. FILE=/tmp/check_mssqlhealth$1.txt
  4. OK=$2
  5.  
  6. $PROG $HOST > $FILE
  7.  
  8. grep CRITICAL -c $OK $FILE
  9. if [ $? -eq 1 ] ; then
  10.  echo "OK!"
  11.  exit 0
  12. else
  13.  echo "ERROR!"
  14.  exit 2
  15. fi
  16.  
Cualquier ayuda sera muy agradecida!!

Muchas gracias de antemano!


Para probar podrias añadir un string en el que metas la palabra CRITICAL y ver si esta en ese string a ver si te funciona bien
Código
  1. PROG=/usr/local/nagios/libexec/check_mssql_health
  2. my @prueba =("Hola esto es una prueba CRITICAL");
  3. for my $c(0 ..scalar(@prueba)-1){
  4. ....
  5. }
  6.  


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Perl script para conseguir proxies en la terminal?
Scripting
idst 1 1,827 Último mensaje 7 Diciembre 2012, 19:59 pm
por Eleкtro
Ayuda con un Plugin para Maquetacion web!!!
Desarrollo Web
01munrra 2 2,120 Último mensaje 4 Septiembre 2013, 13:45 pm
por 01munrra
SCRIPT PERL
Nivel Web
mendax 1 2,053 Último mensaje 6 Febrero 2015, 21:29 pm
por engel lex
Ayuda con un script perl:
Scripting
0uts1de 2 2,256 Último mensaje 14 Diciembre 2016, 16:46 pm
por 0uts1de
Ayuda con un script [PERL]
Scripting
0uts1de 4 2,828 Último mensaje 20 Enero 2017, 10:21 am
por 0uts1de
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines