Linux Logging Basics (Português)

Operating system logs provide a wealth of diagnostic information about your computer, and Linux is no exception. Tudo, desde eventos do kernel até ações do usuário são registrados pelo Linux, permitindo que você veja quase qualquer ação realizada em seus servidores. Nesta seção, vamos explicar o que são os logs do Linux, onde você pode encontrá-los, e como interpretá-los.

os logs do sistema Linux

o Linux tem uma pasta especial para armazenar logs chamados /var/log., Este diretório contém logs do próprio SO, serviços e várias aplicações em execução no sistema. Aqui está como este diretório se parece em um típico sistema Ubuntu.

Alguns dos mais importantes do Linux logs do sistema incluem:

  • /var/log/syslog e /var/log/messages armazenar todas global da actividade do sistema de dados, incluindo mensagens de arranque. Sistemas baseados em Debian como Ubuntu armazenam isso em /var/log/syslog, enquanto sistemas baseados em Red Hat como RHEL ou CentOS usam .,
  • /var/log/auth.loge /var/log/secure armazenar todos os eventos relacionados com a segurança, tais como logins, acções do utilizador raiz e saída dos módulos de autenticação pluggable (PAM). Ubuntu e Debian usam /var/log/auth.log, enquanto Red Hat e CentOS usam /var/log/secure.
  • /var/log/kern.log armazena eventos de kernel, erros e registros de aviso, que são particularmente úteis para resolver problemas de kernels personalizados.
  • /var/log/cron armazena informações sobre tarefas agendadas (tarefas de cron)., Use estes dados para verificar se as suas tarefas de cron estão a correr com sucesso.

algumas aplicações também escrevem ficheiros de registo nesta pasta. Por exemplo, o servidor web Apache escreve logs para o /var/log/apache2 directory (no Debian), enquanto o MySQL escreve logs para o /var/log/mysql directory. Algumas aplicações também fazem login através do syslog, o que explicaremos na próxima seção.
syslog

What’s Syslog?

Syslog é um padrão para a criação e transmissão de logs. A palavra “syslog” pode se referir a qualquer um dos seguintes.,

  1. o serviço syslog, que recebe e processa mensagens syslog. Ele ouve eventos criando um socket localizado em /dev/log, para o qual as aplicações podem escrever. Ele pode escrever mensagens para um arquivo local ou encaminhar mensagens para um servidor remoto. Existem diferentes implementações syslog, incluindo rsyslogd e syslog-ng.
  2. o protocolo syslog( RFC 5424), que é um protocolo de transporte que especifica como transmitir logs através de uma rede. É também um formato de dados que define como as mensagens são estruturadas., Por padrão, ele usa a porta 514 para mensagens de texto simples e a porta 6514 para mensagens criptografadas.
  3. uma mensagem syslog, que é qualquer log formatado no formato de mensagem syslog. Uma mensagem syslog consiste de um cabeçalho e mensagem padronizados contendo o conteúdo do log.

Uma vez que o syslog pode encaminhar mensagens para servidores remotos, é frequentemente usado para encaminhar logs do sistema para soluções de gerenciamento de log, tais como SolarWinds® Loggly® e SolarWinds Papertrail™.

Syslog Format and Fields

Syslog messages contain a standardized header with several fields., Estes incluem o timestamp, o nome da aplicação que gerou o evento, a localização no sistema onde a mensagem se originou, e sua prioridade. Você pode alterar este formato no arquivo de configuração da implementação do syslog, mas usando o formato padrão torna mais fácil processar, analisar e route os Eventos do syslog.

Aqui está uma mensagem de registo de exemplo usando o formato padrão. É do servidor sshd, que controla logins remotos para o sistema., Esta mensagem descreve uma tentativa de autenticação falhada:

Jun 4 22:14:15 server1 sshd : Failed password for root from 10.0.2.2 port 22 ssh2
<%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msgid% %msg%n

isto gera o seguinte log:

abaixo, irá encontrar descrições de alguns dos campos de syslog mais usados ao procurar ou resolver problemas.

Timestamp

O campo timestamp indica a hora e a data em que a mensagem foi gerada no sistema que enviou a mensagem. O exemplo timestamp se divide assim:

  • “2019-06-05” é o ano, mês e dia.
  • “T”é um elemento necessário do campo timestamp, separando a data e a hora.,
  • “22: 14: 15.003” é o formato de 24 horas do tempo, incluindo o número de milisegundos (003).
  • “Z” indica a hora UTC. Em vez de z, o exemplo poderia ter incluído um offset, como -08:00, O que indica que o tempo é offset a partir de UTC por oito horas.

Hostname

O campo hostname (“server1” no exemplo acima) indica o nome da máquina ou sistema que enviou originalmente a mensagem.

App-Name

O Campo app-name (“sshd:auth” no exemplo) indica o nome da aplicação que enviou a mensagem.,

Prioridade

O campo prioridade ou pri para “short” (“<34>” no exemplo acima) diz-lhe como de urgência ou gravidade do evento. É uma combinação de dois campos numéricos: a instalação e a gravidade. A facilidade especifica o tipo de processo que criou o evento, variando de 0 para mensagens de kernel a 23 para aplicações locais. A gravidade varia de 0-7, com 0 indicando uma emergência e 7 indicando um evento de depuração.

Pri pode ser Saída de duas maneiras., O primeiro é como um número único, prival, que é calculado como o valor de campo da instalação multiplicado por oito, então o resultado é adicionado ao valor de campo de gravidade: (facilidade)(8) + (gravidade). O segundo é pri-text, que irá sair no formato string “facilidade.gravidade”. O último formato pode muitas vezes ser mais fácil de ler e procurar, mas ocupa mais espaço de armazenamento.

login com Systemd

muitas distribuições Linux embarcam com systemd, que é um gerenciador de processos e serviços. Systemd implementa seu próprio serviço de registro chamado journald que pode substituir ou complementar syslog., Journald logs em uma maneira significativamente diferente do systemd, que é por isso que tem sua própria seção no Guia final para o Logging. Você pode aprender mais sobre o registro através do systemd na seção de registro do Systemd.

Share

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *