目的:通过loganalyzer展示数据库中的日志
准备环境:
??CentOS7_1:用来生成日志
??CentOS7_2:用来存放日志的数据库
??CentOS7_3:LAP服务器
?
第一步:在CentOS7_2安装mysql数据库
??此处使用二进制安装mariadb,可参考:
???? https://blog.51cto.com/14230410/2385780
??安装好mysql后,还需要安装rsyslog-mysql
yum install rsyslog-mysql -y
??安装后可以看到,这个包里面就包含了一个模块和一个脚本。脚本是用来创建需要的用户和表的。
??首先创建用户,将这个脚本发送到CengOS7_2上:
scp /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql 192.168.72.112:/data/
然后在CentOS7_1上写上路径远程执行该脚本:
ssh 192.168.72.112 ‘mysql < /data/mysql-createDB.sql‘
这个时候在CentOS7_2上就可以看到创建好的表了。但是我们还需要一个用户来管理该数据库。
创建loguser用户来管理这个库:
grant all on Syslog.* to [email protected]‘192.168.72.%‘ identified by ‘centos‘;
注:此处创建的用户,让其对Syslog库拥有所有权限,且只能在192.168.72.1这个网段登陆。
创建完成后,将来就可以使用loguser来远程连接管理该数据库了。
第二步:在CentOS7_1上来参考原有的格式修改配置模块,使其能够引用模块
修改模块的配置文件:
vim /etc/rsyslog.conf
$ModLoad ommysql
直接在文件最后添加这行即可启动该模块。这里不需要写路径名,也不需要加后缀,只写个文件名即可。
注:查看文件名:
rpm -ql rsyslog-mysql
启用模块后,还需要定义规则:
vim /etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none :ommysql:192.168.72.111,Syslog,loguser,centos
注:默认的配置文件大概67%的位置添加上面这行,表示将日志发往192.168.72.111的数据库中。默认是放在本机的/var/log/messages中,这里选择直接添加,意味着日志会在本机保存一份并向远程数据库中发送一份。
第三步:安装使用loganalyzer
当然,只放在数据库中看起来太乱了,我们希望画出饼状图、柱状图之类的。这时候就需要利用loganalyzer来展示数据库中的日志。这时就需要使用CentOS7_3搭建loganalyzer。
首先在CentOS7_3上安装loganalyzer需要的工具:
yum install httpd php php-mysql php-gd -y
注:此处安装了apache、php,php想管理mysql所需的模块php-mysql,还有使用图形的模块php-gd。
安装好之后将服务启动:
systemctl start httpd
可以看到80端口已经启动了。这时php就已经启动了,但是还没有连接数据库,需要一个连接数据库的代码文件。
代码示例:
<?php
$mysqli=new mysqli("mysqlserver",“username",“password");
if(mysqli_connect_errno()){
echo "Failure";
$mysqli=null;
exit;
}
echo “OK";
$mysqli->close();
?>
注:此处只是给出一个代码块的示例,根据自己需要修改数据库名字、用户名、用户密码等等。
现在就可以安装loganalyzer了。yum默认没有这个包,所以需要去官网下载源码包:
http://loganalyzer.adiscon.com/
下载好之后,使用tar将其解压缩至/var/www/html下:
tar xvf loganalyzer-4.1.7.tar.gz -C /var/www/html/
解压后的目录名太长了,不方便管理,可以根据个人需要考虑将其换个名字。这里将其改名为log:
mv loganalyzer-4.1.7/ log/
但是这个时候就会发现,这个目录中什么都没有,不能够直接使用。仔细观察就会发现,里面有个文件夹src,真正的配置文件都放在了这里面。所以,我们需要将其拿出来并改名(因为已经有个log了,所以此处该命为logs):
mv log/src logs
原本的log文件中还有几个脚本,可以看到里面的说明。里面写了,还需要创建一个config.php文件,并且给它666权限,这个文件将来就是连接数据库的。创建出来之后去安装系统,安装好之后需要将其改为644,因为666权限太大了,容易被******。
接下来在windows上打开浏览器,输入:本机ip/logs。后面就是图形化安装界面了。根据提示填好信息下一步下一步就可以了。。。
到此,该实验就结束了。可以通过网页来查看日志了。数据库发生操作,刷新一下网页就能看到最新记录的日志了。当然,这个工具不仅提供了文字页面,在上面那行第三个还有个统计(Statistics),点进去可以看到,各种表格都是现成的,都不需要自己做了。对于小公司而言基本够用了。大公司或许会感觉简陋点。里面还有搜索、官方的说明帮助手册等等。
注:如果说在上图的信息填写错误,或者说管理数据库的用户的密码更改之后,使用原密码会导致连接不上去。其实在安装好之后,config.php文件中会生成很多数据,其中就有用户口令等信息,如果填写错误或者发生变化,修改config.php文件即可。
原文地址:https://blog.51cto.com/14230410/2396508