1
resposta

Nao entendi direito sobre a variavel $label

No arquivo do alertmanager temos essa variavel $label.Name e $label.Value, mas nao entendi muito bem de onde ela vem! por exemplo se eu quisesse no hora de configurar meu alerta no rule adicionar uma variavel enviar_email = "email@gmail.com", eu iria no alertmanager e buscava ela como $label.enviar_email? como eu sei de onde ele busca esse $label?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Vou tentar explicar de outra forma. O que é a variável $label? No Alertmanager, a variável $label é usada para acessar informações que estão associadas a um alerta. Essas informações são como "etiquetas" (ou "labels") que você define quando cria um alerta nas suas regras (no arquivo de rules). Por exemplo, se você cria um alerta e define uma etiqueta chamada enviar_email com o valor "email@gmail.com", o Alertmanager pode acessar essa informação usando $label.enviar_email. De onde vem o $label? Quando você configura um alerta no arquivo de regras (rules), você pode adicionar etiquetas (labels) a esse alerta. Por exemplo: groups:

  • name: exemplo rules:
    • alert: MeuAlerta expr: up == 0 for: 5m labels: severity: critical enviar_email: "email@gmail.com" annotations: summary: "Servidor fora do ar" description: "O servidor está fora do ar há mais de 5 minutos."

Nesse exemplo, o alerta MeuAlerta tem duas etiquetas (labels): severity e enviar_email. Quando o Alertmanager recebe esse alerta, ele pode acessar essas etiquetas usando $label.severity e $label.enviar_email. Como usar $label no Alertmanager? No arquivo de configuração do Alertmanager, você pode usar $label para acessar essas etiquetas. Por exemplo, se você quiser enviar um email para o endereço que está na etiqueta enviar_email, você pode fazer algo assim: route: receiver: 'email-receiver' routes:

  • match: severity: 'critical' receiver: 'email-receiver' continue: true receivers:
  • name: 'email-receiver' email_configs:
    • to: '{{ $label.enviar_email }}' from: 'alertas@empresa.com' smarthost: 'smtp.empresa.com:587' auth_username: 'usuario' auth_password: 'senha' Nesse exemplo, o Alertmanager vai enviar um email para o endereço que está na etiqueta enviar_email do alerta. Resumindo: $label é uma forma de acessar as etiquetas (labels) que você define nos seus alertas. Essas etiquetas são definidas no arquivo de regras (rules). No Alertmanager, você pode usar $label.nome_da_etiqueta para acessar o valor dessa etiqueta. Espero que isso tenha ajudado .