[ anterior ] [ Conteúdo ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ 32 ] [ próximo ]
A atividade dos programas são registradas em arquivos localizados em
/var/log
. Estes arquivos de registros são chamados de
logs e contém a data, hora e a mensagem emitida pelo programa
(violações do sistema, mensagens de erro, alerta e outros eventos) entre outros
campos. Enfim, muitos detalhes úteis ao administrador tanto para acompanhar o
funcionamento do seu sistema, comportamento dos programas ou ajudar na solução
e prevenção de problemas.
Alguns programas como o Apache
, exim
,
ircd
e squid
criam diversos arquivos de log e por
este motivo estes são organizados em sub-diretórios (a mesma técnica é usada
nos arquivos de configuração em /etc
, conforme a padrão FHS
atual).
Um arquivo de log é normalmente composto pelos seguintes campos:
Data|Hora|Máquina|daemon|mensagem
O campo máquina é o nome do computador que registrou a mensagem (a máquina pode atuar como um servidor de logs registrando mensagens de diversos computadores em sua rede). O campo daemon indica qual programa gravou a mensagem.
O uso dos utilitários do console pode ajudar muito na pesquisa e monitoração
dos logs, por exemplo, para obter todas as mensagens do daemon
kernel
da estação de trabalho wrk1, eliminando os
campos "wrk1" e "kernel":
cat /var/log/*|grep 'wrk1'|grep 'kernel'|awk '{print $1 $2 $3 $6 $7 $8 $9 $10 $11 $12}'
Os parâmetros "$1", "$2" do comando awk
indica
que campos serão listados, (omitimos $4 e $5 que são respectivamente
"wrk1" e "kernel").
Os daemons de log do sistema registram as mensagens de saída do kernel
(klogd
) e sistema (syslogd
) nos arquivos em
/var/log
.
A classificação de qual arquivo em /var/log
receberá qual tipo de
mensagem é controlado pelo arquivo de configuração
/etc/syslog.conf
através de facilidades e níveis
(veja Arquivo de configuração
syslog.conf
, Seção 17.2.1.1 para detalhes).
Este daemon controla o registro de logs do sistema.
syslogd [opções]
Especifica um arquivo de configuração alternativo ao
/etc/syslog.conf
.
Permite redirecionar mensagens recebidas a outros servidores de logs especificados.
Especifica um ou mais computadores (separados por ":") que deverão ser registrados somente com o nome de máquina ao invés do FQDN (nome completo, incluindo domínio).
Intervalo em minutos que o syslog mostrará a mensagem --MARK--. O valor padrão padrão é 20 minutos, 0 desativa.
Evita que o processo caia automaticamente em background. Necessário
principalmente se o syslogd
for controlado pelo init
.
Especifica um soquete UNIX alternativo ao invés de usar o padrão
/dev/log
.
Permite o recebimento de mensagens através da rede através da porta UDP 514.
Esta opção é útil para criar um servidor de logs centralizado na rede. Por
padrão, o servidor syslog
rejeitará conexões externas.
Especifica a lista de domínios (separados por ":") que deverão ser retirados antes de enviados ao log.
Na distribuição Debian
, o daemon syslogd
é iniciado
através do script /etc/init.d/sysklogd
.
syslog.conf
O arquivo de configuração /etc/syslog.conf
possui o seguinte
formato:
facilidade.nível destino
A facilidade e nível são separadas por um "." e contém parâmetros que definem o que será registrado nos arquivos de log do sistema:
facilidade - É usada para especificar que tipo de programa está enviando a mensagem. Os seguintes níveis são permitidos (em ordem alfabética):
auth - Mensagens de segurança/autorização (é recomendável usar authpriv ao invés deste).
authpriv - Mensagens de segurança/autorização (privativas).
cron - Daemons de agendamento (cron
e
at
).
daemon - Outros daemons do sistema que não possuem facilidades específicas.
ftp - Daemon de ftp do sistema.
kern - Mensagens do kernel.
lpr - Subsistema de impressão.
local0 a local7 - Reservados para uso local.
mail - Subsistema de e-mail.
news - Subsistema de notícias da USENET.
security - Sinônimo para a facilidade auth (evite usa-la).
syslog - Mensagens internas geradas pelo syslogd
.
user - Mensagens genéricas de nível do usuário.
uucp - Subsistema de UUCP.
* - Confere com todas as facilidades.
Mais de uma facilidade pode ser especificada na mesma linha do
syslog.conf
separando-as com ",".
nível - Especifica a importância da mensagem. Os seguintes níveis são permitidos (em ordem de importância invertida; da mais para a menos importante):
emerg - O sistema está inutilizável.
alert - Uma ação deve ser tomada imediatamente para resolver o problema.
crit - Condições críticas.
err - Condições de erro.
warning - Condições de alerta.
notice - Condição normal, mas significante.
info - Mensagens informativas.
debug - Mensagens de depuração.
* - Confere com todos os níveis.
none - Nenhuma prioridade.
Além destes níveis os seguintes sinônimos estão disponíveis:
error - Sinônimo para o nível err.
panic - Sinônimo para o nível emerg.
warn - Sinônimo para o nível warning.
destino - O destino das mensagens pode ser um arquivo, um pipe (se
iniciado por um "|"), um computador remoto (se iniciado por uma
"@"), determinados usuários do sistema (especificando os logins
separados por vírgula) ou para todos os usuários logados via wall
(usando "*").
Todas as mensagens com o nível especificado e superiores a esta especificadas
no syslog.conf
serão registradas, de acordo com as opções usadas.
Conjuntos de facilidades e níveis podem ser agrupadas
separando-as por ";".
OBS1: Sempre use TABS ao invés de espaços para separar os parâmetros do
syslog.conf
.
OBS2: Algumas facilidades como security, emitem um beep de alerta no sistema e enviam uma mensagem para o console, como forma de alerta ao administrador e usuários logados no sistema.
Existem ainda 4 caracteres que garantes funções especiais: "*", "=", "!" e "-":
"*" - Todas as mensagens da facilidade especificada serão redirecionadas.
"=" - Somente o nível especificado será registrado.
"!" - Todos os níveis especificados e maiores NÃO serão registrados.
"-" - Pode ser usado para desativar o sync imediato do arquivo após sua gravação.
Os caracteres especiais "=" e "!" podem ser combinados em uma mesma regra.
Exemplo: Veja abaixo um exemplo de um arquivo /etc/syslog.conf
padrão de sistemas Debian
# # Primeiro alguns arquivos de log padrões. Registrados por facilidade # auth,authpriv.* /var/log/auth.log *.*;auth,authpriv.none -/var/log/syslog cron.* /var/log/cron.log daemon.* -/var/log/daemon.log kern.* -/var/log/kern.log lpr.* -/var/log/lpr.log mail.* /var/log/mail.log user.* -/var/log/user.log uucp.* -/var/log/uucp.log # # Registro de logs do sistema de mensagens. Divididos para facilitar # a criação de scripts para manipular estes arquivos. # mail.info -/var/log/mail.info mail.warn -/var/log/mail.warn mail.err /var/log/mail.err # Registro para o sistema de news INN # news.crit /var/log/news/news.crit news.err /var/log/news/news.err news.notice -/var/log/news/news.notice # # Alguns arquivos de registro "pega-tudo". # São usadas "," para especificar mais de uma prioridade (por # exemplo, "auth,authpriv.none") e ";" para especificar mais de uma # facilidade.nível que será gravada naquele arquivo. # Isto permite deixar as regras consideravelmente menores e mais legíveis # *.=debug;\ auth,authpriv.none;\ news.none;mail.none -/var/log/debug *.=info;*.=notice;*.=warn;\ auth,authpriv.none;\ cron,daemon.none;\ mail,news.none -/var/log/messages # # Emergências são enviadas para qualquer um que estiver logado no sistema. Isto # é feito através da especificação do "*" como destino das mensagens e são # enviadas através do comando wall. # *.emerg * # # Eu gosto de ter mensagens mostradas no console, mas somente em consoles que # não utilizo. # #daemon,mail.*;\ # news.=crit;news.=err;news.=notice;\ # *.=debug;*.=info;\ # *.=notice;*.=warn /dev/tty8 # O pipe /dev/xconsole é usado pelo utilitário "xconsole". Para usa-lo, # você deve executar o "xconsole" com a opção "-file": # # $ xconsole -file /dev/xconsole [...] # # NOTA: ajuste as regras abaixo, ou ficará maluco se tiver um um site # muito movimentado... # daemon.*;mail.*;\ news.crit;news.err;news.notice;\ *.=debug;*.=info;\ *.=notice;*.=warn |/dev/xconsole # A linha baixo envia mensagens importantes para o console em que # estamos trabalhando logados (principalmente para quem gosta de ter # controle total sobre o que está acontecendo com seu sistema). *.err;kern.debug;auth.notice;mail.crit /dev/console
Este daemon controla o registro de mensagens do kernel. Ele monitora as
mensagens do kernel e as envia para o daemon de monitoramento
syslogd
, por padrão.
klogd [opções]
Ativa o modo de depuração do daemon
Envia as mensagens do kernel para o arquivo especificado ao invés de enviar ao
daemon do syslog
Envia um sinal para o daemon recarregar os símbolos de módulos do kernel.
Envia um sinal para o daemon recarregar os símbolos estáticos e de módulos do kernel.
Evita a operação em segundo plano. Útil se iniciado pelo init
Especifica o arquivo que contém os símbolos do kernel. Exemplos deste arquivo
estão localizados em /boot/System.map-xx.xx.xx
.
A especificação de um arquivo com a opção -k é necessária se desejar que sejam mostradas a tabela de símbolos ao invés de endereços numéricos do kernel.
Este comando permite enviar uma mensagem nos log do sistema. A mensagem é
enviada aos logs via daemon syslogd
ou via soquete do sistema, é
possível especificar a prioridade, nível, um nome identificando o processo,
etc. Seu uso é muito útil em shell scripts ou em outros eventos do sistema.
logger [opções] [mensagem]
Onde:
Mensagem que será enviada ao daemon syslog
Registra o PID do processo
Envia a mensagem ambos para a saída padrão (STDOUT) e syslog.
Envia o conteúdo do arquivo especificado como mensagem ao syslog.
Especifica o nome do processo responsável pelo log que será exibido antes do PID na mensagem do syslog.
Especifica a prioridade da mensagem do syslog, especificada como
facilidade.nível. Veja os tipos de prioridade/níveis em Arquivo de configuração syslog.conf
,
Seção 17.2.1.1. O valor padrão prioridade.nível é
user.notice
Mais detalhes sobre o funcionamento sobre o daemon de log do sistema
syslogd
, pode ser encontrado em syslogd,
Seção 17.2.1
Exemplos: logger -i -t focalinux Teste teste teste, logger -i -f /tmp/mensagem -p security.emerg
[ anterior ] [ Conteúdo ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ 32 ] [ próximo ]
Guia Foca GNU/Linux
Versão 5.65 - domingo, 05 de setembro de 2010gleydson@guiafoca.org