syslog-ng 通过pipe写数据到mysql
来源:互联网 发布:中国高铁网络 编辑:程序博客网 时间:2024/05/24 22:42
一条日志的处理流程大概是这样的,如下
首先是 "日志的来源 source s_name { ... };"
然后是 "过滤规则 filter f_name { ... };"
再然后是 "消息链 log { source(s_name); filter(f_name); destination(d_name) };"
最后是 "目标动作 destination d_name { ... };"
最后是 "目标动作 destination d_name { ... };"
这样以来一条日志就根据你的意思来处理了,需要注意的是一条日志消息过了之后,会匹配定义的所有配置,并不是匹配到以后就不再往下匹配了.
@version:3.2options { flush_lines (0); time_reopen (10); log_fifo_size (2048); long_hostnames (off); use_dns (no); use_fqdn (no); create_dirs (yes); keep_hostname (yes);};source s_sys { file ("/proc/kmsg" program_override("kernel: ")); unix-stream ("/dev/log"); internal();};source net { udp(ip(0.0.0.0),port(514));};destination net_log { file ("/mnt/logdata/net_log/net_log/${YEAR}.${MONTH}.${DAY}/${HOST}.log" );};destination d_mesg { file("/mnt/logdata/net_log/log/messages"); };filter f_net_hill { match("item failed" value(MESSAGE)) or match("Backup to Master" value(MESSAGE)) or match("Master to Backup" value(MESSAGE)); };filter f_iis_msg { match("OWA~false" value(MESSAGE)); };filter f_sys_mail { message("正在离开群集"); };destination mysql_net_hill {program("mysql -h10.2.178.20 -usyslog -pSysl0g2017@,./ itcc_zabbix < /opt/pipe/myhill.pipe");pipe("/opt/pipe/myhill.pipe"template("INSERT INTO w_net_hill_logs (host, datetime, msg) VALUES ( '$HOST', '$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC', '$MSG' );\n") template-escape(yes) ); };log { source(mail_system);filter(f_iis_msg); destination(mysql_iis); };创建pipe目录mkdir /opt/pipe创建pipe文件mkfifo /opt/pipe/myiis.pipe
pipe 文件参考以上
sql 方式写入,参考:
# MySQL define destination
destination d_mysql {
sql(
type
(mysql)
username(
"syslog"
)
password(
"Pass123!"
)
database(
"syslog"
)
host(
"172.16.1.20"
)
table(
"logs"
)
columns(
"host"
,
"facility"
,
"priority"
,
"level"
,
"tag"
,
"datetime"
,
"program"
,
"msg"
)
values(
"$HOST"
,
"$FACILITY"
,
"$PRIORITY"
,
"$LEVEL"
,
"$TAG"
,
"$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC"
,
"$PROGRAM"
,
"$MSG"
)
indexes(
"datetime"
,
"host"
)
);
};
阅读全文
1 0
- syslog-ng 通过pipe写数据到mysql
- linux syslog 写到mysql
- syslog-ng安装及通过python写入syslog
- 【个人笔记】syslog-ng接收远端syslog数据
- syslog-ng
- syslog-ng
- syslog-ng
- syslog及syslog-ng详解
- syslog及syslog-ng详解
- syslog和syslog-ng详解
- 基于flume-ng抓取mysql数据到kafka
- 基于flume-ng抓取mysql数据到kafka
- 通过JAVA写数据到XML里面
- syslog-ng 安装配置
- syslog-ng 系统配置
- syslog-ng 与 logrotate
- syslog-ng filters(过滤器)
- syslog-ng.conf sample
- 如何对网站关键词进行合理布局?
- 【Java面试】---Java基础知识
- 使用Fiddler做抓包分析
- 18、DuplicateFileException: Duplicate files copied in APK META-INF/INDEX.LIST
- 前端碰到的问题
- syslog-ng 通过pipe写数据到mysql
- Java SE、Java EE、Java ME三者的区别
- C++ 类型转换函数 与 explicit
- 图片加载失败或默认图片
- 微信小程序从注册到上线系列
- SpreadJS 在 Angular2 中支持绑定哪些属性?
- STM8S---选项字节(Option Byte)写操作之IO复用
- HttpClient发送Post请求(一)
- PX PT 磅 EM 以及PS中字间距VA单位的解释