一、LogAnalyzer介绍
  LogAnalyzer工具提供了一个易于使用,功能强大的前端,用于搜索,查看和分析网络活动数据,包括系统日志,事件日志和其他许多日志源。由于它只是将数据展示到我们用户的面前,所以数据本身需要由另一个程序收集,比如syslogd,rsyslog(现在是发行版的默认的syslogd),WinSyslog或MonitorWare代理。LogAnalyzer同样适用于Linux和Windows。它主要是用PHP编写的自由软件,基于GPL的开源应用程序。数据可以从数据库,也可以从纯文本文件而获得。

本案例规划图:

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器

二、在rsyslog服务器上部署 LAMP环境。

1.安装httpd

[root@rsyslog ~]# yum install httpd -y
[root@rsyslog ~]# systemctl start httpd
[root@rsyslog ~]# systemctl enable httpd

2.安装mysql

[root@rsyslog ~]# yum install mysql mysql-server -y
[root@rsyslog ~]# systemctl start mariadb
[root@rsyslog ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@rsyslog ~]# mysqladmin -u root password 'rsyslog.ppp'

测试下登陆,无问题后,安装php

3.安装php

[root@rsyslog ~]# yum install php php-mysql php-gd -y
[root@rsyslog ~]# cat /var/www/html/test.php 
<?php
phpinfo();
?>

打开客户端浏览器,进行访问测试http://192.168.30.67/test.php

4.安装rsyslog,并加入开机启动

[root@rsyslog ~]# wget -O /etc/yum.repos.d/rsyslog.repo http://rpms.adiscon.com/v8-stable/rsyslog.repoc[root@rsyslog ~]# yum install rsyslog-* --skip-broken -y
[root@rsyslog ~]# systemctl enable rsyslog

5.rsyslog建库脚本,路径在/usr/share/doc/rsyslog-mysql-8.18.0/createDB.sql,现在我们登陆数据库创建个rsyslogdb库,并导入建库脚本

[root@rsyslog ~]# more /usr/share/doc/rsyslog-mysql-8.18.0/createDB.sql 
CREATE DATABASE rsyslogdb;
USE rsyslogdb;

[root@rsyslog ~]# mysql -uroot -p < /usr/share/doc/rsyslog-mysql-8.18.0/createDB.sql 
Enter password:

登陆测试一下库建好了没

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

[root@rsyslog ~]# mysql -uroot -p rsyslogdb
Enter password: 
....
MariaDB [rsyslogdb]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| rsyslogdb          |
+--------------------+4 rows in set (0.00 sec)

创建用户并授权
MariaDB [rsyslogdb]> GRANT ALL ON rsyslogdb.* TO rsyslogdbadmin@localhost IDENTIFIED BY 'rsyslog.ppp';
Query OK, 0 rows affected (0.00 sec)

MariaDB [rsyslogdb]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [rsyslogdb]> exit

最后测试下该用户的登陆
[root@rsyslog ~]# mysql -ursyslogdbadmin -p rsyslogdb

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

6.修改rsyslog.conf文件,修改后如下:

Linux 之rsyslog+LogAnalyzer 日志收集系统_Windows_04 View Code

重启rsyslog 服务,现在登陆mysql 进行验证。

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

MariaDB [rsyslogdb]> use rsyslogdb
Database changed
MariaDB [rsyslogdb]> select count(*) from SystemEvents;
+----------+
| count(*) |
+----------+
|       44 |
+----------+1 row in set (0.00 sec)

MariaDB [rsyslogdb]> select * from SystemEvents where ID=1\G;
*************************** 1. row ***************************
                ID: 1
        CustomerID: NULL
        ReceivedAt: 2016-05-10 15:11:19DeviceReportedTime: 2016-05-10 15:11:19
          Facility: 5
          Priority: 6
          FromHost: rsyslog
           Message:  [origin software="rsyslogd" swVersion="8.18.0" x-pid="3902" x-info="http://www.rsyslog.com"] start
        NTSeverity: NULL
        Importance: NULL
       EventSource: NULL
         EventUser: NULL
     EventCategory: NULL
           EventID: NULL
   EventBinaryData: NULL
      MaxAvailable: NULL
         CurrUsage: NULL
          MinUsage: NULL
          MaxUsage: NULL
        InfoUnitID: 1
         SysLogTag: rsyslogd:
      EventLogType: NULL
   GenericFileName: NULL
          SystemID: NULL1 row in set (0.00 sec)

ERROR: No query specified

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

三、部署LogAnalyzer

1.下载

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

[root@rsyslog ~]# wget -c http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz解压
[root@rsyslog ~]# tar zxvf loganalyzer-3.6.6.tar.gz 
复制文件到
[root@rsyslog ~]# cp -r loganalyzer-3.6.6/src/ /var/www/html/loganalyzer
[root@rsyslog ~]# cp -r loganalyzer-3.6.6/contrib/* /var/www/html/loganalyzer/
进入到loganalyzer 程序中,将以下脚本赋予执行权限
[root@rsyslog ~]# cd /var/www/html/loganalyzer/
[root@rsyslog loganalyzer]# chmod +x configure.sh secure.sh 
运行configure.sh,将创建一个空白的config.php配置文件
[root@rsyslog loganalyzer]# ./configure.sh

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_02

 2.打开浏览器访问 http://192.168.30.67/loganalyzer 安装界面,如下,会有一个error,选择hereLinux 之rsyslog+LogAnalyzer 日志收集系统_服务器_09

选择here进行安装

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_10

选择nextLinux 之rsyslog+LogAnalyzer 日志收集系统_Windows_11

验证config文件,就是我们上一不运行configure.sh 生成的文件

Linux 之rsyslog+LogAnalyzer 日志收集系统_Windows_12

基本配置里,填写数据库连接信息

Linux 之rsyslog+LogAnalyzer 日志收集系统_应用程序_13

创建表,直接选择next

Linux 之rsyslog+LogAnalyzer 日志收集系统_应用程序_14

检查没有失败的状态。继续下一步

Linux 之rsyslog+LogAnalyzer 日志收集系统_Windows_15

创建一个rsyslog的web管理用户,名字叫rsyslog

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_16

检查详细信息

Linux 之rsyslog+LogAnalyzer 日志收集系统_应用程序_17

此处,source type 需要修改成mysql native 源,随后填写mysql相关信息,注意(Database Tablename 处我写填写错误,正确应该是SystemEvents)

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_18

完成后,下一步就是登陆loganalyzer了。

Linux 之rsyslog+LogAnalyzer 日志收集系统_服务器_19

输入rsyslog,及设定的密码。

Linux 之rsyslog+LogAnalyzer 日志收集系统_应用程序_20

在这里,可以看到最后rsyslog server 收集到的日志,已经展示在首页了。

Linux 之rsyslog+LogAnalyzer 日志收集系统_Windows_21