syslog日志记录
http://www.voidcn.com/article/p-tgpvlaby-bd.html
syslog两个规范:
RFC3164(被RFC5424替代了):UDP
RFC3195 :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 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~local7syslog priority取值说明
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
参考
http://book.51cto.com/art/201406/442921.htm
http://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
相关文章