syslog两个规范:
RFC3164(被RFC5424替代了):UDPRFC3195 :TCP
syslog两个重要的文件:
/etc/syslogd(守护进程)/etc/syslog.conf配置文件,有些系统没有该文件
syslog三个重要函数
void openlog(const char *ident, int option, int facility);void syslog(int priority, const char *format, ...);
void closelog(void);
openlog option取值说明
option参 数 | 说 明 |
LOG_CONS | 如果将信息发送给syslogd守护进程时发生错误,直接将相关信息输出到终端 |
LOG_NDELAY | 立即打开与系统日志的连接(通常情况下,只有在产生第一条日志信息的情况下才会打开与日志系统的连接) |
LOG_NOWAIT | 在记录日志信息时,不等待可能的子进程的创建 |
LOG_ODELAY | 类似于LOG_NDELAY参数,与系统日志的连接只有在syslog函数调用时才会创建 |
LOG_PERROR | 在将信息写入日志的同时,将信息发送到标准错误输出(POSIX.1-2001不支持该参数) |
LOG_PID | 每条日志信息中都包括进程号 |
openlog facility取值说明
facility参数 | syslog.conf中对应的facility取值 |
LOG_KERN | kern |
LOG_USER | user |
LOG_MAIL | |
LOG_DAEMON | daemon |
LOG_AUTH | auth |
LOG_SYSLOG | syslog |
LOG_LPR | lpr |
LOG_NEWS | news |
LOG_UUCP | uucp |
LOG_CRON | cron |
LOG_AUTHPRIV | authpriv |
LOG_FTP | ftp |
LOG_LOCAL0~LOG_LOCAL7 | local0~local7 |
priority参数 | syslog.conf中对应的level取值 |
LOG_EMERG | emerg |
LOG_ALERT | alert |
LOG_CRIT | crit |
LOG_ERR | err |
LOG_WARNING | warning |
LOG_NOTICE | notice |
LOG_INFO | info |
LOG_DEBUG | debug |
syslogd的几个命令
Usage: syslogd [OPTIONS]
System logging utility
-n Run in foreground
-R HOST[:PORT] Log to HOST:PORT (default PORT:514)
-L Log locally and via network (default is network only if -R)
-C[size_kb] Log to shared mem buffer (use logread to read it)
-K Log to kernel printk buffer (use dmesg to read it)
-O FILE Log to FILE (default:/var/log/messages, stdout if -)
-s SIZE Max size (KB) before rotation (default:200KB, 0=off)
-b N N rotated logs to keep (default:1, max=99, 0=purge)
-l N Log only messages more urgent than prio N (1-8)
-S Smaller output
-D Drop duplicates
-f FILE Use FILE as config (default:/etc/syslog.conf)
a.启动syslog日志守护进程的命令
#/sbin/syslogd
b.传log日志to server
#/sbin/syslogd -R HOST:PORT
c.关闭所有日志文件,重读/etc/syslog.conf配置文件后重新开始记录日志
#killall -HUP syslogd
d.syslog启动脚本例子
#/etc/init.d/rcS
/bin/mkdir /home/log
killall syslogd
#上传给syslogserver,只上传给server,本地不存储
/sbin/syslogd -O /home/log/xxxxx.log -s 2560 -R 192.168.65.100:514
#/sbin/syslogd -O /home/log/xxxxx.log -s 2560 -L -R 192.168.65.100:514 #server+本地
cp /var/log/messages /home/log/messages
工具使用
a.syslogwather:参考文章:http://blog.csdn.net/lsh6688/article/details/38324447
官网下载: https://syslogwatcher.com/syslog-watcher/
和谐下载:
b.另一个工具 :Kiwi SyslogServer
c.nxlog http://nxlog.org/products/nxlog-community-edition/download
参考
http://book.51cto.com/art/201406/442921.htmhttp://blog.chinaunix.net/uid-26583794-id-3166083.html
syslogd以及syslog.conf文件解读说明:http://www.cnblogs.com/doctorqbw/archive/2012/07/31/2616322.html
关于syslog报文的RFC规范:http://blog.csdn.net/fishmai/article/details/51838681
http://nxlog.org/products/nxlog-community-edition/download