Todos os produtos
Search
Central de documentação

Simple Log Service:Coletar logs de journal do systemd

Última atualização: Jul 03, 2026

O Logtail coleta logs de journal do systemd Linux a partir de arquivos binários. Crie uma configuração do Logtail no console do Log Service para coletar esses logs.

Pré-requisitos

Instale o Logtail 0.16.18 ou posterior para Linux no servidor. Instalar o Logtail em um servidor Linux.

Introdução

O systemd é um gerenciador de sistema e serviços do Linux. Quando executado como PID 1, ele inicia e mantém serviços no espaço do usuário e gerencia centralmente os logs de todas as unidades, incluindo logs do kernel e de aplicativos. O arquivo de configuração geralmente está em /etc/systemd/journald.conf.

Nota

O sistema operacional deve oferecer suporte ao formato de log journal.

Recursos

  • Salva checkpoints automaticamente para retomar a coleta após reinicializações.

  • Filtra logs por unidades específicas.

  • Coleta logs do kernel.

  • Analisa níveis de log automaticamente.

  • Coleta logs de journal do host em ambientes conteinerizados, como Docker e Kubernetes.

Casos de uso

  • Monitore eventos do kernel e acione alertas automáticos para exceções.

  • Armazene todos os logs do sistema a longo prazo para reduzir o uso de espaço em disco.

  • Colete logs de saída de softwares (unidades) para análise ou geração de alertas.

  • Pesquise palavras-chave ou entradas em logs journal mais rapidamente do que com o comando journalctl.

Procedimento

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

  2. Na seção Import Data, selecione Custom Data Plug-in.

  3. Selecione o projeto e o Logstore de destino e clique em Next.

  4. Na etapa Machine Group Configurations, configure um grupo de máquinas.

    1. Configure os parâmetros Scenario e Installation Environment conforme necessário.

      Importante

      Configure os parâmetros Scenario e Installation Environment independentemente da disponibilidade de um grupo de máquinas. Essas definições afetam as configurações subsequentes.

    2. Verifique se um grupo de máquinas aparece na seção Applied Server Groups e clique em Next.

      Grupo de máquinas disponível

      Selecione um grupo de máquinas na seção Source Machine Group.

      image

      Nenhum grupo de máquinas disponível

      Clique em Create Machine Group. No painel Create Machine Group, configure os parâmetros. Defina o parâmetro Machine Group Identifier como IP Address ou Custom Identifier. Para mais informações, consulte Criar um grupo de máquinas baseado em identificador personalizado ou Criar um grupo de máquinas baseado em endereço IP.

      Importante

      Se você aplicar um grupo de máquinas logo após criá-lo, o status de heartbeat poderá ser FAIL. Isso ocorre porque o grupo ainda não está conectado ao Simple Log Service. Para resolver, clique em Automatic Retry. Caso o problema persista, consulte O que fazer se nenhuma conexão de heartbeat for detectada no Logtail?

  5. Na aba Data Source Settings, defina o Configuration Name e a Plug-in Configuration e clique em Next.

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

      Importante

      Especifique apenas um tipo de source de dados em inputs.

    • O campo processors é opcional e configura o processamento de dados na configuração do Logtail para analisar os dados coletados. Especifique um ou mais métodos de processamento.

      Se os logs não puderem ser analisados apenas com a configuração de inputs, adicione plugins de processamento no campo Plug-in Configuration. Exemplos incluem extração de campos, obtenção de horário do log, mascaramento de dados e filtragem de logs. Para mais detalhes, consulte Plugins do Logtail para processamento de dados.

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/var/log/journal"
            ],
            "Kernel": true,
            "ParsePriority": true,
            "ParseSyslogFacility": true
          },
          "type": "service_journal"
        }
      ]
    }

    Parâmetro

    Tipo

    Obrigatório

    Descrição

    type

    String

    Sim

    Tipo da source de dados. Defina como service_journal.

    JournalPaths

    Array de strings

    Sim

    Caminhos dos diretórios de journal do systemd. Exemplo: /var/log/journal.

    SeekPosition

    String

    Não

    Posição inicial da coleta. Valores válidos: head e tail. Valor padrão: tail.

    • head: Coleta todos os dados de log existentes desde o início.

    • tail: Coleta apenas novos dados de log gerados após a aplicação da configuração.

    Kernel

    Booleano

    Não

    Indica se os logs do kernel devem ser coletados. Padrão: true.

    Units

    Array de strings

    Não

    Unidades das quais os logs serão coletados. Se deixado vazio, o Logtail coleta de todas as unidades.

    ParseSyslogFacility

    Booleano

    Não

    Analisa o campo facility dos logs syslog. Padrão: false.

    ParsePriority

    Booleano

    Não

    Analisa o campo Priority. Padrão: false.

    Quando definido como true, o campo Priority segue este mapeamento:

      "0": "emergency"
      "1": "alert"
      "2": "critical"
      "3": "error"
      "4": "warning"
      "5": "notice"
      "6": "informational"
      "7": "debug"

    UseJournalEventTime

    Booleano

    Não

    Utiliza o timestamp da entrada do log journal como horário do log. Padrão: false (usa o horário da coleta).

    Em coletas em tempo real, a diferença entre o timestamp do journal e o horário da coleta costuma ser inferior a 3 segundos.

  6. Crie índices e visualize os dados. Em seguida, clique em Next. Por padrão, a indexação de texto completo já vem ativada no Simple Log Service. Também é possível criar manualmente índices de campo para os logs coletados ou clicar em Automatic Index Generation para que o Simple Log Service gere os índices de campo automaticamente. Para mais informações, consulte Criar índices.

    Importante

    Para consultar todos os campos dos logs, use índices de texto completo. Se precisar consultar apenas campos específicos, utilize índices de campo para reduzir o tráfego de indexação. A análise de campos exige a criação de índices de campo e a inclusão de uma instrução SELECT na consulta.

  7. Clique em Query Log para ser redirecionado à página de consulta e análise do seu Logstore.

    Aguarde cerca de 1 minuto para que os índices entrem em vigor. Depois disso, visualize os logs coletados na aba Raw Logs. Para saber mais sobre consulta e análise de logs, consulte Guia rápido de consulta e análise.

Exemplos

  • Exemplo 1

    Coleta de logs journal do diretório padrão /var/log/journal. Configuração utilizada:

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/var/log/journal"
            ]
          },
          "type": "service_journal"
        }
      ]
    }

    Amostra de log:

    MESSAGE:  rejected connection from "192.168.0.250:43936" (error "EOF", ServerName "")
    PACKAGE:  embed
    PRIORITY:  6
    SYSLOG_IDENTIFIER:  etcd
    _BOOT_ID:  fe919cd1268f4721bd87b5c18afe59c3
    _CAP_EFFECTIVE:  0
    _CMDLINE:  /usr/bin/etcd --election-timeout=3000 --heartbeat-interval=500 --snapshot-count=50000 --data-dir=data.etcd --name 192.168.0.251-name-3 --client-cert-auth --trusted-ca-file=/var/lib/etcd/cert/ca.pem --cert-file=/var/lib/etcd/cert/etcd-server.pem --key-file=/var/lib/etcd/cert/etcd-server-key.pem --peer-client-cert-auth --peer-trusted-ca-file=/var/lib/etcd/cert/peer-ca.pem --peer-cert-file=/var/lib/etcd/cert/192.168.0.251-name-3.pem --peer-key-file=/var/lib/etcd/cert/192.168.0.251-name-3-key.pem --initial-advertise-peer-urls https://192.168.0.251:2380 --listen-peer-urls https://192.168.0.251:2380 --advertise-client-urls https://192.168.0.251:2379 --listen-client-urls https://192.168.0.251:2379 --initial-cluster 192.168.0.249-name-1=https://192.168.0.249:2380,192.168.0.250-name-2=https://192.168.0.250:2380,192.168.0.251-name-3=https://192.168.0.251:2380 --initial-cluster-state new --initial-cluster-token abac64c8-baab-4ae6-8412-4253d3cfb0cf
    _COMM:  etcd
    _EXE:  /opt/etcd-v3.3.8/etcd
    _GID:  995
    _HOSTNAME:  iZbp1f7y2ikfe4l8nx95amZ
    _MACHINE_ID:  f0f31005fb5a436d88e3c6cbf54e25aa
    _PID:  10926
    _SOURCE_REALTIME_TIMESTAMP:  1546854068863857
    _SYSTEMD_CGROUP:  /system.slice/etcd.service
    _SYSTEMD_SLICE:  system.slice
    _SYSTEMD_UNIT:  etcd.service
    _TRANSPORT:  journal
    _UID:  997
    __source__:  172.16.1.4
    __tag__:__hostname__:  logtail-ds-8kqb9
    __topic__:  
    _monotonic_timestamp_:  1467135144311
    _realtime_timestamp_:  1546854068864309
  • Exemplo 2

    Nota

    Limitações na coleta de logs journal do host a partir de um contêiner:

    • Contêineres com systemd versão 247 ou anterior não conseguem coletar logs journal de hosts que executam systemd versão 249 ou posterior.

    • Contêineres com systemd versão 249 ou posterior leem logs nos formatos antigo e novo.

    Em ambientes Kubernetes, utilize o modo DaemonSet para coletar logs do sistema host. Aplique plugins de processamento para manter apenas os campos relevantes. Exemplo de configuração:

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/logtail_host/var/log/journal"
            ],
            "ParsePriority": true,
            "ParseSyslogFacility": true
          },
          "type": "service_journal"
        }
      ],
      "processors": [
        {
          "detail": {
            "Exclude": {
              "UNIT": "^libcontainer.*test"
            }
          },
          "type": "processor_filter_regex"
        },
        {
          "detail": {
            "Include": [
              "MESSAGE",
              "PRIORITY",
              "_EXE",
              "_PID",
              "_SYSTEMD_UNIT",
              "_realtime_timestamp_",
              "_HOSTNAME",
              "UNIT",
              "SYSLOG_FACILITY",
              "SYSLOG_IDENTIFIER"
            ]
          },
          "type": "processor_pick_key"
        }
      ]
    }

    Amostra de log:

    MESSAGE:  rejected connection from "192.168.0.251:48914" (error "EOF", ServerName "")
    PRIORITY:  informational
    SYSLOG_IDENTIFIER:  etcd
    _EXE:  /opt/etcd-v3.3.8/etcd
    _HOSTNAME:  iZbp1i0czq3zgvxlx7u8ueZ
    _PID:  10590
    _SYSTEMD_UNIT:  etcd.service
    __source__:  172.16.0.141
    __tag__:__hostname__:  logtail-ds-dp48x
    __topic__:  
    _realtime_timestamp_:  1547975837008708

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.