Contents Previous Next

Comando mtmon_cron.pl

O objetivo deste programa é chamar os plugins que fazem a efetiva verificação dos serviços monitorados no computador cliente.

Para acionar o programa, inclua na crontab de cada computador cliente do MTMON a seguinte linha :

   0,15,30,45 * * * * /usr/local/Multitask/mtmon/bin/mtmon_cron.pl #

Quando é usado o /etc/crontab, é necessário definir o usuário :

   0,15,30,45 * * * * root /usr/local/Multitask/mtmon/bin/mtmon_cron.pl #

O mtmon_cron.pl se comporta como um serviço do sistema operacional, rodando em background. As chamadas de 15 em 15 minutos são definidas para validar se o monitor está executando e se não está, iniciar o mesmo.

O programa usa o arquivo de configuração $MTMON/etc/mtmon_cron.conf para definir as ações que serão tomadas para a verificação do serviço.

Opções disponíveis na linha de comando :

--debug

Um log detalhado das operações é apresentado na saída padrão. Se um nome de arquivo for informado, a saída do debug será gravado neste arquivo.

Arquivo mtmon_cron.conf

É o arquivo de configuração do comando mtmon_cron.pl, responsável por controlar a execução dos PLUGINS que automatizam a monitoração.

O formato do arquivo é :

  [Global]
    Refresh = 60
    PATH = /usr/local/Multitask/mtmon/plugin
    Live = 45
    Obs0 = Observacao de documentacao

  [sessao1]
    Ativo=0
    Nagios=1
    Intervalo=*/2 15
    Comando=check_teste -w 10 -c 5
    Finaliza=1
    Info=info.pdf
    Limite=3 horas
    Notifica=ORACLE
    Origem=NovaOrigem
    Objeto=objtst
    Repete=1
    Aplicacao=teste
    Servidor=srvTeste
    env_senha=PWD_xxxxxx
    Obs0Observacao de documentacao = Redefinicao da observacao de documentacao
    Obs1 = com continuacao na linha abaixo


A primeira sessão é denominada Global e contém parâmetros para o comando comando mtmon_cron.pl :

PATH

Quando o comando de uma sessão não tem um PATHNAME completo, o diretório apontado no PATH é adicionado ao comando. No exemplo acima, o comando acionado para verificar a sessao1 será /usr/local/Multitask/mtmon/plugin/check_teste.

Refresh

Este parâmetro que define o tempo padrão de refazer as checagens se nenhuma sessão atende ao critério para execução. O valor 60 no exemplo instrui o mtmon_cron.pl para realizar ciclos de 60 segundos.

Live

Este parâmetro que redefine o tempo de ping definido no arquivo de parâmetros.


As demais sessões podem definir os parâmetros alistados abaixo. São obrigatórios os seguintes parâmetros : Comando, Intervalo, cAplicacao, Servidor

Ativo

Uma sessão de monitoração pode ser desativada informando '0' neste parâmetro.

Comando

Comando que será invocado para realizar a monitoração. Deve obedecer aos critérios de PLUGIN do Nagios.

O comando poderá devolver um arquivo de dump criando um arquivo cujo nome é fornecido na variável do Shell MTMON_CRON_dump.

Delay

Informa quando tempo deve ser aguardado até gerar efetivamente o evento.

Email

Define um endereço de email que será usado na criação do alerta.

Finaliza

Quando a --severidade do evento é 0 (Normal), o evento pode ser auto-finalizado. Este parâmetro é útil quando se deseja gerar eventos para estatística usados em futura análise.

Info

Ao criar o evento, inclui o parâmetro --informacao.

Intervalo

Define a periodicidade que a monitoração deve ser realizada para esta sessão. Este parâmetro pode ter as seguintes sintaxes, idênticas à crontab. O primeiro argumento é hora e o segundo o minuto :

  * * - minuto à minuto
  */2 15,45 - de duas em duas horas nos minutos 15 e 45
  * */5 - de 5 em 5 minutos
  8-17 */5 - de 5 em 5 minutos durante o horário comercial (das 8:00 às 17:55)

WeekDay

Define os dias da semana que a monitoração será realizada. Segue o mesmo padrão definido na crontab, i.é., pode assumir valores entre 0-7 (0 e 7 é domingo, 1 é segunda ...).

Limite

Quando ocorre re-incidência do problema reportado, um novo evento só será gerado depois do tempo definido nesta opção. É uma forma de controle para não gerar eventos repetidos no MTMON.

Pode ser definido em minutos, horas ou dias.

Na sintaxde antiga, o parâmetro recebe 2 números n,m, onde n define o número de eventos gerados quando ocorre a identificação do problema monitorado. m define a periodicidade que um novo evento será gerado se o mesmo não for resolvido.

Consulte a opção Limite na descrição do comando mtmon_evento.pl.

Nagios

Informa o mtmon_cron.pl que o comando é um plugin do Nagios. A mensagem estará na primeira linha da saída padrão.

Notifica

Ao criar o evento, inclui o parâmetro --notifica.

Obs[N]

onde [N] pode ser 0-9. Define comentários para documentar o item monitorado.

Objeto

Ao criar o evento, inclui o parâmetro --objeto.

Origem

Ao criar o evento, inclui o parâmetro --objeto.

Repete

Ao criar o evento, inclui o parâmetro --repete.

Aplicacao

Ao criar o evento, inclui o parâmetro --aplicacao.

env_xxxx

A variáveis cujo nome iniciam com env_, são exportadas para o plugin na forma de variáveis de ambiente, e podem ser acessadas no script substituindo o env por MTMON_CRON.

Se por exemplo, uma variável é definida no mtmon_cron.conf com o nome env_teste=conteudo, o script poderá usar a variável $MTMON_CRON_teste que devolverá o valor conteudo.

É possível ofuscar uma senha no arquivo de configuração. No exemplo abaixo, a senha é P@ssw0rd. Execute o comando GeraSenha.pl para criar a string com a senha:

$ /usr/local/Multitask/mtadm/bin/GeraSenha.pl --PWD default -- P@ssw0rd

Senha : PWD_2277140206673e20

No arquivo mtmon_cron.conf incluir a opção na sessão desejada :

[teste]
  ativo=1
  env_senha=PWD_2277140206673e20
  . . .

Na chamada do plugin, a variável de ambiente MTMON_CRON_senha conterá o valor P@ssw0rd e poderá ser usada normalmente.

Consulte a sessão de ofuscamento de senhas em script's para um detalhamento deste recurso.

Servidor

Identifica o servidor que está sendo monitorado.

Por exemplo : Se o objeto da monitoração é um Switch ou um servidor Windows usando o NRPE, pode ser informado neste parâmetro um nome de identifique o hardware, e este nome será associado ao evento gerado com a opção --servidor.


Contents Previous Next