红联Linux门户
Linux帮助

如何将syslogng的日志写入MySQL数据库

发布时间:2008-06-01 16:06:44来源:红联作者:zidscen
我在使用syslog-ng搭建日志服务器中已经讲了如何将syslog-ng配置为中心日志服务器,下面介绍如何将syslogng的日志写入mysql数据库

系统:Gentoo-2007

1、修改/etc/syslog-ng/syslog-ng.conf,添加[code]source s_remote {
udp(ip(0.0.0.0) port(514));
};

destination r_mysql {
program("/usr/bin/mysql -usyslogadmin -psyslogadmin syslog < /var/log/mysql.pipe");
pipe("/var/log/mysql.pipe"
template("INSERT INTO logs
(host, facility, priority, level, tag, datetime, program, msg)
VALUES ( '$HOST', '$FACILITY', '$PRIORITY', '$LEVEL', '$TAG', '$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC',
'$PROGRAM', '$MSG' );\n") template-escape(yes));
};
log { source(s_remote); destination(r_mysql); };[/code]2、建立mysql.pipe文件按
#mkfifo /var/log/mysql.pipe

3、重新启动syslog-ng
#/etc/init.d/syslog-ng restart

这种方法如果结合phpsyslogng一起使用,就可以在浏览器中对日志进行进一步的过滤和查看,非常方便。

官方网站地址是:http://code.google.com/p/php-syslog-ng/
文章评论

共有 1 条评论

  1. zidscen 于 2008-06-01 16:07:12发表:

    注:本文是xiaowei的原作