cacti配置流量监控五---使cacti支持syslog集中日志管理
2011-04-21 17:59
597 查看
cacti中syslog插件,是通过rsyslog或syslog-ng与mysql的交互,将日志存放到mysql数据库中,cacti中的syslog插件从mysql中检索查看日志数据。因此,首先要配置一台rsyslog与mysql的日志中心服务器来接收客户机的日志;其次,配置cacti的syslog插件,通过该插件检索与查询mysql中的日志。
由于rsyslog是开放源代码,因此这是只说明rsyslog的配置。
以下操作平台为:Centos 5.5 X86
一、配置日志中心接收服务器
假设这台接收服务器的IP地址为:192.168.0.213
(1)安装所必需的包:
关于配置yum,可参见前面的博文:
/article/4288764.html
/article/4288762.html
安装rsyslog所需的包:
(2)配置rsyslog与mysql
执行下面的脚本文件,创建一个Syslog的数据库用于存放日志中的数据:
文本内容如下:
配置rsyslog.conf文件
vim /etc/rsyslog.conf(添加以下内容)
其中 :ommysql:localhost,Syslog,cactiuser,cacti;cacti_syslog 表示
加载数据库模块:ommysql
数据库名为:Syslog
数据库用户名:cactiuser
数据库用户密码:cacti
加载自定义的插入数据模板:cacti_syslog (而模板中定义的SQL语句插入的字段与cacti的syslog插件中提供的表结构一致)
文本格式内容如下:
注:接收客户端日志文件要配置的
(1)以下两行如果不加入到rsyslog.conf文件中,将无法接收客户端的日志文件。
(2)编辑/etc/sysconfig/rsyslog.conf文件,更改文件内容有:
其中的“-r”选项是接收远程客户机日志的指令。
以上配置完成后,启动rsyslog,停止syslog程序,执行以下操作:
二、配置远程客户机发送日志
配置syslog.conf发送指令
vim /etc/syslog.conf(添加以下内容:)
重启syslog日志进程:
这样,远程客户机的日志发送就已经完成。
三、配置cacti的syslog插件程序
(1)下载安装syslog插件
(2)配置syslog插件
vim config.php(更改内容如下)
将上面的数据库名、数据库用户名、数据库用户密码更改为创建数据库时的一致。
导入syslog插件的表结构数据:
(3)现在可以看看导入到mysql库中的syslog表结构是否与rsyslog.conf文件中的定义的INSERT中的字段相一致
从图表中,可以看到rsyslog.conf中定义的插入字段是要与syslog_incoming表结构要一致。
(4)现在在web页面配置syslog插件
在Console---Utilites---User Management,单击admin账号,进入这个页面,选中其中红线标示区域:
保存后,在主窗口中,可以看到:
从图中也可以看到,已经有不少日志在syslog中了,这样检索查看各台机器的日志更加方便了。如果我要查看某个关键字为“192.168.0.145”的日志,可以在Search text中输入“192.168.0.145”后:
当然,syslog插件还支持一定的规则,比如不想看到太多的不需要的日志,可以在右侧的“Removals”创建匹配的内容。
至于报警的设置方法,可以参见前面的几篇博文。比如想要给指定的手机报警,可以在右侧创建“Alerts”规则,这里我列出我想报警的一些内容:
当我定义好上面的报警设置后,没过几分钟,我就收到内容包含的日志内容的短信了:
在收到邮件的同时,也会收到一条相应的短信,是不是很方便呢。
参考文档:
本文出自 “宁静致远” 博客,请务必保留此出处http://skyou.blog.51cto.com/2915693/550736
由于rsyslog是开放源代码,因此这是只说明rsyslog的配置。
以下操作平台为:Centos 5.5 X86
一、配置日志中心接收服务器
假设这台接收服务器的IP地址为:192.168.0.213
(1)安装所必需的包:
关于配置yum,可参见前面的博文:
/article/4288764.html
/article/4288762.html
安装rsyslog所需的包:
yum -y install librelp librelp-devel rsyslog rsyslog-gnutls rsyslog-mysql |
执行下面的脚本文件,创建一个Syslog的数据库用于存放日志中的数据:
文本内容如下:
#!/bin/bash mysql <<EOF create database Syslog; GRANT ALL ON Syslog.* TO cactiuser@localhost IDENTIFIED BY 'cacti'; flush privileges; EOF |
vim /etc/rsyslog.conf(添加以下内容)
其中 :ommysql:localhost,Syslog,cactiuser,cacti;cacti_syslog 表示
加载数据库模块:ommysql
数据库名为:Syslog
数据库用户名:cactiuser
数据库用户密码:cacti
加载自定义的插入数据模板:cacti_syslog (而模板中定义的SQL语句插入的字段与cacti的syslog插件中提供的表结构一致)
文本格式内容如下:
# provides UDP syslog reception $ModLoad imudp # start a UDP syslog server at standard port 514 $UDPServerRun 514 # Provides kernel logging support (previously done by rklogd) $ModLoad imklog # Provides support for local system logging (e.g. via logger command) $ModLoad imuxsock # provides --MARK-- message capability $ModLoad immark # provides UDP syslog reception $ModLoad imudp # provides TCP syslog reception and GSS-API (if compiled to support it) $ModLoad imtcp # provides mysql $ModLoad ommysql # Use costomer timestamp format $template cacti_syslog,"INSERT INTO syslog_incoming(facility, priority, date, time, host, message) values (%syslogfacility%, %syslogpriority%, '%timereported:::date-mysql%', '%timereported:::date-mysql%', '%HOSTNAME%', '%msg%')", SQL # Insert the log's text into the Syslog database by the costomer timestamp format of the cacti_syslog template *.* :ommysql:localhost,Syslog,cactiuser,cacti;cacti_syslog # Write the log to the /var/log/file.log repeat *.* /var/log/file.log |
(1)以下两行如果不加入到rsyslog.conf文件中,将无法接收客户端的日志文件。
$ModLoad imudp $UDPServerRun 514 |
SYSLOGD_OPTIONS="-r -m 0" |
其中的“-r”选项是接收远程客户机日志的指令。
以上配置完成后,启动rsyslog,停止syslog程序,执行以下操作:
chkconfig rsyslogd on chkconfig syslogd off /etc/init.d/syslog stop /etc/init.d/rsyslogd restart |
配置syslog.conf发送指令
vim /etc/syslog.conf(添加以下内容:)
重启syslog日志进程:
/etc/init.d/syslog restart |
三、配置cacti的syslog插件程序
(1)下载安装syslog插件
cd /var/www/html/ wget http://cactiusers.org/downloads/syslog.tar.gz tar xvfz syslog-0.5.2.tar.gz -C /var/www/html/cacti/plugins/ |
cd /var/www/html/cacti/plugins/syslog |
将上面的数据库名、数据库用户名、数据库用户密码更改为创建数据库时的一致。
导入syslog插件的表结构数据:
mysql -ucactiuser -pcacti Syslog < /var/www/html/cacti/plugins/syslog/syslog.sql |
从图表中,可以看到rsyslog.conf中定义的插入字段是要与syslog_incoming表结构要一致。
(4)现在在web页面配置syslog插件
在Console---Utilites---User Management,单击admin账号,进入这个页面,选中其中红线标示区域:
保存后,在主窗口中,可以看到:
从图中也可以看到,已经有不少日志在syslog中了,这样检索查看各台机器的日志更加方便了。如果我要查看某个关键字为“192.168.0.145”的日志,可以在Search text中输入“192.168.0.145”后:
当然,syslog插件还支持一定的规则,比如不想看到太多的不需要的日志,可以在右侧的“Removals”创建匹配的内容。
至于报警的设置方法,可以参见前面的几篇博文。比如想要给指定的手机报警,可以在右侧创建“Alerts”规则,这里我列出我想报警的一些内容:
当我定义好上面的报警设置后,没过几分钟,我就收到内容包含的日志内容的短信了:
在收到邮件的同时,也会收到一条相应的短信,是不是很方便呢。
参考文档:
http://docs.cacti.net/plugin:syslog.config http://docs.cacti.net/plugin:syslog http://www.rsyslog.com/doc/rsyslog_mysql.html http://opkeep.com/system/linux/rsyslog-install.html |
相关文章推荐
- cacti配置流量监控二---使cacti支持cacti-spine轮询机制
- Linux系统管理实践(12):Syslog系统日志配置
- LAMP+logzilla2.9.9+syslog-ng实现集中日志管理(第二版)
- cacti下syslog插件安装&&syslog-ng统一管理日志
- cacti配置流量监控四---配置cacti-plugins-arch以及settings插件、thold报警插件
- centos6.4下反向代理服务器squid安装,配置,日志管理,监控及压力测试
- cacti配置流量监控
- cacti配置流量监控三---备份与恢复cacti数据
- Linux系统管理实践(12):Syslog系统日志配置
- LAMP+logzilla2.9.9+syslog-ng实现集中日志管理(第二版)
- java 日志监控收集:动态流量峰值进行采样率配置
- logzilla2.9.9+syslog-ng实现集中日志管理
- Linux系统管理实践(12):Syslog系统日志配置
- 开源监控软件的配置:cacti,nagios
- syslog系统日志、Windows事件日志监控
- tomcat配置使用log4j管理日志
- 配置linux syslog日志服务器
- cacti+apache+php+mysql+rrdtool搭建流量监控平台
- 使用EventLog Analyzer监控、管理及分析日志