Rsyslog介紹以及結合loganalyzer進行日誌分析

1.syslog介紹:

  日誌服務在CentOS 5上默認爲syslog,而6上全部升級爲rsyslog。Rsyslog是syslog的增強版,提供了很多高級的特性。syslog由兩個功能程序構成,klogd和syslogd,klogd記錄Kernel產生的日誌信息,而syslogd是普通的日誌信息。除了一些高級特性,Rsyslog和syslog的整體框架基本一致。


2.Rsyslog的特性:

  支持選擇UDP|TCP協議傳送日誌文件;

  支持SSL加密;

  多線程模型工作;

  可以將日誌放入關係型數據庫中;

  可以作爲日誌服務器接收其他服務器發來的日誌;


3.日誌的級別

  日誌的級別就是日誌的記錄等級,syslog將日誌級別分爲如下幾個(低等級默認會包含高等級的日誌信息):

debug調試級別,所有信息都會記錄
info比debug級別稍高
notice通知信息,比info級別高
warning發出警告
err,error出現錯誤
crit比err更嚴重
alert系統出現嚴重問題
emerg,panic系統將要掛掉


4.syslog設施

  syslog將不同的日誌分爲幾個類,這些種類就稱作設施:

auth認證信息
authpriv授權信息
cron計劃任務產生的信息
daemon守護進程產生的信息
kern內核產生的信息
lpr打印的信息
mail郵件相關的信息
mark防火牆標記的信息
news新聞組信息
security安全相關的信息
syslog系統日誌
user用戶相關的信息
uucpunix間複製相關
local{0-7}
用戶自定義的日誌類,分爲7個級別


5.rsyslog的配置:

  rsyslog的配置文件是/etc/rsyslog.conf及/etc/rsyslogd/*.conf。

  /etc/rsyslog.conf文件分爲四個"區域":

MODULESsyslog的模塊
GLOBAL全局定義,記錄的格式等等
RULES記錄日誌相關
begin forwarding rule一些轉發的記錄信息


  我們主要關心RULES區域,要想使rsyslog記錄特定類、級別的日誌,就需要在RULES中定義,格式爲:

facility(設施).priority(日誌級別)    Target(日誌輸出的位置)

注:

  日誌級別、設施可以使用通配符:

    *:所有級別

    ,:列表,例如:a,b,c是a、b、c三個級別

    !:取反

  記錄的位置常用的大概有四種:

    文件,如/var/log/message

    用戶,發送給指定的用戶,*爲所有用戶

    日誌服務器:@172.16.10.1

    管道:|COMMAND 交給特定的命令處理

例如:

mail.info     /var/log/maillog    記錄mail類型中info及以上級別的日誌信息
mail.=info    /var/log/maillog    只記錄maill類型中info級別的日誌信息
mail.!info    /var/log/maillog    記錄mail類型中info以下級別的日誌信息
mail.!=info   /var/log/maillog    記錄mail類型中除了info級別的日誌信息
*.info        /var/log/maillog    記錄所有info及以上級別的日誌信息
mail,news.info    -/var/log/maillog    記錄mail類型、news類型中的info及以上級別的日誌信息,並且以異步方式寫入文件


二、配置rsyslog和loganalyzer結合工作:

1.loganalyzer介紹

  loganalyzer是一款Web界面日誌分析工具,可以分析mysql中的日誌信息,由php編寫,依賴於LAMP平臺。要想將日誌信息寫入到mysql中,需要安裝rsyslog-mysql工具,並啓用rsyslog的模塊。


2.安裝LAMP及相關文件:

[root@localhost ~]# yum install -y httpd mysql mysql-server php php-mysql rsyslog-mysql

3.導入rsyslog-mysql的sql文件(創建庫、表)並創建一個用戶:

[root@localhost ~]# service mysqld start
[root@localhost ~]# mysql -uroot </usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
[root@localhost loganalyzer]# mysql
 mysql> GRANT ALL ON Syslog.* TO 'loganauser'@'localhost' IDENTIFIED BY 'redhat';
 mysql> GRANT ALL ON Syslog.* TO 'loganauser'@'127.0.0.1' IDENTIFIED BY 'redhat';


4.配置rsyslog加載ommysql模塊(寫入mysql數據庫的模塊):

[root@localhost ~]# vim /etc/rsyslog.conf
 在MODULES區域添加:
    $ModLoad ommysql
 並啓用以下兩項:
       $ModLoad imudp
        $UDPServerRun 514
[root@localhost loganalyzer]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]
[root@localhost loganalyzer]#


5.下載loganalyzer並解壓到/var/www/loganalyzer目錄進行配置:

[root@localhost ~]# tar -xf loganalyzer-v3.6.1.tar.gz
[root@localhost ~]# cd loganalyzer-3.6.1/
[root@localhost loganalyzer-3.6.1]# mv src/ /var/www/loganalyzer
[root@localhost loganalyzer-3.6.1]# mv contrib/* /var/www/loganalyzer/
[root@localhost loganalyzer-3.6.1]# cd /var/www/loganalyzer/
[root@localhost loganalyzer]# chmod +x configure.sh secure.sh
[root@localhost loganalyzer]# ./configure.sh 
[root@localhost loganalyzer]# ./secure.sh 
[root@localhost loganalyzer]# rm -rf configure.sh secure.sh 
[root@localhost loganalyzer]# chown -R apache.apache *


6.配置httpd默認首頁爲index.php並啓動:

[root@localhost loganalyzer]# vim /etc/httpd/conf/httpd.conf
   DirectoryIndex index.php
[root@localhost loganalyzer]# service httpd start
Starting httpd:                                            [  OK  ]
[root@localhost loganalyzer]#


7.打開http://hostname/loganalyzer/install.php安裝之:

wKiom1aJET7A6nuCAACrG9lX9h0641.png

wKioL1aJEWLhtHfSAAC9yOq9FVY449.png

wKioL1aJEWLzUmgwAAD-dwM5Kuk764.png

wKiom1aJEUDzbP8uAAEL1jfS-Po603.png

wKiom1aJEUGCZjwLAADirb1y9kc363.jpg

wKioL1aJEWXiGvp_AAFlZfTsCQ4328.jpg

8.配置syslog將日誌寫入到mysql數據庫:

[root@localhost loganalyzer]# vim /etc/rsyslog.conf 
  *.info       :ommysql:127.0.0.1,Syslog,loganauser,redhat
[root@localhost loganalyzer]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]
[root@localhost loganalyzer]#


9.刷新網頁查看日誌已經有了兩條記錄:

wKiom1aJEnGgdHkLAAGE8KgJd3U792.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章