Facility and Priority at Syslog Server

Facebooktwittermail

ネットワーク機器などのログはメモリに記録されることが多く保存容量に制限があったり再起動すると消えて無くなるなど運用に支障をきたす場合があります

そういうときはログをSyslog Serverに転送して保存しておけば何ヶ月も記録することが出来るので障害対応などに有効な資料になると思います

でもこれらネットワーク機器等が転送してくるログのFacilityやPriorityが不明な場合が多く設定に苦慮することが多かったのですが、今回とても親切で分かりやすい資料を見つけたので紹介したいと思います


■syslog について ・・・データ形式・・・
http://www.infoscience.co.jp/technical/press/app02.html

一応FreeBSDってことで記述されてますが、Linuxなどでも同じではないかと思います

PRIは32bitで上位29bitがFacilityで下位3bitがPriorityになるようです
確認方法としてはsyslogdをデバッグモード(-d)で起動します
コンソール画面に下記のようなメッセージがルーターから転送されてきました

freenas:~# /etc/rc.d/syslogd restart
Stopping syslogd.
Starting syslogd.
allowaddr: rule 0: numeric, addr = 192.168.1.0, mask = 255.255.255.0; port = 514
listening on inet and/or inet6 socket
sending on inet and/or inet6 socket
off & running….
init
cfline(“local3.* %/var/log/sshd.log”, f, “*”, “*”)
cfline(“local4.* %/var/log/rsyncd.log”, f, “*”, “*”)
cfline(“local5.* %/var/log/smartd.log”, f, “*”, “*”)
cfline(“ftp.* %/var/log/ftp.log”, f, “*”, “*”)
cfline(“daemon.* %/var/log/daemon.log”, f, “*”, “*”)
cfline(“*.notice;kern.debug;lpr.info;mail.crit;mail.info;news.err;local0.none;local7.none;user.none %/var/log/system.log”, f, “*”, “*”)
cfline(“security.* %/var/log/system.log”, f, “*”, “*”)
cfline(“auth.info;authpriv.info %/var/log/system.log”, f, “*”, “*”)
cfline(“*.emerg *”, f, “*”, “*”)
cfline(“*.* /var/log/router.log”, f, “*”, “+192.168.1.1”)
X X X X X X X X X X X X X X X X X X X 7 X X X X X RING: /var/log/sshd.log
X X X X X X X X X X X X X X X X X X X X 7 X X X X RING: /var/log/rsyncd.log
X X X X X X X X X X X X X X X X X X X X X 7 X X X RING: /var/log/smartd.log
X X X X X X X X X X X 7 X X X X X X X X X X X X X RING: /var/log/ftp.log
X X X 7 X X X X X X X X X X X X X X X X X X X X X RING: /var/log/daemon.log
7 5 6 5 5 5 6 3 5 5 5 5 5 5 5 5 X 5 5 5 5 5 5 X X RING: /var/log/system.log
X X X X X X X X X X X X X 7 X X X X X X X X X X X RING: /var/log/system.log
X X X X 6 X X X X X 6 X X X X X X X X X X X X X X RING: /var/log/system.log
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X WALL:
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 X FILE: /var/log/router.log
logmsg: pri 56, flags 4, from freenas, msg syslogd: restart
syslogd: restarted
logmsg: pri 6, flags 4, from freenas, msg syslogd: kernel boot file is /boot/kernel/kernel
Logging to RING /var/log/system.log
syslogd: kernel boot file is /boot/kernel/kernel
cvthname(192.168.1.1)
Host name for your address (192.168.1.1) unknown
validate: dgram from IP 192.168.1.1, port 514, name 192.168.1.1;
accepted in rule 0.
logmsg: pri 15, flags 0, from 192.168.1.1, msg [INSPECT] PP[03][out][202099] UDP 192.168.1.254:123 > xxx.xxx.xxx.xxx:123 (2012/04/30 15:23:24)
Logging to FILE /var/log/router.log
cvthname(192.168.1.1)
Host name for your address (192.168.1.1) unknown
validate: dgram from IP 192.168.1.1, port 514, name 192.168.1.1;
accepted in rule 0.

ルーターから流れてくるログはpri 15でした。これを32bitの二進数で表すと

00000000000000000000000000001111

上位29bitがFacilityなのでルーターから流れてくるログはuser(00000000000000000000000000001=1)で下位3bitがPriorityでこの場合はdebug(111=7)になります

FacilityわかればSyslog Serverの設定は簡単になりますね

Leave a Reply