1. Home /
  2. Plugins /
  3. Software /
  4. OpMon /
  5. OpMon – Notificações via Teams
  1. Home /
  2. Plugins /
  3. OpMon – Notificações via Teams

OpMon – Notificações via Teams

Objetivo

Demonstrar como configurar notificações via Teams para hosts e serviços no OpMon.

Público-alvo

Administradores do OpMon que necessitam adicionar notificações via Teams.

Configurando o Teams

Para começar precisamos de um Webhook, uma URL do Teams para direcionar o plugin para um determinado canal (grupo).

  1. Vá para o canal onde você deseja adicionar o webhook e selecione ••• mais opções na barra de navegação superior.
  2. Selecione Conectores no menu suspenso:Selecionar Conector
  3. Pesquise o Webhook de entrada e selecione Adicionar.
  4. Selecione Configurar, forneça um nome e carregue uma imagem para seu webhook, se necessário:Botão Configurar
  5. A janela de diálogo apresenta uma URL exclusiva que mapeia para o canal. Copie e salve a URL do webhook, para enviar informações para Microsoft Teams e selecione Feito:URL exclusiva

Ok, o webhook está disponível no canal Teams. Agora é só coletar sua URL!

Vamos para o terminal!

Faça o download do script notify_by_teams.py e altere a permissão do arquivo que fará o envio de alertas via Teams.

wget -O /usr/local/opmon/libexec/custom/notify_by_teams.py http://repo.opservices.com.br/rpms/plugins/notify_by_teams.py
chmod 755 /usr/local/opmon/libexec/custom/notify_by_teams.py

Agora vamos para a interface do OpMon!

Acesse o menu “Ferramentas” e clique no submenu “Configurações”:

Na área de atalhos (lado esquerdo da tela) clique em “Commands“, depois disso altere o Command Type” para “Notification Command” e adicione um novo comando em “Add A New Command”.

Adicione o novo comando de notificação para “hosts”. Configure conforme as diretivas abaixo:

  • Command Name: host_notify_by_teams
  • Command Line: /usr/local/opmon/libexec/custom/notify_by_teams.py ‘OpMon Notification: $NOTIFICATIONTYPE$’ ‘Status: $HOSTSTATE$ | Host: $HOSTNAME$ ($HOSTADDRESS$) | Info: $HOSTOUTPUT$ | Date: $LONGDATETIME$’ ‘URL-WEBHOOK
  • Command Description: Notificação de hosts via Teams.

Após preencher o campo clique em Modify Command.

Confira na imagem abaixo como deve ficar:

Não esqueça de alterar a URL da API do Teams (webhook) na área destacada acima, dentro das aspas simples. 

Faça o mesmo para serviços; mas como ele irá receber outros argumentos, crie um novo comando com as diretivas abaixo:

  • Command Name: services_notify_by_teams
  • Command Line: /usr/local/opmon/libexec/custom/notify_by_teams.py ‘OpMon Notification: $NOTIFICATIONTYPE$’ ‘Status: $SERVICESTATE$ | Host: $HOSTNAME$ ($HOSTADDRESS$) | Service: $SERVICEDESC$ | Info: $SERVICEOUTPUT$ | Date: $LONGDATETIME$’ ‘URL-WEBHOOK
  • Command Description: Notificação de serviços via Teams.

Compare com a imagem:

Por fim, precisamos configurar um contato para essas notificações!

a) Vá até o menu “Ferramentas” e o submenu “Configurações”.

b) Na área de atalhos (lado esquerdo da tela) clique em “Contacts“ e “Add A New Contact“.

c) Após a adição do contato, precisamos alterar os comandos de notificação. Para isso, navegue até a aba Notification Commands:

d) Adicione o comando de notificação “notify_host_by_teams”, configurado anteriormente, na área de comandos para alertas de host, conforme abaixo:

f) Faça o mesmo com o “services_notify_by_teams”, mas na área de serviços:

Não esqueça de realizar o export para efetivar todas as alterações!

Chegou a hora de testar! Basta rodar o comando abaixo no terminal:

/usr/local/opmon/libexec/custom/notify_by_teams.py 'RECOVERY: HOST 127.0.0.1 Service Check_File_Content is OK' 'OK - Search for ednilson on /tmp/file1.txt (3 found)' 'URL-WEBHOOK'
Atenção: você pode receber alguma mensagem de erro por conta de algum módulo não instalado no Python, para corrigir basta instalar o mesmo e tentar novamente.

Algumas dicas para evitar contratempos:

  • Validar se está instalado o módulo ‘requests’ do python. Use o comando abaixo para listas todos os modulos:
# python
>>> help("modules")
  • Verificar qual a versão padrão do python no ambiente
    # python --version

Se for menor que 2.7, e houver uma versão mais nova instalada, basta alterar o shebang do plugin para usar o python mais novo (3, 3.4, etc), alterando a primeira linha do plugin (shebang).

#!/usr/bin/env python3
Para conferir em qual diretório está o binário do Python, e se existem outras versões instaladas, você pode usar o seguinte comando:
whereis python

Caso seja necessário instalar o modulo requests manualmente, você pode fazer o download clicando aqui.

Updated on 31/08/2021

Esse artigo foi útil para você?

Ficou com alguma dúvida?

Perguntas & Respostas

Participe da nossa comunidade e tire dúvidas ou compartilhe respostas e ideias.

Participar

Professional Support

Não encontrou a resposta que procura? Não se preocupe, estamos aqui para ajudar!

Abrir chamado

Treinamento Online

Através da plataforma Udemy, você encontra todos os treinamentos das nossas soluções.

Inscreva-se