Update History
2014年04月25日 - 撰写初稿
引言
在自己主动化部署AutoYast。自己主动化监控BMC Patrol双方面形成雏形后。日志的收集、管理、分析也顺势成为我们须要考虑的问题,结合自身业务系统平台特点,大多数系统基于sles_11_sp1或者sp2,对照rsyslog和syslog-ng后终于选择syslog-ng ose(open source edition)作为研究对象。下面内容中的參数解释请參阅官方文档,兴许会补充有关Oracle日志写入方式。假设实力不行再考虑MySQL。
#检查版本号
rpm -qa | grep syslog-ng syslog-ng-2.0.9-27.32.1 服务端Server配置
#建立目录 mkdir /var/log/syslog-ng #编辑配置文件 vi /etc/syslog-ng/syslog-ng.conf #---------------------------- code ---------------------start #全局变量 options { sync (0); flush_lines(0); time_reopen (10); use_dns (no); use_fqdn(no); chain_hostnames(off); keep_hostname(off); create_dirs (yes); owner(root) ; group(root); perm(0640) ; dir_perm(0750) ; }; source src { # message generated by Syslog-NG #internal(); # standard Linux log source (this is the default place for the syslog() # function to send logs to) #unix-stream("/dev/log"); # messages from the kernel #pipe("/proc/kmsg"); # remote port tcp(ip(0.0.0.0) port(514)); #udp(ip(0.0.0.0) port(514)); }; #定义日志过滤规则 #filter f_filter1 { level(info)}; #定义日志写入模板 #template t_filetemplate {template("${ISODATE} ${HOST} ${MSG}\n"); template_escape(no); }; template t_filetemplate {template("${MSG}\n"); template_escape(no); }; #定义client日志在server上保存的格式。位置和权限等 destination d_mesg { file("/var/log/syslog-ng/$YEAR$MONTH$DAY/$HOST/messages",perm(0777),template(t_filetemplate)); }; #输出自己定义消息路径 log { source(src); destination(d_mesg); }; #log { source(src); filter(f_filter1); destination(d_mesg); }; #----------------------------------------------------------- #splunk use 1999 port destination d_splunk { tcp("127.0.0.1" port(1999) localport(999)); }; log { source(src); destination(d_splunk); }; #---------------------------- code ---------------------end clientClient配置 #配置client #vi /etc/syslog.conf #*.* @loghost
vi /etc/syslog-ng/syslog-ng.conf #加入例如以下: source s_tail {file("/monitor/auditlog/osaudit.txt" follow_freq(1) flags(no-parse));}; destination d_loghost { tcp("198.15.0.205" port (514)); };
#filter f_info { level(info); };
log {source(s_tail); destination(d_loghost);}; --禁用服务重新启动syslog rcapparmor stop rcsyslog restart #启动服务端 rcsyslog restart 整合splunk
加入syslog-ng步骤:
在Admin->Data Inputs->Network Ports上点选New Input.选择TCP 1999 port, Set Source Type选Form List,Source Type选Syslog,这种设定就能够给Syslog-ng传log了。
改动syslog-ng步骤:
如上述code所看到的。假设不是付费用户。有500M索引限制,求大神帮忙Crack下
#參考文档
本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/5122311.html,如需转载请自行联系原作者