rsyslog:日志收集和存储系统
1.事件在电脑中的日志记录格式为:
日期时间 主机 进程[pid]:事件内容
2.rsyslog的特性:
多线程;
UDP,TCP,SSL/TLS,RELP;
存储日志信息于MySQL、PGSQL、Oracle等RDBMS;
强大的过滤器,实现过滤日志信息中的任何部分的内容;
自定义的输出格式;
3.搭建基于mysql的数据库分析系统:
(1)搭建amp环境:
yum -y install httpd mariadb mariadb-server php php-mysql php-gd
修改mysql的配置文件:vim /etc/my.cnf
[mysqld]添加:
skip_name_resolve=ON
innodb_file_per_table=ON
启动服务:
systemctl start httpd.service
systemctl start mairadb.service
(2)利用rz功能上传本地的loganalyzer-3.6.5.tar.gz
yum -y install lrzsz
rz loganalyzer-3.6.5.tar.gz
(3)安装loganalyzer
tar xf loganalyzer-3.6.5.tar.gz
cd lologanalyzer-3.6.5
cp -a src /var/www/html/loganalyzer-3.6.5
cd /var/www/html
ln -sv loganyzer-3.6.5 log
cd log
touch config.php
chmod 666 config.php
(4)安装rsyslog连接至mysql的驱动模块
yum -y install rsyslog-mysql
(5)在mysql server准备rsyslog专用的登录账号:
#mysql
mysql>GRANT ALL ON Syslog.* TO 'rsyslog'@'127.0.0.1' IDENTIFIED BY 'rsyslogpass';
mysql>GRANT ALL ON Syslog.* TO 'rsyslog'@'local' IDENTIFIED BY 'rsyslogpass';
mysql>FLUSH PRIVILEGES;(mysql重读配置表)
(6)生成所需要的数据库和表:
mysql -ursyslog -h127.0.0.1 -prsyslogpass < /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
(将程序驱动包里面的/usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql导入到mysql生成数据表)
(7)配置rsyslog的主配置表:
vim /etc/rsyslog.conf
#### MODULES ####
$ModLoad ommysql
#### RULES ####
facility.priority :ommysql:127.0.0.1,Syslog,rsyslog,rsyslogpass
(8)重启服务:
systemctl restart rsyslog.service
systemctl restart httpd.service
(9)打开浏览器进行配置:www.sjsir.cn/log
a.由于/var/www/html/log/config.php中没有文件,只是没有内容,所以一开始会报错
b.点击here按照说明创建config.php的数据(为了方便,一切使用默认,实际生产中应该按照真实使用的需要进行调整)
我们就搭建完成amp+rsyslog+loganalyzer服务。
原创文章,作者:sjsir,如若转载,请注明出处:http://www.178linux.com/53872