Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

4 Macros de descoberta de baixo nível

Visão geral

Existe um tipo de macro usado no baixo nível descoberta (LLD) função:

{#MACRO}

É uma macro que é usada em uma regra LLD e retorna valores reais da nome do sistema de arquivos, interface de rede, SNMP OID, etc.

Essas macros podem ser usadas para criar itens, gatilhos e gráficos protótipos. Então, ao descobrir sistemas de arquivos reais, redes interfaces etc., essas macros são substituídas por valores reais e são a base para a criação de itens reais, gatilhos e gráficos.

Essas macros também são usadas na criação de protótipos de host e grupo de host na máquina virtual discovery.

Algumas macros de descoberta de baixo nível vêm "pré-empacotadas" com o LLD função no Zabbix - {#FSNAME}, {#FSTYPE}, {#IFNAME}, {#SNMPINDEX}, {#SNMPVALUE}. No entanto, a adesão a esses nomes não é obrigatória quando criando um personalizado regra de descoberta de baixo nível. Então você pode usar qualquer outro nome de macro LLD e referir a esse nome.

Locais compatíveis

As macros LLD podem ser usadas:

  • no filtro de regra de descoberta de baixo nível
  • para protótipos de itens em
    • nome
    • parâmetros chave
    • unidade
    • intervalo de atualização1
    • período de armazenamento do histórico1
    • período de armazenamento de tendências1
    • etapas de pré-processamento do valor do item
    • SNMP OID
    • Campo do sensor IPMI
    • fórmula de item calculado
    • Script SSH e script Telnet
    • consulta SQL de monitoramento de banco de dados
    • Campo de ponto final do item JMX
    • Descrição
    • Campo de URL do agente HTTP
    • Campo de campos de consulta HTTP do agente HTTP
    • Campo do corpo da solicitação do agente HTTP
    • Campo de códigos de status obrigatório do agente HTTP
    • Chave e valor do campo de cabeçalhos do agente HTTP
    • Campo de nome de usuário de autenticação HTTP do agente HTTP
    • Campo de senha de autenticação HTTP do agente HTTP
    • Campo de proxy HTTP do agente HTTP
    • Campo de arquivo de certificado HTTP SSL do agente HTTP
    • Campo de arquivo de chave HTTP SSL do agente HTTP
    • Campo de senha da chave HTTP SSL do agente HTTP
    • Tempo limite HTTP do agente HTTP1 campo
    • Tag
  • para protótipos de gatilho em
    • nome
    • Dados operacionais
    • expressão (somente em constantes e parâmetros de função)
    • URL
    • Descrição
    • Tag
  • para protótipos de gráficos em
    • nome
  • para protótipos de host em
    • nome
    • nome visível
    • campos de interface personalizados: IP, DNS, porta, comunidade SNMP v1/v2, Nome de contexto SNMP v3, nome de segurança SNMP v3, SNMP v3 senha de autenticação, senha de privacidade SNMP v3
    • nome do protótipo do grupo de hosts
    • valor da tag do host
    • valor da macro do host
    • (veja a lista completa)

Em todos esses lugares, as macros LLD podem ser usadas dentro do usuário estático macro context.

Usando funções de macro

As funções de macro são suportadas com macros de descoberta de baixo nível (exceto em filtro de regras de descoberta de baixo nível), permitindo extrair uma certa parte o valor da macro usando uma expressão regular.

Por exemplo, você pode querer extrair o nome do cliente e a interface número da seguinte macro LLD para fins de marcação de eventos:

{#IFALIAS}=nomedocliente_1

Para fazer isso, a função macro regsub pode ser usada com a macro no campo de valor de tag de evento de um protótipo de acionador:

Observe que as vírgulas não são permitidas no item sem aspas chave parâmetros, então o parâmetro contendo uma função macro deve ser citado. A barra invertida (\) deve ser usado para escapar de aspas duplas dentro do parâmetro. Exemplo:

net.if.in["{{#IFALIAS}.regsub(\"(.*)_([0-9]+)\", \1)}",bytes]

Para obter mais informações sobre a sintaxe da função de macro, consulte: Macro funções

Funções de macro são suportadas em macros de descoberta de baixo nível desde o Zabbix 4.0.

Notas de rodapé

1 Nos campos marcados com 1 um único macro tem que preencher todo o campo. Várias macros em um campo ou macros misturados com texto não são suportados.