syslog-ng学习心得之二
2008-06-03 19:55:19
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://coolerfeng.blog.51cto.com/133059/80152 |
在http://coolerfeng.blog.51cto.com/133059/7996已经对syslogng进行了介绍 可能没有用过的朋友还是不太了解,下面讲一个例子 cat /etc/syslog-ng/syslog-ng.conf #Syslog-ng configuration file options { long_hostnames(off); #long_hostnames(yes|no) :是chain_hostnames的别名,已不建议使用 sync(100); #sync(n) :缓存多少行的信息再写入文件中,0为不缓存,局部参数可以覆盖该值。 stats(43200); #stats(n) :多少时间(秒)写入两行STATUS信息供,默认值是:600 create_dirs(yes); #create_dirs(yes创建目录 compress(yes); #压缩 log_fifo_size(200); #设置输出队列的大小 # 为了防止发送日志的daemon程序阻塞,syslog-ng一直在读取其向内的日志通道。如果输出队列已满,就可能造成日志消息的丢失。因此,设置输出队列的大小非常重要,你可以设置全局输出队列的大小,也可以为每个日志消息驱动器设置输出队列的大小。 }; #src source src { unix-stream("/dev/log"); internal(); pipe("/proc/kmsg"); udp(ip(0.0.0.0) port(514)); }; #定义消息源src,从udp514端口接收 #Linux 一个叫作/dev/log的SOCK_STREAM unix套接字 #通常,内核会把自己的消息送到一个特殊的文件(BSD系统是/dev/kmsg,Linux系统是/proc/kmsg) # internal();所有syslog-ng内部产生的日志消息。 #pipe,fifo 打开指定的管道或者FIFO设备,读取日志信息 #for realtime alert destination d_realtime_alert { udp("0.0.0.0" port(7777)); }; destination d_realtimepass_alert { udp("0.0.0.0" port(8888)); }; #定义目的地d_realtime_alert,把日志消息发送到指定的UDP端口7777 #定义目的地d_realtimepass_alert,把日志消息发送到指定的UDP端口8888 destination d_passport { file("/opt/syslog-ng/log/passport_log"); }; #把日志消息写入指定的文件 destination d_maildlogin { udp("0.0.0.0" port(9801)); }; #destination d_maildlogin { file("/opt/syslog-ng/log/oplog/$YEAR.$MONTH.$DAY.$HOUR.log" create_dirs(yes)); }; #用变量来创建文件,这样每小时自动生成一个日志文件,实现分割 #192.168.132.203 filter f_192.168.132.203 { host("192.168.132.203"); }; #定义过滤器,匹配来自192.168.132.203的日志消息 log { source(src); filter (f_192.168.132.203); destination(d_passport); }; #把消息源、过滤器、消息目的组合起来就形成一条完整的指令。日志路径中的成员是顺序执行的。凡是来源于指定的消息源,匹配所有指定的过滤器,并送到指定的地址 destination d_webmail_stat_log { file("/opt/syslog-ng/log/oplog/$YEAR.$MONTH.$DAY.$HOUR.log" create_dirs(yes)); udp("localhost" port(2005)); udp("localhost" port(2004)); }; #同时记录到文件和发送到UDP端口2005,2004 #Webmail Statistic filter f_webmail_stat { program("oplog"); }; #program(parm) :启动指定的程序oplog,并把日志消息发送到该进程的标准输入 以上是接收日志。发送端可以是程序,也可以是系统自带的syslogd cat /etc/syslog.conf local6.* @192.168.20.85 本文出自 “风吹云动” 博客,请务必保留此出处http://coolerfeng.blog.51cto.com/133059/80152 本文出自 51CTO.COM技术博客 |



coolerfeng
博客统计信息
热门文章
最新评论
友情链接

