Linux自學筆記——日誌服務之rsyslog

日誌:歷史事件日誌
歷史事件:
 時間,事件
 時間級別(日誌級別):事件的關鍵性程度;
事件:系統引導啓動、應用程序啓動、應用程序尤爲是服務類應用程序運行過程當中的一些事件:
系統日誌服務:
 syslog:
 syslogd:system
  klogd:kernel
事件格式較爲簡單時,可統一由syslog進行記錄:
事件產生的日期時間 主機 進程[pid]:事件內容
支持C/S架構:可經過UDP或TCP協議提供日誌記錄服務;
rsyslog:
 rsyslogd:
 特性:
  多線程;
  UDP,TCP,SSL,TLS,RELP;
  存儲日誌信息於mysql、pgsql、oracle等數據管理系統;
  強大的過濾器,實現過濾日誌信息中任何部分的內容;
  自定義輸出格式;
Elk stack:elasticsearch,logstash,kibana
rsyslog日誌收集器中的術語:
 facility:設施,從功能或程序上對日誌收集進行分類:
 auth,authpriv,cron,daemon,kern,lpr,mail,mark,news,security,user,uucp,local0-local7,syslog
 priority:優先級,日誌級別
debug,info,notice,warn(warning),err(error),crit(critical),alert,emerg(panic)
指定級別:
:全部級別
 None:沒有級別;
 priority:此級別以高於此級別的全部級別;
 =priority:僅此級別;
……
程序環境:
 主程序:rsyslogd
 主配置文件:/etc/rsyslog.conf, /etc/rsyslog.d/
.conf
 服務腳本(centos6):/etc/rc.d/init.d/rsyslog
 Unit File(centos7):/usr/lib/system/system/rsyslog.service
配置文件格式rsyslog.conf
主要由三部分組成:
 MODULES
 GLOBAL DRICTIVES
 RULES
  RULES:
   facilty.priority targetbr/>   target:
文件:記錄日誌事件於指定的文件中;一般應該位於/var/log目錄下;文件路徑以前的「-」表示異步寫入;
用戶:將日誌事件通知給指定的用戶;是經過將信息發送給登陸到系統上的用戶的終端進行的;
日誌服務器:@host,把日誌送往指定的服務器主機;
Host:即日誌服務器地址,監聽在tcp或udp協議的514端口以提供服務;
管道:| COMMAND
Linux自學筆記——日誌服務之rsyslog
其餘日誌文件:
 /var/log/wtmp:當前系統成功登陸系統的日誌;須要使用last命令查看
 /var/log/btmp:當前系統嘗試登陸系統失敗相關的日誌;須要使用lastb命令查看
 Lastlog:顯示當前系統上的全部用戶最近一次登陸系統的時間;
 /var/log/dmesg:系統引導過程當中的日誌信息;也可使用dmesg命令進行查看;
Rsyslog服務器:
 編輯配置文件/etc/rsyslog.conf,啓用一下選項便可啓用rsyslog服務器;
 Provides UDP syslog reception
 $ModLoad imudp
 $UDPServerRun 514php

  Provides TCP syslog reception
 $ModLoad imtcp
 $InputTCPServerRun 514
Linux自學筆記——日誌服務之rsyslog html

示例:將日誌記錄在mysql中,如下爲大體的步驟:
1.於mysql服務器:準備好mysql服務器,建立用戶,受權對syslog數據庫擁有所有的訪問權限;
2.於rsyslog主機:安裝rsyslog-mysql程序包;
3.於rsyslog主機:經過導入createDB.sql腳本建立依賴到的數據庫及表;
mysql -uUSER -hHOST -pPASSWORD < /usr/share/doc/rsyslog-mysql-VERSION/createDB.sql
4.配置rsyslog使用ommysql模塊
MODULES ####
$ModLoad ommysqlmysql

RULES ####
    Facility.priority   :ommysql:DBHOST,DB,DBUSER,DBUSERPASSWORD
    注意:重啓rsyslog服務;
5.Web展現接口:loganalyzer
    1)  配置lamp
        Httpd,php,php-mysql,php-gd
    2)  安裝loganalyzer
        #tar xf loganalyzer-3.6.5.tar.gz
        #cp –r loganalyzer-3.6.5/src  /var/www/html/loganalyzer
        #cp –r loganalyzer-3.6.5/contrib/*.sh  /var/www/html/loganalyzer/
        #cd /var/www/html/loganalyzer/
        #chmod +x  *.sh 
        #./configure.sh
        #./secure.sh
        #chmod 666 config.php
測試,經過url訪問;

演示:
日誌服務器:192.168.19.134
測試主機:192.168.19.138
Mysql主機:192.168.19.138sql

  1. 啓用服務器功能;
    Linux自學筆記——日誌服務之rsyslog
  2. 啓動rsyslog服務,並測試端口;
    Linux自學筆記——日誌服務之rsyslog
  3. 測試在另外一臺主機上編輯/etc/rsyslog.conf,將target指向此臺日志服務器的地址;
    1) 編輯19.138主機上的rsyslog的主配置文件;
    Linux自學筆記——日誌服務之rsyslog
    2) 重啓服務並執行一個安裝程序;
    Linux自學筆記——日誌服務之rsyslog
    3) 在日誌服務器上測試是否有日誌;
    Linux自學筆記——日誌服務之rsyslog
  4. 記錄日誌於mysql中;
    1) 受權用戶對Syslog數據庫的所有訪問權限;
    Linux自學筆記——日誌服務之rsyslog
    Note:在這裏除了要受權本機的權限,還要受權,rsyslog主機訪問mysql數據庫的權限,不然,遠程訪問mysql將失敗;
    2) 在rsyslog主機上安裝rsyslog-mysql程序包;
    Linux自學筆記——日誌服務之rsyslog
    3) 在rsyslog主機上經過導入createDB.sql腳本建立依賴到的數據庫及表;
    Linux自學筆記——日誌服務之rsyslog
    4) 配置rsyslog使用ommysql模塊;
    Linux自學筆記——日誌服務之rsyslog
    Note:重啓rsyslog服務;
    5) 測試;
    在測試主機上安裝php,php-mysql,查詢mysql服務器數據庫Syslog表中的內容;
    Linux自學筆記——日誌服務之rsyslog
  5. Web展現接口:loganalyzer
    1) 配置lamp組合
    Httpd,php,php,mysql,php-gd;
    Linux自學筆記——日誌服務之rsyslog
    2) 安裝loganalyzer
    a. 解壓;
    Linux自學筆記——日誌服務之rsyslog
    b. 複製相關文件至/var/www/html目錄;
    Linux自學筆記——日誌服務之rsyslog
    c. 更改.sh結尾文件權限;
    Linux自學筆記——日誌服務之rsyslog
    d. 執行腳本;
    Linux自學筆記——日誌服務之rsyslog
    e. Config.php文件權限修改;
    Linux自學筆記——日誌服務之rsyslog
    f. 測試訪問;
    訪問頁面以下:
    Linux自學筆記——日誌服務之rsyslog
    確保config.php權限可寫:
    Linux自學筆記——日誌服務之rsyslog
    Step7,建立數據源,按以下填寫:
    Linux自學筆記——日誌服務之rsyslog
    進入頁面,showevents選項能夠查看日誌;
    Linux自學筆記——日誌服務之rsyslog
相關文章
相關標籤/搜索