实现将rsyslog将日志记录与MySQL中

准备两个节点 

  node3:  rsyslog

  node2:   数据库 

 

  准备相应的包

[root@node3 php-fpm.d]#yum install rsyslog-mysql

 

  将数据拷贝到数据库节点,让其创建表

[root@node3 php-fpm.d]#scp /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql node2:/data/

 

  在mysql server上授权rsyslog能连接至当前服务器

[root@node2 data]#mysql < mysql-createDB.sql   #:导入数据库和表

MariaDB [powerdns]> GRANT ALL ON Syslog.* TO 'syslog'@'192.168.37.%' IDENTIFIED BY 'centos'; Query OK, 0 rows affected (0.00 sec) MariaDB [powerdns]> flush privileges; Query OK, 0 rows affected (0.00 sec)

 

  配置rsyslog文件

[root@node3 php-fpm.d]#vim /etc/rsyslog.conf 
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514         #打开远程端口

$ModLoad ommysql     #:启用模块
*.info;mail.none;authpriv.none;cron.none                :ommysql:192.168.37.22,Syslog,syslog,centos     #:配置连接账号

 

  重启服务

[root@node3 php-fpm.d]#systemctl restart rsyslog

 

 

通过loganalyzer展示数据库中的日志

  准备好LAMP组合

  解压LogAnalyzer

 

[root@node3 source]#tar xf loganalyzer-4.1.7.tar.gz

  

  添加虚拟主机

[root@node3 src]#vim /app/httpd24/conf/extra/httpd-vhosts.conf 
<virtualhost *:80>
ServerName logs.magedu.com                                                                                                                          
DocumentRoot "/data/logs/"

<Directory "/data/logs/">
require all granted
</Directory>
ProxyPassMatch "^/(.*\.php)$" "fcgi://127.0.0.1:9000/data/logs/"
</Virtualhost>

 

  创建文件,并将解压好的文件移到到文档目录

[root@node3 src]#mkdir /data/logs
[root@node3 src]#mv /data/source/loganalyzer-4.1.7/src/* /data/logs/

 

  进到文档目录创建文件并修改权限

[root@node3 src]#cd /data/logs/

[root@node3 logs]#touch config.php

[root@node3 logs]#chmod 666 config.php

 

  重启服务

[root@node3 logs]#apachectl restart

 

  测试

 

 

 

posted @ 2019-07-26 17:09  Linus小跟班  阅读(557)  评论(0编辑  收藏  举报