MySQL存儲日誌並使用Loganalyzer做爲前端展現

MySQL存儲日誌並使用Loganalyzer做爲前端展現



爲何要使用日誌

在生產環境中咱們可能須要一個較爲完整的日誌系統來查看運行中主機服務的狀態和所做出的操做,咱們能夠在較大型的網絡架構中使用ELK來實現對日誌的收集、檢索、前端顯示,可是中小型架構中使用rsyslog足以對全部服務器的日誌進行收集和檢索來達到實時分析數據流量的目的。php

本文目標

使用rsyslog將兩臺主機的日誌信息存儲到MySQL數據庫中,而且編譯安裝LoganalyzerMySQL中的日誌信息使用httpd+php在前端進行展現。css

實驗拓撲圖

blob.png

實驗環境

主機名 IP地址 負責
syslog.anyisalin.com 192.168.2.2 收集日誌,MySQL
www.anyisalin.com 192.168.2.3 web
server1.anyisalin.com 192.168.2.4
正常使用

本文全部主機皆關閉SElinuxIPtables
html


syslog主機上rsyslog設置

如下操做在 syslog.anyisalin.com 中執行前端

首先咱們要安裝mysqlrsyslog鏈接mysql的驅動mysql

[root@syslog ~]# yum install mysql-server rsyslog-mysql -y 
Loaded plugins: fastestmirror
Setting up Install Process

   #省略
Installed:
 rsyslog-mysql.x86_64 0:5.8.10-10.el6_6  
 mysql-server.x86_64 0:5.1.73-5.el6_7.1                                                                                                                                                  

Complete!

而後咱們要修改rsyslog的配置文件,將下面兩項啓用linux

$ModLoad imudp
$UDPServerRun 514

再添加mysql的配置web

$ModLoad ommysql

修改日誌存放位置爲MySQL 
vim編輯器進入末行模式進行替換sql

%s@./var\/log.*@:ommysql:192.168.2.2,Syslog,syslog,passwd@gi

重啓rsyslog服務數據庫

[root@syslog ~]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]

建立mysql用戶並賦予權限vim

mysql> GRANT ALL ON Syslog.* TO 'syslog'@'%' IDENTIFIED BY 'passwd';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

導入表

[root@syslog ~]# mysql -usyslog -ppasswd < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql

Server1主機上rsyslog設置

如下操做在 server1.anyisalin.com 中執行

首先咱們要修改rsyslog的配置文件 
vim編輯器進入末行模式進行替換

%s@./var\/log.*@\@192.168.2.2@gi

重啓rsyslog服務

[root@server1 ~]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]

測試是否成功

若水GIF截圖_2016年3月30日21點28分27秒.gif

syslog.anyisalin.com中查詢數據庫看是否記錄

mysql> select * from SystemEvents\G;
*************************** 1. row ***************************
               ID: 1
       CustomerID: NULL
       ReceivedAt: 2016-03-23 17:28:21
DeviceReportedTime: 2016-03-23 17:28:21
         Facility: 0
         Priority: 6
         FromHost: syslog
          Message: imklog 5.8.10, log source = /proc/kmsg started.
       NTSeverity: NULL
       Importance: NULL
      EventSource: NULL
        EventUser: NULL
    EventCategory: NULL
          EventID: NULL
  EventBinaryData: NULL
  省略。。。。

Web服務器配置

如下操做在 www.anyisalin.com 中執行

因爲loganalzyer提供的動態網頁,因此咱們要安裝httpdphp

[root@www ~]# yum install php-gd httpd php php-mysql -y | tail -n 10
 apr-util.x86_64 0:1.3.9-3.el6_0.1                                            
 apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1                                        
 httpd-tools.x86_64 0:2.2.15-47.el6.centos.4                                  
 libedit.x86_64 0:2.11-4.20080712cvs.1.el6                                    
 mailcap.noarch 0:2.1.31-2.el6                                                
 php-cli.x86_64 0:5.3.3-46.el6_7.1                                            
 php-common.x86_64 0:5.3.3-46.el6_7.1                                          
 php-pdo.x86_64 0:5.3.3-46.el6_7.1                                            

Complete!

解壓loganalzyer程序包到/var/www/html中並配置

[root@www ~]# tar xf loganalyzer-3.6.4.tar.gz  -C /var/www/html/
[root@www ~]# cd /var/www/html/
[root@www html]# ls
loganalyzer-3.6.4
[root@www html]# cp -a loganalyzer-3.6.4/src/ log
cp -a loganalyzer-3.6.4/contrib/*.sh log/

[root@www html]# cd log
[root@www log]# chmod +x *.sh
[root@www log]# ./configure.sh
[root@www log]# ./secure.sh
[root@www log]# chmod 666 config.php

啓動httpd服務

[root@www log]# service httpd start
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain n
ame, using www.anyisalin.com for ServerName                                                           [  OK  ]

訪問web頁面安裝loganalyzer

blob.png

一直下一步到下面的頁面,並按下面這樣輸入 

blob.png

一直下一步到最後點擊Finish 

blob.png

安裝完成,咱們能夠經過前端頁面查看多臺主機日誌信息了 

blob.png

blob.png


總結

怎麼樣?是否是很直觀的就能查看排版好且美觀的日誌信息,不再用面對繁雜的命令行接口了! 做者: AnyISalIn 感謝: MageEdu

相關文章
相關標籤/搜索