Ajuda do MON sobre definições de serviço Este é o segundo e o último estágio da configuração do MON.
Os valores padrão são mostrados para os serviços obrigatórios . Consulte o respectivo tópico de ajuda abaixo para obter mais ajuda sobre as Definições de Serviço. Para "mail.alert" , verifique se o sendmail está configurado e o deamon "sendmail" foi iniciado na máquina host.
Definições de serviço
- service servicename
- Uma definição de serviço começa com a palavra-chave service, seguida por uma palavra que é a tag desse serviço.
Os componentes de um serviço são um intervalo, monitor e uma ou mais definições de período, conforme definido abaixo.
Se um nome de serviço "padrão" for definido dentro de um grupo de observação chamado "padrão" (veja acima), a definição padrão / padrão será usada para lidar com traps mon monitores desconhecidos.
- intervalo temporal
- O intervalo da palavra-chave seguido por um valor de tempo especifica a frequência em que um script de monitor será acionado. Os valores de tempo são definidos como "30s", "5m", "1h" ou "1d", o que significa 30 segundos, 5 minutos, 1 hora ou 1 dia. A parte numérica pode ser uma fração, como "1,5 h" ou uma hora e meia. Este formato de uma especificação de tempo será chamado de timeval .
- traptimeout timeval
- Esta palavra-chave tem o mesmo argumento de especificação de tempo de intervalo, e faz com que o serviço de esperar uma armadilha de um provedor externo, pelo menos, que muitas vezes, senão uma falha será registrado. Isso é usado para um serviço no estilo de pulsação.
- trapduration timeval
- Se uma captura for recebida, o status do serviço para o qual a captura foi entregue permanecerá normalmente constante. Se a trapduração for especificada, o status do serviço permanecerá em um estado de falha pela duração especificada por timeval e, em seguida, será redefinido para "êxito".
- randskew timeval
- Em vez de agendar o script do monitor para ser executado no início de cada intervalo, ajuste aleatoriamente o intervalo especificado pelo parâmetro interval por mais ou menos menos o randskew. O valor de inclinação é especificado como o parâmetro do intervalo : "30s", "5m", etc ... Por exemplo, se o intervalo for 1m e o randskew for "5s", então mon agendará o script do monitor algum tempo entre cada 55 segundos e 65 segundos. A intenção é ajudar a distribuir a carga no servidor quando muitos serviços são agendados nos mesmos intervalos.
- monitorar nome do monitor [arg ...]
- O monitor de palavras-chave seguido por um nome de script e argumentos especifica que o monitor seja executado quando o cronômetro expirar. As convenções de cotação do tipo shell são seguidas ao especificar os argumentos a serem enviados ao script de monitor. O script é chamado a partir do diretório fornecido com o argumento -s , e todas as palavras a seguir são fornecidas como argumentos para o programa monitor, seguidas pela lista de hosts no grupo referido pelo grupo de observação atual. Se a linha do monitor terminar com ";;" como uma palavra separada, os grupos de hosts não são anexados à lista de argumentos quando o programa é chamado.
- allow_empty_group
- A opção allow_empty_group permitirá que um monitor seja chamado mesmo quando o grupo de host para esse relógio estiver vazio por causa de hosts desativados. O comportamento padrão é não chamar o monitor quando todos os hosts em um grupo de hosts estiverem desativados.
- description descriptiontext
- O texto seguinte descrição é consultado por programas clientes, passados para alertas e monitores através de uma variável de ambiente. Ele deve conter uma breve descrição do serviço, adequado para inclusão em um email ou em uma página da web.
- host exclude_hosts [host ...]
- Quaisquer hosts listados após exclude_hosts serão excluídos da verificação de serviço.
- exclude_period periodpec
- Não execute um monitor agendado durante o tempo identificado pelo período especificado .
- depende dependexexpression
- A palavra-chave depend é usada para especificar uma expressão de dependência, avaliada como verdadeira ou falsa, no sentido booleano. Dependências são expressões Perl reais e devem obedecer a todas as regras sintáticas. As expressões são avaliadas em seu próprio espaço de pacote para não ter acidentalmente algum efeito colateral indesejado. Se um erro de sintaxe for encontrado ao avaliar a expressão, ele será registrado via syslog.
Antes da avaliação, ocorrem as seguintes substituições na expressão: frases que se parecem com "group: service" são substituídas pelo valor do status operacional atual desse serviço especificado. Essas substituições de opstatus são computadas recursivamente; portanto, se o serviço A depende do serviço B e o serviço B depende do serviço C, o serviço A depende do serviço C. Os status operacionais bem-sucedidos (que são avaliados como "1") são "STAT_OK", "STAT_COLDSTART "," STAT_WARMSTART "e" STAT_UNKNOWN ". A palavra "SELF" (em todas as maiúsculas) pode ser usada para o grupo (por exemplo, "SELF: service") e é uma abreviação do atual grupo de observação.
Esse recurso pode ser usado para controlar alertas para serviços que dependem de outros serviços, por exemplo, um teste SMTP que depende da máquina ser alcançável por ping.
- dep_behavior {a | m}
- A avaliação de gráficos de dependência pode controlar a supressão de chamadas de alerta ou monitor.
Supressão de alerta . Se esta opção estiver configurada como "a", a expressão de dependência será avaliada após a saída do monitor para o serviço ou após o recebimento de uma interceptação. Um alerta será enviado apenas se a avaliação for bem-sucedida, o que significa que nenhum dos nós no gráfico de dependência indica falha.
Monitorar a supressão . Se estiver definido como "m", a expressão de dependência será avaliada antes que o monitor do serviço esteja prestes a ser executado. Se a avaliação for bem-sucedida, o monitor será executado. Caso contrário, o monitor não será executado e o status do serviço permanecerá o mesmo.
Definições de período
Períodos são usados para definir as condições que devem permitir que alertas sejam entregues.
- período [label:] periodpec
- Um período agrupa um ou mais alarmes e variáveis que controlam a frequência com que um alerta ocorre quando há uma falha. A palavra-chave period possui duas formas. O primeiro utiliza um argumento que é uma especificação de período do módulo Time :: Period Perl 5 de Patrick Ryan. Consulte "Perldoc Time :: Period" para obter mais informações.
O segundo formulário requer um rótulo seguido de uma especificação de período, conforme definido acima. O rótulo é uma tag que consiste em um caractere ou sublinhado alfabético seguido por zero ou mais caracteres alfanuméricos ou sublinhados e termina com dois pontos. Este formulário permite vários períodos com a mesma definição de período. Um uso é ter uma definição de período que não tenha nenhum alerta ou alerta para todos os parâmetros de um determinado período e outro para o mesmo período de tempo com um conjunto diferente de alertas que contenha esses parâmetros.
- alertevery timeval
- A palavra-chave alertevery (dentro de uma definição de período ) usa o mesmo tipo de argumento que a variável de intervalo e limita o número de vezes que um alerta é enviado quando o serviço continua a falhar. Por exemplo, se o intervalo for "1h", apenas os alertas na seção de período serão acionados apenas uma vez a cada hora. Se a palavra-chave alertevery for omitida em uma entrada de período, um alerta será enviado sempre que uma falha for detectada. Por padrão, se a saída de duas falhas sucessivas mudar, o alerta a cada intervalo será substituído. Se a palavra "resumo" for o último argumento, apenas as linhas de saída do resumo serão consideradas ao comparar a saída de falhas sucessivas.
- alertafter num
- alertafter num timeval
- A palavra-chave alertafter (dentro de uma seção de período ) tem duas formas: somente com o argumento "num" ou com os argumentos "num timeval". Na primeira forma, um alerta será chamado somente após "num" falhas consecutivas.
Na segunda forma, os argumentos são um número inteiro positivo seguido por um intervalo, conforme descrito pela variável de intervalo acima. Se esses parâmetros forem especificados, os alertas para esse período serão chamados somente depois que muitas falhas ocorrerem dentro desse intervalo. Por exemplo, se o alertafter receber os argumentos "3 30m", o alerta será chamado se 3 falhas ocorrerem dentro de 30 minutos.
- numalerts num
Essa variável diz ao servidor para chamar não mais do que alertas numéricos durante uma falha. O contador de alertas é mantido por período e é redefinido a cada sucesso.
- comp_alerts
Se essa opção for especificada, os upalerts serão chamados apenas se um alerta "inativo" correspondente tiver sido chamado.
- alerta alerta [arg ...]
- Um período pode conter vários alertas, que são acionados após falha do serviço. Um alerta é especificado com a palavra-chave alert , seguida por um parâmetro opcional de saída e argumentos que são interpretados da mesma forma que a definição do monitor , mas sem o ";;" exceção. O parâmetro exit assume a forma de exit = x ou exit = xy e tem o efeito de que o alerta será chamado apenas se o status de saída do script do monitor estiver dentro do intervalo do parâmetro de saída . Se, por exemplo, a linha de alerta for exit de alerta = 10-20 mail.alert mis , o email mail alert será invocado com mis como argumento se o valor de saída do programa de monitor estiver entre 10 e 20. Esse recurso permite disparar alertas diferentes em diferentes níveis de gravidade (como quando o espaço livre em disco passa de 8% a 3%).
Consulte a seção ALERT PROGRAMS acima para obter uma lista dos pramaeters que o mon passará automaticamente para alertar programas.
- alerta upalert [arg ...]
- Um alerta ascendente é o elogio de um alerta . Um alerta ascendente é chamado quando um serviço faz a transição do estado do fracasso para o sucesso. O script upalert é chamado de fornecimento dos mesmos parâmetros que o script de alerta , com a adição do parâmetro -u, que é simplesmente usado para permitir que um script de alerta saiba que está sendo chamado como upalert. Vários upalerts podem ser especificados para cada definição de período. Observe que o comportamento padrão é que um alerta ascendente seja enviado independentemente de haver alertas anteriores "inativos" enviados, pois os alertas ascendentes são acionados em uma transição de estado. Defina a opção comp_alerts por período para emparelhar upalerts com alertas "inativos".
- alerta de inicialização [arg ...]
- Um alerta de inicialização é chamado apenas quando o servidor mon inicia a execução.
- upalertafter timeval
- O parâmetro upalertafter é especificado como uma sequência que segue a sintaxe do parâmetro interval ("30s", "1m" etc.) e controla o acionamento de um alerta upal . Se um serviço voltar depois de ficar inativo por um tempo maior ou igual ao valor dessa opção, um alerta de aumento será chamado. Use esta opção para impedir que alertas de alerta sejam chamados devido a "blips" (breves interrupções).