O modo simples agiliza a ingestão de dados ao coletar cada log como uma única entrada não analisada. Este tópico descreve como criar uma configuração do Logtail para o modo simples no console do Log Service.
Pré-requisitos
Crie um projeto e um Logstore. Para mais informações, consulte Gerenciar projetos e Criar um Logstore básico.
O servidor com o Logtail instalado deve ter acesso às portas 80 e 443 em servidores remotos.
-
O servidor de origem gera logs continuamente.
ImportanteO Logtail coleta apenas logs incrementais. Se um arquivo de log não for atualizado após a aplicação de uma configuração do Logtail, ele não coletará logs desse arquivo. Para mais informações, consulte Ler arquivos de log.
Contexto
No modo simples, o Logtail armazena o conteúdo do log no campo content sem extrair campos adicionais. O horário de cada entrada corresponde à hora do sistema do host onde o Logtail está sendo executado no momento da coleta. Por exemplo:
-
Log bruto
127.0.0.1 - - [05/Jan/2023:11:40:39 +0800] "GET /index.html HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" -
Entrada de log no Log Service (o log coletado contém o campo
contentcom toda a linha de log bruta como valor, e o carimbo de data/hora corresponde à hora do sistema no momento da coleta):__time__: 1672893639 content: 127.0.0.1 - - [05/Jan/2023:11:40:39 +0800] "GET /index.html HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
O modo simples suporta a coleta dos seguintes tipos de logs de texto:
-
Log de texto de linha única
Cada linha no arquivo de log representa uma entrada separada.
-
Log de texto multilinha
Uma única entrada abrange várias linhas. Nesse modo, além do diretório e do nome do arquivo, forneça uma amostra de log e uma expressão regular da primeira linha. O Logtail usa essa expressão para identificar o início de uma nova entrada. Linhas que não correspondem à expressão são anexadas à entrada atual até que o Logtail encontre a próxima primeira linha correspondente.
Procedimento
Por padrão, apenas uma configuração do Logtail pode corresponder a um arquivo de log. Para coletar logs do mesmo arquivo várias vezes, consulte Coletar logs de um arquivo várias vezes.
Faça login no console do Simple Log Service.
-
Na seção Import Data, selecione Multi-line text log.
Este tópico usa um log de texto multilinha como exemplo. Para coletar um log de texto de linha única, selecione Single-line text log.
Selecione o projeto e o Logstore de destino e clique em Next.
-
Crie um grupo de máquinas.
Se já tiver um grupo de máquinas, clique em Use Existing Machine Groups.
-
Caso não tenha um grupo de máquinas, siga estas etapas para criar um. Este exemplo utiliza uma instância ECS.
-
Na aba ECS Instance, selecione a instância ECS desejada e clique em Create.
Para mais informações, consulte Instalar o Logtail em instâncias ECS.
ImportanteSe o servidor for uma instância ECS de outra conta Alibaba Cloud, um servidor de outro provedor de nuvem ou um servidor em seu próprio data center, instale o Logtail manualmente. Para mais informações, consulte Instalar o Logtail em um servidor Linux ou Instalar o Logtail em um servidor Windows.
Após instalar o Logtail manualmente, configure um identificador de usuário no servidor. Para mais informações, consulte Configurar um identificador de usuário.
Após concluir a instalação, clique em Complete Installation.
-
Na página Create Machine Group, insira um Name e clique em Next.
O Log Service suporta grupos de máquinas baseados em endereços IP e em identificadores personalizados. Para mais detalhes sobre os parâmetros, consulte Criar um grupo de máquinas baseado em endereço IP e Criar um grupo de máquinas baseado em identificador personalizado.
-
-
Selecione o grupo de máquinas desejado em Source Machine Group, mova-o para Applied Machine Group e clique em Next.
ImportanteAo aplicar um grupo de máquinas imediatamente após a criação, o status de heartbeat poderá aparecer como FAIL porque a conexão ainda não foi estabelecida. Clique em Automatic Retry. Caso o problema persista, consulte Solucionar falhas de heartbeat de grupo de máquinas do Logtail para obter etapas de solução de problemas.
-
Crie uma configuração do Logtail e clique em Next.
Parâmetro
Descrição
Nome da configuração
Nome da configuração do Logtail. Deve ser exclusivo dentro do projeto. Não é possível alterar o nome após a criação.
Também é possível clicar em Import Other Configuration para utilizar uma configuração existente do Logtail.
Caminho do log
Especifique o diretório e o nome do arquivo dos logs no servidor.
-
Em sistemas Linux, o caminho do log deve começar com uma barra (/), como /apsara/nuwa/.../app.Log.
-
Em sistemas Windows, o caminho do log deve começar com uma letra de unidade, por exemplo, C:\Program Files\Intel\...\*.Log.
Nomes de diretórios e arquivos aceitam nomes completos e curingas. Para mais informações sobre padrões de nomes de arquivos, consulte Correspondência com curingas. O Logtail pesquisa recursivamente o caminho especificado para encontrar todos os arquivos correspondentes. Exemplos:
-
/apsara/nuwa/**/*.log: arquivos terminados em .log no diretório /apsara/nuwa e em seus subdiretórios.
-
/var/logs/app_*/**/.log: todos os arquivos com extensão .log em diretórios correspondentes ao padrão app_ (incluindo subdiretórios recursivos) dentro de /var/logs.
-
/var/log/nginx/**/access*: arquivos iniciados com access no diretório /var/log/nginx e em seus subdiretórios recursivos.
NotaOs curingas de caminho de log suportam apenas o asterisco (
*) e o ponto de interrogação (?).-
Asterisco (
*): corresponde a qualquer sequência de caracteres. -
Ponto de interrogação (
?): corresponde a qualquer caractere único.
Lista de bloqueios
Ative a Blacklist para excluir diretórios ou arquivos específicos da coleta. Caminhos completos e curingas são suportados. Exemplos:
-
Selecionar Filter by Directory e definir o caminho como /home/admin/dir1 ignora todo o conteúdo do diretório /home/admin/dir1 durante a coleta.
-
Selecionar Filter by Directory e definir o caminho como /home/admin/dir* ignora o conteúdo de todos os subdiretórios iniciados com
dirdentro de /home/admin/ durante a coleta. -
Selecionar Filter by Directory e definir o caminho como /home/admin/*/dir ignora todo o conteúdo em qualquer subdiretório de segundo nível chamado
dirdentro de /home/admin/ durante a coleta.Por exemplo, o conteúdo de /home/admin/a/dir é ignorado, enquanto o conteúdo de /home/admin/a/b/dir é coletado.
-
Selecionar Filter by File e definir o caminho como /home/admin/private*.log ignora todos os arquivos em /home/admin/ que começam com private e terminam com .log durante a coleta.
-
Selecionar Filter by File e definir o caminho como /home/admin/private/_inner.log ignora arquivos terminados em
_inner.loglocalizados em diretórios iniciados comprivatedentro de /home/admin/ durante a coleta.Por exemplo, o arquivo /home/admin/private/app_inner.log é ignorado, e o arquivo /home/admin/private/app.log é coletado.
Nota-
Curingas de diretório suportam apenas o asterisco (
*) e o ponto de interrogação (?).-
Asterisco (
*): corresponde a qualquer sequência de caracteres. -
Ponto de interrogação (
?): corresponde a qualquer caractere único.
-
-
Ao usar curingas no Log Path e precisar excluir um subdiretório, especifique seu caminho completo na lista de bloqueios para que a exclusão funcione corretamente.
Por exemplo, se o log path for /home/admin/app/log/.log e você quiser filtrar todos os subdiretórios dentro de /home/admin/app1, configure uma lista de bloqueios selecionando Filter by Directory e definindo o caminho como /home/admin/app1/** . Definir o caminho como /home/admin/app1* não surtirá efeito.
-
A correspondência com uma lista de bloqueios consome recursos de computação. Recomendamos manter menos de 10 entradas na lista.
-
Um caminho de diretório não pode terminar com barra (/). Por exemplo, definir o caminho como /home/admin/dir1/ impede que a lista de bloqueios de diretório funcione.
Arquivo Docker
Se o arquivo de log estiver em um contêiner Docker, ative Docker file e configure o caminho interno e as tags do contêiner. O Logtail monitora automaticamente a criação e a destruição de contêineres, filtra-os com base nas tags e coleta logs dos contêineres especificados. Para mais informações, consulte Usar o console para coletar logs de texto de contêineres no modo DaemonSet.
Modo
Modo de coleta. O padrão é simple mode - multi-line. Selecione outro modo, se necessário.
Amostra de log
Forneça uma amostra de log do seu caso de uso real. O Log Service usa essa amostra para gerar automaticamente a expressão regular da primeira linha. Exemplo:
[2020-10-01T10:30:01,000] [INFO] java.lang.Exception: exception happened at TestPrintStackTrace.f(TestPrintStackTrace.java:3) at TestPrintStackTrace.g(TestPrintStackTrace.java:7) at TestPrintStackTrace.main(TestPrintStackTrace.java:16)Este parâmetro não é obrigatório ao coletar logs de texto de linha única no modo simples.
Expressão regular da primeira linha
O Logtail usa uma expressão regular da primeira linha para identificar o início de uma entrada de log. Linhas que não correspondem à expressão são anexadas à entrada anterior. O Log Service pode gerar a expressão automaticamente ou você pode inseri-la manualmente.
-
Geração automática
Após inserir uma amostra de log, clique em Automatically Generate para gerar a expressão regular da primeira linha.
-
Inserção manual
Após inserir uma amostra de log, clique em Manually Enter Regular Expression para digitar sua própria expressão. Depois de inseri-la, clique em Validate para verificá-la. Para mais informações, consulte Como testar uma expressão regular?.
Este parâmetro não é obrigatório ao coletar logs de texto de linha única no modo simples.
Descartar logs com falha na análise
Define se logs com falha na análise devem ser descartados.
-
Ativar drop logs that fail to parse: logs com falha na análise não são enviados ao Log Service.
-
Desativar Drop logs that fail to parse: o log bruto é enviado ao Log Service como valor do campo raw_log quando a análise falhar.
Profundidade máxima de monitoramento de diretório
Profundidade máxima de subdiretórios a monitorar dentro do diretório de log especificado. O valor varia de 0 a 1.000. O valor 0 indica monitoramento apenas do diretório de nível superior.
Configure as definições avançadas conforme necessário. Sem requisitos especiais, mantenha as configurações padrão.
Parâmetro
Descrição
Ativar processamento por plugin
Para logs muito complexos ou não estruturados para modos de análise padrão (como NGINX, expressão regular completa ou JSON), ative Enable Plug-in Processing e adicione um plugin do Logtail para processá-los.
O Log Service gera uma configuração de plugin padrão com base no modo de coleta selecionado. Adicione mais plugins incluindo múltiplos processadores. Para mais informações, consulte Visão geral dos plugins do Logtail para processamento de dados.
ImportanteAo ativar Enable Plug-in Processing, recursos como Upload raw logs, Timezone, Drop logs that fail to parse e Filter configuration ficam indisponíveis.
Enviar logs brutos
Ativar Upload Raw Log: o log bruto é enviado ao Log Service como valor do campo raw, juntamente com o log analisado.
Modo de geração de tópico
Define como gerar um tópico para seus logs. Para mais informações, consulte Tópicos de log.
-
None - Do Not Generate Topic: opção padrão. Define o tópico como uma string vazia. Não é necessário especificar um tópico ao consultar logs.
-
Machine Group Topic Attributes: usa o atributo de tópico do grupo de máquinas. Útil para distinguir logs gerados por diferentes servidores.
-
File Path Regular Expression: usa uma expressão regular para extrair um tópico do caminho do arquivo de log. Especifique a expressão no campo Custom regex. Útil para distinguir logs de diferentes usuários ou instâncias.
Codificação do arquivo de log
Formato de codificação dos arquivos de log. Valores válidos:
utf8egbk.Fuso horário
Fuso horário do carimbo de data/hora do log durante a coleta.
-
Fuso horário da máquina: valor padrão. Usa o fuso horário do host ou contêiner onde o Logtail está sendo executado.
-
Personalizado: permite selecionar manualmente um fuso horário.
Tempo limite
Se um arquivo de log não for atualizado dentro do período especificado, o Logtail considera que o monitoramento atingiu o tempo limite.
-
Nunca expirar: monitora todos os arquivos de log continuamente sem atingir o tempo limite.
-
Tempo limite de 30 minutos: interrompe o monitoramento se o arquivo não for atualizado por 30 minutos.
Ao selecionar Expire in 30 Minutes, defina também Maximum timeout directory depth com um valor de 1 a 3.
Configuração de filtro
Coleta apenas logs que atendem às condições de filtro. As condições incluem o campo key (nome do campo alvo) e o campo Regex (expressão regular para filtragem). Uma operação lógica AND é aplicada entre essas condições.
Importante-
No modo simples, apenas o campo content é gerado. Para definir uma condição de filtro, defina a Key como content.
-
A expressão regular nesta configuração suporta apenas correspondência de texto completo, não correspondência parcial de palavras-chave.
Exemplos:
-
Coleta de logs correspondentes:
-
Definir Key como level e Regex como WARNING|ERROR coleta apenas logs onde o campo level é WARNING ou ERROR.
-
Definir Key como content e Regex como .05\/Jan\/2023. coleta apenas logs onde o campo content contém 05/Jan/2023.
-
-
Exclusão de logs:
-
Definir Key como level e Regex como ^(?!.(INFO|DEBUG)). exclui logs onde o campo level contém INFO ou DEBUG.
-
Definir Key como level e Regex como ^(?!(INFO|DEBUG)$).* impede a coleta de logs com valor de campo level igual a INFO ou DEBUG.
-
Definir Key como url e Regex como .^(?!.(healthcheck)).* exclui logs nos quais o campo url contém
healthcheck.
-
Para mais informações sobre como configurar expressões regulares, consulte Introdução às expressões regulares.
Tamanho inicial da coleta
First Collection Size determina o ponto inicial para coleta de dados de um novo arquivo. Tamanho padrão: 1.024 KB.
-
Arquivo menor que 1.024 KB: a coleta começa no início do arquivo.
-
Arquivo maior que 1.024 KB: a coleta começa 1.024 KB antes do final do arquivo.
É possível alterar o First Collection Size. O valor varia de 0 a 10.485.760. Unidade: KB.
Configuração avançada
Especifica configurações avançadas do Logtail. Para mais informações, consulte Parâmetros avançados.
Por exemplo, para usar esta configuração do Logtail para coletar logs de um arquivo já correspondido por outra configuração e especificar o intervalo de agregação, adicione a seguinte configuração:
{ "force_multiconfig": true, "batch_send_interval": 3 }Clique em Next para criar a configuração do Logtail. O Log Service iniciará então a coleta de logs.
NotaA configuração do Logtail pode levar até 3 minutos para entrar em vigor.
Em caso de erros de coleta, consulte Como visualizar erros de coleta do Logtail? e Erros comuns de coleta.
-
-
Visualize os dados, crie índices e clique em Next.
Por padrão, o Log Service ativa a indexação de texto completo. Crie manualmente índices de campo com base nos logs coletados ou clique em Automatic Index Generation para que o Log Service os crie automaticamente. Para mais informações, consulte Criar índices.
ImportantePara consultar e analisar logs, ative a indexação de texto completo ou um índice de campo. Se ambos estiverem ativados, as consultas utilizarão os índices de campo.
-
Clique em Query Log para acessar a página de Consulta e Análise do Logstore.
Aguarde cerca de um minuto para que os índices entrem em vigor. Em seguida, visualize os logs coletados na aba Raw Logs. Para mais informações, consulte Guia de introdução rápida para consulta e análise de logs.
Solução de problemas
Se nenhum dado aparecer na página de visualização ou consulta após configurar o Logtail para coletar logs, consulte Solucionar falhas de coleta do Logtail.