将syslogng日志写入MySQL(远程)数据库
Centos6.5
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、做网站、龙江网络推广、微信小程序开发、龙江网络营销、龙江企业策划、龙江品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供龙江建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
syslog-ng 3.25
MySQL
1,yum install syslog-ng.x86_64
2,yum install mysql.x86_64 // 支持mysql 命令运行
3,mkfifo –m 777 /var/log/mysql.pipe // 创建通道并赋予权限
4, logsys-ng.conf // 修改配置文件
//源
source s_sys {
file ("/proc/kmsg" program_override("kernel: "));
unix-stream ("/dev/log");
internal();
# udp(ip(0.0.0.0) port(514));
};
//规则 用默认的,自己写也行
filter f_default { level(info..emerg) and
not (facility(mail)
or facility(authpriv)
or facility(cron)); };
// 传输目标
destination mysql {
program("mysql -h20.10.10.10 -uxxxxx -pxxxxx table < /var/log/mysql.pipe");
pipe("/var/log/mysql.pipe"
template("INSERT INTO w_sys_logs (host, facility, priority, level, tag,
datetime, program, msg) VALUES ( '$HOST', '$FACILITY', '$PRIORITY',
'$LEVEL', '$TAG', '$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC', '$PRORAM',
'$MSG' );n") template-escape(yes) ); };
// table 为 数据库名
// 消息组合
log { source(s_sys); filter(f_default);destination(mysql); };
// 创建数据库
DROP TABLE IF EXISTS `w_sys_logs`;
CREATE TABLE `w_sys_logs` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(32) DEFAULT NULL,
`facility` varchar(10) DEFAULT NULL,
`priority` varchar(10) DEFAULT NULL,
`level` varchar(10) DEFAULT NULL,
`tag` varchar(10) DEFAULT NULL,
`datetime` datetime DEFAULT NULL,
`program` varchar(15) DEFAULT NULL,
`msg` text,
PRIMARY KEY (`id`),
KEY `host` (`host`),
KEY `program` (`program`),
KEY `datetime` (`datetime`),
KEY `priority` (`priority`),
KEY `facility` (`facility`)
) ENGINE=InnoDB AUTO_INCREMENT=81 DEFAULT CHARSET=utf8;
转载请注明:http://8463390.blog.51cto.com/8453390/1911623
分享题目:将syslogng日志写入MySQL(远程)数据库
文章起源:http://myzitong.com/article/jdgiii.html