Todos os produtos
Search
Central de documentação

Simple Log Service:Referenciar conteúdo de log em notificações de alerta

Última atualização: Sep 22, 2026

Use as variáveis annotations, fire_results e results em um modelo de alerta para incluir dados de consulta de log nas notificações de alerta.

O Simple Log Service (SLS) pode incorporar detalhes de alerta diretamente nas notificações, permitindo que você visualize o contexto necessário assim que o alerta chegar. Para incluir dados de log em uma notificação, configure os parâmetros necessários ao criar uma regra de monitoramento de alerta e referencie a variável annotations, fire_results ou results no modelo de alerta. Para obter mais informações, consulte Variables in alert templates.

As três variáveis atendem a propósitos diferentes:

Variável

O que contém

Mais indicada para

annotations

Pares de chave-valor definidos por você, além de dois valores padrão do SLS (title, desc)

Resumir o contexto do alerta de forma legível

fire_results

As linhas de dados brutos que dispararam o alerta

Listar todos os registros correspondentes de forma rápida

results

Metadados completos da consulta, resultados brutos e a linha que disparou o alerta

Depuração ou criação de conteúdo detalhado para notificações

  • annotations: as anotações de um alerta

  • fire_results: os registros de dados que dispararam o alerta

  • results: os parâmetros de consulta e resultados intermediários

Por exemplo, para monitorar erros de acesso NGINX, execute a consulta a seguir para obter o código de status HTTP, o endereço IP de origem e a contagem de erros. Em seguida, crie uma regra de monitoramento de alerta e referencie esses dados no modelo de alerta. Quando um código de status atingir 400 ou mais, o SLS envia uma notificação com o código de status, o IP de origem e a contagem.

  • Instrução de consulta

    status >=400 | SELECT status, __source__ AS ip, count(*) AS cnt GROUP BY status,ip
  • Resultados da consulta Query results

Usar a variável annotations

Adicione a variável annotations a um modelo de alerta para incluir pares de chave-valor de anotação nas notificações de alerta.

  • Regra de monitoramento de alerta

    Adicione pares de chave-valor de anotação manualmente ou ative a opção Auto-Add Annotations para que o SLS os preencha automaticamente quando o alerta disparar. Para obter mais informações, consulte Annotations.

    Nota

    O SLS fornece duas anotações por padrão.

    Por exemplo, para incluir o código de status, o IP de origem e a contagem de erros nas mensagens de alerta, adicione anotações como status:${status}, ip:${ip} e cnt:${cnt}.

    • Adicionar informações sobre anotações manualmente image

    • Ativar Auto-Add Annotations para adicionar informações sobre anotações automaticamente image

  • Mensagem de alerta

    Após o disparo do alerta, o SLS gera uma mensagem contendo as anotações configuradas:

    {
        "annotations": {
            "title": "Alert is triggered by an NGINX access error",
            "desc": "The error that is indicated by the status code 400 occurred 15 times"
            "status": "400"
            "ip": "127.0.0.1"
            "cnt": "15"
            "__count__": "1"
        }
    }
  • Modelo de alerta

    Adicione a variável annotations ao modelo de alerta para referenciar conteúdo específico de log nas notificações. Para obter mais informações sobre como criar um modelo de alerta, consulte Create an alert template.

    Alert template

Usar a variável fire_results

Adicione a variável fire_results a um modelo de alerta para listar todas as linhas de dados que dispararam o alerta.

  • Regra de monitoramento de alerta

    O SLS gera mensagens de alerta com base na regra de monitoramento de alerta criada. image

  • Mensagem de alerta

    Após o disparo do alerta, o SLS gera uma mensagem contendo todas as linhas correspondentes à condição de disparo — neste exemplo, o código de status, o IP de origem e a contagem de erros de cada linha correspondente.

    {
        "fire_results": [
            { "status": "401", "ip": "127.0.0.1", "cnt": "3" },
            { "status": "400", "ip": "127.0.0.1", "cnt": "7" },
            { "status": "501", "ip": "127.0.0.1", "cnt": "4" },
            { "status": "404", "ip": "127.0.0.1", "cnt": "4" },
            { "status": "402", "ip": "127.0.0.1", "cnt": "6" },
            null
        ]
    }
  • Modelo de alerta

    Adicione a variável fire_results ao modelo de alerta para referenciar conteúdo específico de log nas notificações. Para obter mais informações sobre como criar um modelo de alerta, consulte Create an alert template.

    Alert template

Usar a variável results

Adicione a variável results a um modelo de alerta para incluir o contexto completo da consulta nas notificações de alerta.

  • Regra de monitoramento de alerta

    O SLS gera mensagens de alerta com base na regra de monitoramento de alerta criada. image

  • Mensagem de alerta

    Após o disparo do alerta, o SLS gera uma mensagem contendo o contexto completo da consulta.

    Nota

    Se uma regra de monitoramento de alerta contiver várias instruções de consulta, o array results/@parmname conterá vários itens. Cada item corresponde a uma instrução de consulta.

    {
        "results": [{
            "store_type": "log",
            "region": "cn-hangzhou",
            "project": "test-alert",
            "store": "nginx-access-log",
            "query": "status >= 400 | select status, __source__ as ip, count(*) as cnt group by status, ip",
            "start_time": 1640006894,
            "end_time": 1640007014,
            "dashboard_id": "",
            "raw_results": [
                { "status": "401", "ip": "127.0.0.1", "cnt": "3" },
                { "status": "400", "ip": "127.0.0.1", "cnt": "7" },
                { "status": "501", "ip": "127.0.0.1", "cnt": "4" },
                { "status": "404", "ip": "127.0.0.1", "cnt": "4" },
                { "status": "402", "ip": "127.0.0.1", "cnt": "6" },
                null
            ],
            "raw_result_count": 6,
            "fire_result": {
                "status": "401",
                "ip": "127.0.0.1",
                "cnt": "3"
            },
            "has_sql": true,
            "truncated": false,
            "role_arn": ""
        }]
    }

    Cada item no array results contém os seguintes campos:

    Campo

    Descrição

    store_type

    Tipo de armazenamento de dados consultado, como log

    region

    Região do projeto

    project

    Nome do projeto SLS

    store

    Nome do Logstore

    query

    Instrução de consulta executada

    start_time

    Horário de início da consulta (timestamp Unix)

    end_time

    Horário de término da consulta (timestamp Unix)

    dashboard_id

    ID do painel associado, se houver

    raw_results

    Todas as linhas retornadas pela consulta

    raw_result_count

    Número total de linhas em raw_results

    fire_result

    Linha específica que disparou o alerta

    has_sql

    Indica se a consulta contém uma instrução de análise SQL

    truncated

    Indica se o conjunto de resultados foi truncado

    role_arn

    ARN da função RAM usada na consulta, se houver

  • Modelo de alerta

    Adicione a variável results ao modelo de alerta para referenciar conteúdo específico de log nas notificações. Para obter mais informações sobre como criar um modelo de alerta, consulte Create an alert template.

    Alert template

Variáveis de modelo

Ao referenciar uma variável em formato JSON em um modelo de alerta — por exemplo, {{ alert.results[0].raw_results | to_json }} — o valor aparece como uma string JSON na notificação. Use um loop para exibir resultados com várias linhas, apresentando cada linha individualmente. Para obter mais informações, consulte Syntax for new alert templates.

{%- for result in alert.fire_results %}
- status: {{ result.status }}, count: {{ result.cnt }}
{%- endfor %}

O SLS oferece funções integradas para formatar o conteúdo das notificações. Para obter mais informações, consulte Syntax for new alert templates e Built-in template functions.