Todos os produtos
Search
Central de documentação

Simple Log Service:Coletar Syslog de sistemas Linux

Última atualização: Aug 26, 2026

Crie uma configuração do Logtail no console do SLS para coletar dados Syslog de servidores Linux.

Como funciona

How it works

Em um servidor Linux, um agente Syslog como o rsyslog encaminha os dados Syslog locais para um endereço IP e porta especificados. O Logtail escuta nesse endereço e porta, recebe os dados via tcp ou udp e os analisa conforme o protocolo Syslog configurado para extrair campos como facility, tag (programa), severidade e conteúdo.

O Syslog suporta os protocolos definidos em RFC 3164 e RFC 5424.

Pré-requisitos

Procedimento

Os passos a seguir usam uma instância ecs como exemplo.

  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 e 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 os passos abaixo para criar um. Neste exemplo, usa-se uma instância Elastic Compute Service (ecs).

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

        Para mais detalhes, consulte Install Logtail on ecs instances.

        Importante

        Se o seu servidor for uma instância ecs pertencente a uma conta Alibaba Cloud diferente da usada pelo Simple Log Service, um servidor em data center local ou um servidor de outro provedor de cloud, instale o Logtail manualmente nesse servidor. Consulte Install Logtail on a Linux server ou Install Logtail on a Windows server para obter instruções. Após a instalação manual, configure um identificador de usuário para o servidor. Para mais informações, consulte Configure a user identifier.

      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, defina o parâmetro Name e clique em Next.

        O Simple Log Service permite criar grupos de máquinas baseados em endereços IP ou em identificadores personalizados. Para mais informações, consulte Create an IP address-based machine group e Create a custom identifier-based machine group.

  5. Verifique 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 What do I do if no heartbeat connections are detected on Logtail?

  6. Na aba Configure Data Source, defina o campo Configuration Name, copie e cole o script abaixo no campo Plug-in Configuration e clique em Next.

    {
         "inputs": [
             {
                 "type": "service_syslog",
                 "detail": {
                     "Address": "tcp://0.0.0.0:9000",
                     "ParseProtocol": "rfc3164"
                 }
             },
             {
                 "type": "service_syslog",
                 "detail": {
                     "Address": "udp://0.0.0.0:9001",
                     "ParseProtocol": "rfc3164"
                 }
             }
         ]
     }

    Parâmetros:

    Parameter

    Type

    Required

    Description

    type

    string

    Yes

    Tipo da fonte de dados. Defina como service_syslog.

    Address

    string

    No

    Endpoint de escuta. Formato: [tcp/udp]://[ip]:[port]. Padrão: tcp://127.0.0.1:9999 (apenas servidor local).

    Nota
    • O protocolo, o endereço e o número de porta definidos na configuração do Logtail devem corresponder à regra de encaminhamento no arquivo de configuração do rsyslog.

    • Se o servidor onde o Logtail está instalado tiver múltiplos endereços IP aptos a receber logs, defina o endereço como 0.0.0.0 para escutar em todos os IPs do servidor.

    ParseProtocol

    string

    No

    Protocolo de análise. Padrão: vazio (sem análise). Valores válidos:

    • Vazio: Os logs não são analisados.

    • rfc3164: Analisa os logs usando o protocolo RFC 3164.

    • rfc5424: Analisa os logs usando o protocolo RFC 5424.

    • auto: Seleciona automaticamente um protocolo adequado com base no conteúdo do log.

    IgnoreParseFailure

    boolean

    No

    Ação em caso de falha na análise. Padrão: true (ignora a análise e grava o log bruto no campo content). Defina como false para descartar logs que não possam ser analisados.

    AutoConfigRsyslog

    boolean

    No

    Define se o encaminhamento do rsyslog deve ser configurado automaticamente. Padrão: false. Quando definido como true, o LoongCollector cria automaticamente um arquivo de configuração de encaminhamento em /etc/rsyslog.d/ e reinicia o rsyslogd. Requer LoongCollector 3.3.9 ou superior. Se o LoongCollector for executado como um usuário não root, este recurso será ignorado automaticamente e um log de aviso será gerado. A coleta normal de logs não é afetada.

    RsyslogFilters

    string[]

    No

    Especifica regras de encaminhamento do rsyslog para filtrar quais níveis de facility e severidade dos logs devem ser coletados. Usa a sintaxe padrão de filtros do rsyslog (facility.severity). Padrão: . (todos os logs). Exemplo: ["auth.warning","authpriv.warning","kern.err","daemon.info"]. Só entra em vigor quando AutoConfigRsyslog estiver definido como true.

    Importante
    • Permissões de root necessárias — A escrita em /etc/rsyslog.d/ e o reinício do rsyslogd exigem permissões de root. Caso o LoongCollector seja executado como usuário não root, essa funcionalidade será ignorada automaticamente e um log de alerta será emitido. A coleta normal de logs permanece inalterada.

    • Desativado por padrão — O parâmetro AutoConfigRsyslog tem como padrão false e não altera o comportamento existente. O recurso só é ativado quando explicitamente definido como true.

    • Atualizações de configuração — Sempre que Address ou RsyslogFilters forem alterados, o LoongCollector atualiza automaticamente a configuração de encaminhamento do rsyslog e o reinicia. Se as configurações nova e existente forem idênticas, o reinício será ignorado para evitar interrupções desnecessárias no service.

    • Relação com configuração manual — Caso você já tenha configurado manualmente o encaminhamento do rsyslog, remova essa configuração antes de ativar o AutoConfigRsyslog para evitar duplicidade no encaminhamento de logs.

    • Múltiplas configurações de coleta — Várias configurações de coleta service_syslog podem ter o AutoConfigRsyslog habilitado simultaneamente. Cada configuração gera um arquivo separado de encaminhamento do rsyslog (o nome do arquivo contém o configName). Esses arquivos não entram em conflito entre si.

    • Suporte exclusivo ao rsyslogd — A configuração e o reinício automáticos são suportados apenas para o rsyslogd. Outros daemons de encaminhamento syslog, como o syslog-ng, não são compatíveis.

    Detalhes da configuração de encaminhamento

    Os arquivos de configuração de encaminhamento do rsyslog gerados automaticamente seguem esta convenção de nomenclatura: 10-loongcollector-{configName}.conf

    • Prefixo 10- — Controla a ordem de carregamento dos arquivos do rsyslog. Os arquivos em /etc/rsyslog.d/ são carregados em ordem alfabética. O prefixo 10- garante que as regras de encaminhamento sejam carregadas antes das regras padrão do sistema (geralmente 50-default.conf), assegurando que os logs sejam encaminhados antes da aplicação das regras locais. As regras de encaminhamento não bloqueiam as regras subsequentes (como gravações em arquivos locais).

    • {configName} — Corresponde ao nome da configuração de coleta do LoongCollector. Múltiplas configurações de coleta podem habilitar o encaminhamento automático simultaneamente sem conflitos.

    • Permissões de arquivo0644 (proprietário: root, leitura permitida para outros usuários), consistente com os arquivos existentes em /etc/rsyslog.d/.

    Cenários de reinício do rsyslog

    A tabela a seguir indica se o rsyslogd é reiniciado em cada cenário quando o AutoConfigRsyslog está habilitado.

    Scenario

    rsyslog restarted

    Entrega inicial da configuração de coleta

    Sim

    Alteração de configuração com diferenças (protocolo Address, IP ou porta alterados; ou RsyslogFilters alterado)

    Sim

    Alteração de configuração sem diferenças (conteúdo inalterado)

    Não

    Configuração de coleta removida

    Sim

    Encerramento do LoongCollector

    Não (a configuração de encaminhamento é mantida; o rsyslog usa sua fila para armazenar logs em buffer e o encaminhamento é retomado automaticamente após o reinício do LoongCollector)

  7. Na aba Query and Analysis Configurations, clique em Automatic Index Generation. Nenhum dado é coletado neste momento. Clique em Next para finalizar a configuração do Logtail.

  8. Faça login na instância ecs que gera o Syslog e configure o encaminhamento do rsyslog.

    1. No servidor onde o Syslog é gerado, modifique o arquivo de configuração do rsyslog localizado em /etc/rsyslog.conf e adicione uma regra de encaminhamento ao final do arquivo.

      Após adicionar a regra, o rsyslog encaminhará o Syslog para o endereço e porta especificados.

      • Para coletar Syslog do mesmo servidor que executa o Logtail, defina o endereço de encaminhamento como 127.0.0.1 e use a mesma porta especificada na configuração do Logtail.

      • Para coletar Syslog de um servidor remoto, defina o endereço de encaminhamento como o IP público do servidor que executa o Logtail e use a mesma porta especificada na configuração do Logtail.

      Por exemplo, a regra a seguir encaminha todos os logs para 127.0.0.1:9000 via tcp. A sintaxe completa está disponível na documentação do RSyslog.

      *.* @@127.0.0.1:9000
    2. Execute o comando abaixo para reiniciar o rsyslog e aplicar a regra de encaminhamento.

      sudo service rsyslog restart
  9. Visualize os dados Syslog coletados no Logstore de destino. Quick start for query and analysis.

Campos de log

Field

Description

_hostname_

Assume o hostname do host atual como padrão, caso não seja fornecido no log.

_program_

Campo tag do protocolo Syslog.

_priority_

Campo priority do protocolo Syslog.

_facility_

Campo facility do protocolo Syslog.

_severity_

Campo severity do protocolo Syslog.

_unixtimestamp_

Timestamp do log.

_content_

Conteúdo do log. Se a análise falhar, este campo conterá todo o conteúdo do log bruto.

_ip_

Endereço IP do host atual.

_client_ip_

Endereço IP do cliente que enviou o log.

Mais exemplos

Logs do Nginx

O Nginx oferece suporte nativo ao encaminhamento de logs de acesso via protocolo Syslog. Para centralizar a coleta de todos os dados do servidor, incluindo logs de acesso do Nginx, no SLS via Syslog, crie uma configuração do Logtail.

  1. Crie uma configuração do Logtail conforme descrito em Collect Linux Syslog.

    O código a seguir apresenta um exemplo de script de Plug-in Configuration.

    {
         "inputs": [
             {
                 "type": "service_syslog",
                 "detail": {
                     "Address": "udp://127.0.0.1:9001",
                     "ParseProtocol": "rfc3164"
                 }
             }
         ]
     }
  2. Adicione uma regra de encaminhamento para o Nginx.

    1. Inclua uma regra de encaminhamento no nginx.conf. A documentação oficial do Nginx detalha a estrutura de configuração.

      Exemplo:

      server {
          ...
      
          # Add this line.
          access_log syslog:server=127.0.0.1:9001,facility=local7,tag=nginx,severity=info combined;
      
          ...
      }
                                      
    2. Execute o comando abaixo para reiniciar o serviço Nginx e aplicar a configuração.

      sudo service nginx restart

Logs de firewall

Firewalls geralmente suportam o encaminhamento de logs via protocolo Syslog. Para centralizar a coleta de logs de firewall no SLS (por exemplo, para construir um SIEM), crie uma configuração do Logtail.

  1. Crie uma configuração do Logtail conforme descrito em Collect Linux Syslog.

    O código a seguir apresenta um exemplo de script de Plug-in Configuration.

    {
         "inputs": [
             {
                 "type": "service_syslog",
                 "detail": {
                     "Address": "udp://0.0.0.0:9001",
                     "ParseProtocol": "rfc3164"
                 }
             }
         ]
     }
  2. Adicione uma regra de encaminhamento seguindo a documentação do seu firewall. Neste exemplo, o IP do servidor Logtail é 10.20.30.40.image

Solução de problemas

Se nenhum dado aparecer após configurar o Logtail, execute o comando logger para enviar dados de teste à instância local do Logtail. Isso ajuda a isolar se o problema está na source de dados, na rede ou no próprio Logtail.

Caso a instância local do Logtail receba os dados, o problema provavelmente reside na source de dados ou na rede.

logger -n localhost -P 9000 -T "This is a TCP syslog message"
logger -n localhost -P 9001 -d "This is a UDP syslog message"

Troubleshoot Logtail log collection failures.

Coletar logs de auditoria do auditd

O auditd é o processo daemon do sistema de auditoria do Linux. Por padrão, ele grava logs de auditoria em /var/log/audit/audit.log. Use o recurso de coleta de logs de texto do Logtail para enviar esses logs de auditoria ao Simple Log Service (SLS).

Pré-requisitos

  • Instale o auditd. No Ubuntu, execute apt-get install auditd. No CentOS, execute yum install audit.

  • Crie um projeto e um LogStore.

  • Instale o Logtail e crie um grupo de máquinas.

Procedimento

  1. No console do SLS, acesse o LogStore de destino e crie uma configuração do Logtail.

  2. Selecione o modo de coleta de logs de texto.

  3. Defina o caminho do log como /var/log/audit/audit.log.

  4. Escolha o modo regex completo e defina a expressão regular como (.*) para coletar cada linha do log como o campo content.

Formato de log do auditd

Cada linha de um log do auditd começa com type= (por exemplo, type=SYSCALL ou type=USER_ACCT) e contém msg=audit(timestamp:serial number), além de campos como pid, uid, auid e ses.

Referências

Upload logs using the Syslog protocol descreve como usar o Syslog-ng para enviar logs via conexões criptografadas com tls no formato RFC 5424. O rsyslog e o Syslog-ng não podem ser executados simultaneamente. Caso pretenda usar o Syslog-ng, desinstale o rsyslog primeiro.