Linux 之rsyslog+LogAnalyzer 日志收集系統


一、LogAnalyzer介紹
  LogAnalyzer工具提供了一個易於使用,功能強大的前端,用於搜索,查看和分析網絡活動數據,包括系統日志,事件日志和其他許多日志源。由於它只是將數據展示到我們用戶的面前,所以數據本身需要由另一個程序收集,比如syslogd,rsyslog(現在是發行版的默認的syslogd),WinSyslog或MonitorWare代理。LogAnalyzer同樣適用於Linux和Windows。它主要是用PHP編寫的自由軟件,基於GPL的開源應用程序。數據可以從數據庫,也可以從純文本文件而獲得。

本案例規划圖:

二、在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: 

登陸測試一下庫建好了沒

復制代碼
[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
復制代碼

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

 View Code

重啟rsyslog 服務,現在登陸mysql 進行驗證。

復制代碼
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:19
DeviceReportedTime: 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: NULL
1 row in set (0.00 sec)

ERROR: No query specified
復制代碼

三、部署LogAnalyzer

1.下載

復制代碼
[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 
復制代碼

 2.打開瀏覽器訪問 http://192.168.30.67/loganalyzer 安裝界面,如下,會有一個error,選擇here

選擇here進行安裝

選擇next

驗證config文件,就是我們上一不運行configure.sh 生成的文件

基本配置里,填寫數據庫連接信息

創建表,直接選擇next

檢查沒有失敗的狀態。繼續下一步

創建一個rsyslog的web管理用戶,名字叫rsyslog

檢查詳細信息

此處,source type 需要修改成mysql native 源,隨后填寫mysql相關信息,注意(Database Tablename 處我寫填寫錯誤,正確應該是SystemEvents)

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

輸入rsyslog,及設定的密碼。

在這里,可以看到最后rsyslog server 收集到的日志,已經展示在首頁了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM