Cacti安装syslog插件

cacti中syslog插件,是通过rsyslog或syslog-ng与mysql的交互,将日志存放到mysql数据库中,cacti中的syslog插件从mysql中检索查看日志数据。因此,首先要配置一台rsyslog与mysql的日志中心服务器来接收客户机的日志;其次,配置cacti的syslog插件,通过该插件检索与查询mysql中的日志。可以收集来自linux、windows等服务器和交换机路由器的日志。做到集中和分类查看。

一、设置接收日志
要想接收日志信息,并在cacti的syslog插件中显示接收到的日志,首先是接收日志,有二种办法:

1.使用syslog-ng,在CentOS5.5及以下系统上,系统默认有syslog,可以发送日志,但不能接受日志,因此要借助于syslog-ng,来接收发送过来的日志,并规范成一个模版,再通过自己写的脚本,插入到mysql数据库里

2.使用rsyslog,rsyslog是在centos6以上系统自带的,rsyslog不仅能接收日志,还可以发送日志,因此要是在centos6以上系统就不需要额外安装syslog-ng接收日志了,用自带的rsylog就可以接收日志,再用rsyslog-mysql就可以把接收到的日志写入mysql数据库

二、安装syslog插件  cd /usr/local/nginx/html/cacti/plugins/
wget :syslog-v1.22-2.tgz -O syslog.tgz
tar xvf syslog.tgz
chown -R www:www syslog
cd syslog
/usr/local/mysql/bin/mysql -e "create database syslog"
/usr/local/mysql/bin/mysql syslog < syslog.sql
/usr/local/mysql/bin/mysql -e "grant all privileges on syslog.* to cacti
@'localhosst' Identified by 'cacti'"
 

修改配置文件config.php

global $config$database_type$database_default$database_hostname;  global $database_username$database_password$database_port;   /* revert if you dont use the Cacti database */ $use_cacti_db = false;   if (!$use_cacti_db) {          $syslogdb_type     = 'mysql';          $syslogdb_default  = 'syslog';          $syslogdb_hostname = 'localhost';          $syslogdb_username = 'cacti';          $syslogdb_password = 'cacti';          $syslogdb_port     = 3306;  }else{          $syslogdb_type     = $database_type;          $syslogdb_default  = $database_default;          $syslogdb_hostname = $database_hostname;          $syslogdb_username = $database_username;          $syslogdb_password = $database_password;          $syslogdb_port     = $database_port;  

可以看到以上设置$use_cacti_db = false;这个是设置syslog是否要使用cacti的数据库,我在这里不使用cacti的数据,因为syslog往往比较多,日志比较多,为了便于备份和使用,还是选择用一个独立的数据库。因此要在下面设置连接数据库的用户名,密码,数据库名等

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/f34298d06bec1aedab40778944ce57d9.html