Centreon, como enviar alertas usando un BOT de Telegram

He seguido jugando un poco con el Centreon que tengo en un contenedor Docker en mi Raspberry y esta vez he conseguido configurar el envío de notificaciones a través de un bot de Telegram, por que eso de enviar correos es muy aburrido, ¿a que si?, así que venga, vamos a configurarlo con unos sencillos pasos.

CREACIÓN Y CONFIGURACIÓN DEL BOT DE TELEGRAM

Lo primero que hay que hacer es hablar con The Botfather para crear nuestro Bot:

Los pasos a seguir son los siguientes:

  1. /start -> inicia la conversación con The Botfather
  2. /newbot -> Nos pide el nombre del Bot y a continuación su nombre de usuario.
  3. Copiamos el API KEY

The Botfather nos devuelve un mensaje indicándonos que el bot ha sido creado satisfactoriamente y nos da un API Key para comunicarnos con él. A continuación meteremos al Bot en un grupo donde nos escribirá cada vez que haya una novedad:

Tened en cuenta que el Bot debe tener acceso a los mensajes, así que en este caso le hacemos Administrador.

Para poder enviar los mensajes directamente a este grupo debemos obtener el Chat ID de éste, así que la forma más rápida es ir a la URL que os dejo a continuación, sustituyendo ${API_KEY} por la Key que os ha dado The Botfather cuando habéis creado el bot:

https://api.telegram.org/bot${API_KEY}/getUpdates

Una vez allí veremos todos los mensajes nuevos y podremos obtener el Chat ID del grupo que hemos creado, en este caso en rojo veis el mensaje que he enviado y en azul el Chat ID:

Con el Chat ID y el API Key de nuestro bot en mano, ya podremos enviar mensajes directamente con el bot usando la siguiente llamada:

curl -s -X POST https://api.telegram.org/bot${API_KEY}/sendMessage -d text="Hola David, aquí estoy" -d chat_id=-${CHAT_ID}

CONFIGURACIÓN EN CENTREON

En realidad esto es realmente sencillo, simplemente basta con crear un comando de notificación normal, y asociarlo a nuestro usuario de Centreon, en mi caso admin, para que use este comando de notificación una vez haya algún host caído. Por ejemplo podríamos crear un comando como el siguiente:

curl -s -X POST https://api.telegram.org/bot${API_KEY}/sendMessage -d text="Oye! David el Host $HOSTNAME$ esta $HOSTSTATE$. Te dejo un poco más de información: $HOSTOUTPUT$" -d chat_id=-${CHAT_ID}

Y con esto una vez haya un host caido en nuestra red, nuestro Bot de Telegram nos lo dirá:

Ya veis que podéis jugar con la cantidad e información que envía el Centreon modificando el mensaje y añadiendo las variables de Centreon que más os guste.

Así que ya sabéis como saber el estado de vuestros equipos a través de Telegram.

2 comentarios sobre “Centreon, como enviar alertas usando un BOT de Telegram

    1. Buenas, Adrian,

      Desconozco como se debe realizar en Nagios XI por que nunca he utilizado esta plataforma. He echado un vistazo rapido y he visto que no existe la posibilidad a nivel de GUI de Nagios XI de configurar alertas personalizadas, pero hay algunos scripts que desde el terminal te podrian hacer una labora parecida, por aqui hay mas informacion:
      http://highsecurity.blogspot.com/2017/12/integrating-telegram-with-nagiosxi-lazy.html

      Echale un vistazo a esa entrada, cualquier cosa me comentas.

      Un saludo,

Responder a Deivid Cancelar respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s