GNU/Linux >> Znalost Linux >  >> Cent OS

Vysvětlení souboru /etc/rsyslog.conf pro konfiguraci systémového protokolování

Všechny systémové a jaderné zprávy jsou předány rsyslogd. U každé přijaté zprávy protokolu Rsyslog prohlíží svůj konfigurační soubor /etc/rsyslog.conf určit, jak s touto zprávou naložit. Rsyslog hledá v konfiguračním souboru všechny příkazy pravidel, které odpovídají této zprávě, a zpracovává zprávu tak, jak to diktuje každý příkaz pravidla. Pokud zprávě neodpovídá žádný příkaz pravidla, Rsyslog ji zahodí. Příkazy pravidel specifikují dvě věci:
1. jaké zprávy mají odpovídat (selektory) a
2. co dělat s odpovídajícími zprávami (akcemi).

Selektory

Zprávy, které se mají shodovat, jsou specifikovány selektorem, který odpovídá zařízením a prioritám, zatímco akce, které se mají použít na odpovídající zprávy, jsou specifikovány polem akce. Například následující konfigurační řádek říká Rsyslogu, aby použil akci /var/log/kernlog na všechny zprávy se schopností kern a úrovní ladění:

# cat /etc/rsyslog.conf
kern.debug             /var/log/kernlog

Příkazy priority v selektorech jsou hierarchické. Rsyslog bude odpovídat všem zprávám se zadanou prioritou a vyšší. Selektor kern.debug porovnává všechny zprávy vytvořené jádrem s prioritou ladění nebo vyšší; protože ladění má nejnižší možnou prioritu, selektor kern.debug porovná všechny zprávy s funkcí kern. Kromě toho může být hvězdička použita jako zástupný znak pro reprezentaci všech priorit, takže kern.* by také odpovídalo všem zprávám vytvořeným jádrem.

Na rozdíl od prioritního pole není pole zařízení hierarchické. Stále je však možné spárovat více zpráv z různých zařízení. Vícenásobné voliče mohou být uvedeny na řádku oddělené středníky. To může být užitečné, když je třeba stejnou akci použít na více zpráv. Podobně lze zástupný znak hvězdičky použít k určení všech zařízení, což poskytuje další metodu pro aplikaci akce na různé zprávy.

Zařízení a priority Syslog

Funkce se používá k určení, jaký typ programu generuje zprávu. Démon Syslog pak může být nakonfigurován tak, aby zpracovával zprávy z různých zdrojů odlišně. Tato tabulka uvádí standardně definovaná zařízení se stručným popisem toho, k čemu se používají:

Zařízení Popis
auth/authpriv bezpečnostní/autorizační zprávy
cron zprávy démonů crond a atd
démon jiní systémoví démoni
kern zprávy jádra
local0 – local7 rezervováno pro místní použití
lpr subsystém řádkové tiskárny
mail podsystém pošty
novinky Zpravodajský subsystém USENET
syslog zprávy generované interně démonem systémového protokolu
uživatel obecné zprávy na uživatelské úrovni
uucp Podsystém UUCP

Priorita nebo úroveň zprávy je určena k určení důležitosti zprávy. Tato tabulka uvádí standardní úrovně priority se stručným popisem jejich významů:

Priorita Popis
emerg systém je nepoužitelný
upozornění musí být okamžitě přijata opatření
crit kritické podmínky
chyba chybové stavy
varování podmínky varování
upozornění normální, ale významný stav
informace informační zprávy
ladění ladící zprávy

Akce

Je možných mnoho akcí, i když do pravidla může být zahrnuta pouze jedna:

  • Názvy souborů mohou být uvedeny v poli akce, které určuje umístění souborů, do kterých má být vybraná zpráva zapsána. Tyto soubory mohou být textové soubory, jak je tomu obvykle, ale mohou to být také soubory zařízení, jako je terminál nebo tiskárna.
  • Lze také zadat uživatelská jména. Pokud je pojmenovaný uživatel přihlášen do systému, když Rsyslog zpracovává zprávu, bude zpráva vytištěna na všech terminálech tohoto uživatele.
  • Hvězdička pro tuto akci říká Rsyslogu, aby napsal zprávu všem přihlášeným uživatelům (jde na všechny aktivní terminály).
  • Zprávy lze odesílat vzdáleným hostitelům. Akce @host říká Rsyslogu, aby předal zprávu hostiteli počítače, kde ji znovu zpracuje démon Syslog daného hostitele.

Výchozí soubor /etc/rsyslog.conf

Níže je výchozí konfigurační soubor /etc/rsyslog.conf v CentOS 6.

# cat /etc/rsyslog.conf 
# rsyslog v5 configuration file

# For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html
# If you experience problems, see http://www.rsyslog.com/doc/troubleshoot.html

#### MODULES ####

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imklog   # provides kernel logging support (previously done by rklogd)
#$ModLoad immark  # provides --MARK-- message capability

# Provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

# Provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514


#### GLOBAL DIRECTIVES ####

# Use default timestamp format
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# File syncing capability is disabled by default. This feature is usually not required,
# not useful and an extreme performance hit
#$ActionFileEnableSync on

# Include all config files in /etc/rsyslog.d/
$IncludeConfig /etc/rsyslog.d/*.conf


#### RULES ####

# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.*                                                 /dev/console

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none                /var/log/messages

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

# Log all the mail messages in one place.
mail.*                                                  -/var/log/maillog


# Log cron stuff
cron.*                                                  /var/log/cron

# Everybody gets emergency messages
*.emerg                                                 *

# Save news errors of level crit and higher in a special file.
uucp,news.crit                                          /var/log/spooler

# Save boot messages also to boot.log
local7.*                                                /var/log/boot.log


# ### begin forwarding rule ###
# The statement between the begin ... end define a SINGLE forwarding
# rule. They belong together, do NOT split them. If you create multiple
# forwarding rules, duplicate the whole block!
# Remote Logging (we use TCP for reliable delivery)
#
# An on-disk queue is created for this action. If the remote host is
# down, messages are spooled to disk and sent when it is up again.
#$WorkDirectory /var/lib/rsyslog # where to place spool files
#$ActionQueueFileName fwdRule1 # unique name prefix for spool files
#$ActionQueueMaxDiskSpace 1g   # 1gb space limit (use as much as possible)
#$ActionQueueSaveOnShutdown on # save messages to disk on shutdown
#$ActionQueueType LinkedList   # run asynchronously
#$ActionResumeRetryCount -1    # infinite retries if host is down
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
# ### end of the forwarding rule ###


Cent OS
  1. Centos – Jaký je rozdíl mezi /usr/lib/systemd/system a /etc/systemd/system?

  2. Vysvětlení konfiguračního souboru dm-multipath /etc/multipath.conf

  3. Ukázkový soubor /etc/multipath.conf

  1. Vysvětlení kdump Konfigurační soubor /etc/kdump.conf

  2. Porozumění systému souborů sysfs (/sys) v Linuxu

  3. Porozumění systému souborů /proc

  1. Pochopení souboru /etc/inittab v Linuxu

  2. Vysvětlení souboru /etc/rsyslog.conf pro konfiguraci systémového protokolování

  3. Vysvětlení adresáře /etc/sysconfig