Todos os produtos
Search
Central de documentação

Simple Log Service:Coletar dados HTTP

Última atualização: Jul 03, 2026

O Logtail envia solicitações HTTP para URLs especificadas em intervalos regulares, conforme a configuração do Logtail. Em seguida, o Logtail carrega os corpos das respostas como fontes de dados no Simple Log Service. Este tópico descreve como criar uma configuração do Logtail no console do Simple Log Service e usá-la para coletar dados HTTP.

Pré-requisitos

Instale o Logtail no servidor. Para mais informações, consulte Instalar o Logtail em um servidor Linux ou Instalar o Logtail em um servidor Windows.

Nota

Servidores Linux exigem o Logtail V0.16.0 ou posterior. Servidores Windows exigem o Logtail V1.0.0.8 ou posterior.

Implementação

O Logtail envia solicitações HTTP para as URLs definidas com base nos endereços, métodos, cabeçalhos e corpos especificados na configuração do Logtail. Posteriormente, o Logtail carrega os códigos de status da resposta, os corpos da resposta e o tempo de resposta como fontes de dados no Simple Log Service.

实现原理

Recursos

  • Especifique múltiplas URLs.

  • Defina métodos de solicitação HTTP.

  • Configure o intervalo de envio das solicitações.

  • Use cabeçalhos de solicitação personalizados.

  • Utilize HTTPS.

  • Verifique se o corpo de uma resposta corresponde a um padrão fixo.

Cenários

  • Monitore o status de serviços por meio de operações de API HTTP. Por exemplo, monitore os seguintes tipos de serviços:

    • NGINX

    • Docker com suporte a monitoramento via operações de API HTTP

    • Elasticsearch

    • HAProxy

    • Outros serviços compatíveis com monitoramento por operações de API HTTP

  • Monitore a disponibilidade de serviços.

    O Logtail monitora a disponibilidade de um serviço ao enviar solicitações em intervalos regulares e verificar os códigos de status da resposta e a latência da solicitação.

  • Colete dados periodicamente, como comentários do Weibo e número de seguidores.

Limites

  • A URL deve começar com http ou https.

  • Certificados personalizados não são suportados.

  • Comunicações interativas não são suportadas.

Procedimento

O procedimento a seguir mostra como coletar dados HTTP do módulo de status do NGINX. As solicitações são enviadas para a URL http://127.0.0.1/ngx_status em intervalos de 1.000 milissegundos. Uma expressão regular extrai as informações de status do corpo da resposta.

  1. Faça login no console do Simple Log Service.

  2. No lado direito da página, clique em Import Data e selecione Custom Data Plug-in.

  3. Selecione o projeto e o Logstore. Em seguida, clique em Next.

  4. Crie um grupo de máquinas.

    • Se já existir um grupo de máquinas disponível, clique em Use Existing Machine Groups.

    • Caso não haja grupos de máquinas disponíveis, siga as etapas abaixo para criar um. Neste exemplo, usa-se uma instância do Elastic Compute Service (ECS).

      1. Na aba ECS Instance, selecione Manually Select Instances. Depois, escolha a instância ECS desejada e clique em Create.

        Para mais informações, consulte Instalar o Logtail em instâncias ECS.

        Importante

        Se o servidor for uma instância ECS pertencente a uma conta Alibaba Cloud diferente daquela do Simple Log Service, um servidor em data center local ou um servidor de outro provedor de nuvem, instale o Logtail manualmente. Para mais detalhes, consulte Instalar o Logtail em um servidor Linux ou Instalar o Logtail em um servidor Windows. Após a instalação manual, configure um identificador de usuário para o servidor. Consulte Configurar um identificador de usuário para obter instruções.

      2. Após confirmar as configurações, clique em OK.

      3. Quando a instalação do Logtail for concluída, clique em Complete Installation.

      4. Na etapa Create Machine Group, configure o parâmetro Name e clique em Next.

        O Simple Log Service permite criar grupos de máquinas baseados em endereço IP e grupos baseados em identificadores personalizados. Para saber mais, consulte Criar um grupo de máquinas baseado em endereço IP e Criar um grupo de máquinas baseado em identificador personalizado.

  5. Confirme se o grupo de máquinas aparece na seção Applied Server Groups e clique em Next.

    Importante

    Ao aplicar um grupo de máquinas logo após sua criação, o status de heartbeat pode aparecer como FAIL. Isso ocorre porque o grupo ainda não estabeleceu conexão com o Simple Log Service. Para resolver, clique em Automatic Retry. Se o problema persistir, consulte O que fazer se nenhuma conexão de heartbeat for detectada no Logtail?

  6. Na etapa Specify Data Source, configure Config Name e Plug-in Config. Depois, clique em Next.

    Coleta via plug-in do Logtail

    • O campo inputs é obrigatório e define as configurações da fonte de dados para a configuração do Logtail.

      Importante

      Especifique apenas um tipo de fonte de dados em inputs.

    • O campo processors é opcional e serve para configurar o processamento de dados na configuração do Logtail, permitindo a análise dos logs. Defina um ou mais métodos de processamento.

      Caso seus logs não possam ser analisados apenas com a configuração de inputs, configure processors no campo Plug-in Configuration para adicionar plug-ins de processamento de dados. Exemplos incluem extração de campos, obtenção do horário do log, mascaramento de dados e filtragem de logs. Para mais detalhes, consulte Usar plug-ins do Logtail para processar dados.

    {
     "inputs": [
         {
             "type": "metric_http",
             "detail": {
                 "IntervalMs": 1000,
                 "Addresses": [
                     "http://127.0.0.1/ngx_status"
                 ],
                 "Headers": {"key":"value"},
                 "IncludeBody": true
             }
         }
     ],
     "processors" : [
         {
             "type": "processor_regex",
             "detail" : {
                 "SourceKey": "content",
                 "Regex": "Active connections: (\\d+)\\s+server accepts handled requests\\s+(\\d+)\\s+(\\d+)\\s+(\\d+)\\s+Reading: (\\d+) Writing: (\\d+) Waiting: (\\d+).*",
                 "Keys": [
                     "connection",
                     "accepts",
                     "handled",
                     "requests",
                     "reading",
                     "writing",
                     "waiting"
                 ],
                 "FullMatch": true,
                 "NoKeyError": true,
                 "NoMatchError": true,
                 "KeepSource": false
             }
         }
     ]
    }

    Parâmetro

    Tipo

    Obrigatório

    Descrição

    type

    string

    Sim

    Tipo da fonte de dados. Defina o valor como metric_http.

    Addresses

    string array

    Sim

    URLs de destino.

    Importante

    A URL deve começar com http ou https.

    IntervalMs

    int

    Sim

    Intervalo entre duas solicitações consecutivas. Unidade: milissegundos.

    Method

    string

    Não

    Método da solicitação. Valor padrão: GET. O valor deve conter apenas letras maiúsculas.

    Body

    string

    Não

    Corpo da solicitação HTTP. Este parâmetro está vazio por padrão.

    Headers

    key: string, value: string map

    Não

    Cabeçalhos da solicitação HTTP. Este parâmetro está vazio por padrão. Exemplo: {"key":"value"}. Configure este parâmetro conforme o seu cenário de negócio.

    PerAddressSleepMs

    int

    Não

    Intervalo de envio de solicitações para as URLs definidas no parâmetro Addresses. Unidade: milissegundos. Valor padrão: 100.

    ResponseTimeoutMs

    int

    Não

    Tempo limite de espera pela resposta da solicitação. Unidade: milissegundos. Valor padrão: 5000.

    IncludeBody

    boolean

    Não

    Define se o corpo da solicitação deve ser coletado. Valor padrão: false. Se definido como true, o corpo da solicitação será armazenado no campo chamado content.

    FollowRedirects

    boolean

    Não

    Indica se redirecionamentos de URL devem ser processados automaticamente. Valor padrão: false.

    InsecureSkipVerify

    boolean

    Não

    Determina se a verificação de segurança HTTPS deve ser ignorada. Valor padrão: false.

    ResponseStringMatch

    string

    Não

    Define se o corpo da resposta deve ser comparado com uma expressão regular. O resultado da comparação é armazenado no campo _response_match_. Se houver correspondência, o valor do campo será yes; caso contrário, será no.

  7. Visualize os dados, configure os índices e clique em Next.

    Por padrão, a indexação de texto completo está ativada no Simple Log Service. Também é possível configurar índices de campo com base nos logs coletados, manual ou automaticamente. Para gerar índices de campo automaticamente, clique em Automatic Index Generation. Assim, o Simple Log Service cria os índices de campo de forma automática. Para mais informações, consulte Criar índices.

    Importante

    Para consultar e analisar logs, ative a indexação de texto completo ou a indexação de campo. Se ambas estiverem ativadas, o sistema utilizará apenas os índices de campo.

Solução de problemas

Se nenhum dado aparecer na página de visualização ou consulta após configurar a coleta de logs com o Logtail, consulte Solucionar falhas na coleta do Logtail.

Resultado

Após a coleta, visualize os dados no console do Simple Log Service. Para cada solicitação, veja os dados analisados pela expressão regular especificada, além do método de solicitação HTTP, URL solicitada, tempo de resposta, código de status e resultado da solicitação.

"Index" : "7"  
"connection" : "1"  
"accepts" : "6079"  
"handled" : "6079"  
"requests" : "11596"  
"reading" : "0"  
"writing" : "1"  
"waiting" : "0"
"_method_" : "GET"  
"_address_" : "http://127.0.0.1/ngx_status"  
"_response_time_ms_" : "1.320"  
"_http_response_code_" : "200"  
"_result_" : "success"

Por padrão, os seguintes campos são carregados para cada solicitação.

Campo

Descrição

_address_

URL da solicitação.

_method_

Método da solicitação HTTP.

_response_time_ms_

Latência da resposta. Unidade: milissegundos.

_http_response_code_

Código de status HTTP.

_result_

Resultado da solicitação. Valores válidos: success, invalid_body, match_regex_invalid, mismatch e timeout.

_response_match_

Indica se o corpo da resposta corresponde ao valor do campo ResponseStringMatch. Se o campo ResponseStringMatch não existir, o valor de _response_match_ será nulo. Caso o campo ResponseStringMatch exista, o valor será yes ou no.