nginx logs經過rsyslog收集至mysql數據庫使用LogAnalyzer查詢

nginx日誌作一個集中管理查詢php

環境:CentOS7.3+NGINX1.12.1+RSYSLOG8.3.4+MYSQL5.6+PHP7.1.9+LogAnalyzer4.1.6mysql

正常配置nginx日誌便可nginx

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$scheme"';
access_log logs/access.log main;sql

安裝rsyslog數據庫

我用的是yum安裝spa

yum install rsyslog rsyslog-msyql日誌

配置rsyslog.conform

編輯/etc/rsyslog.conf文件server

#導入imfile模塊ci

module(load="imfile")

導入nginx日誌文件路徑,設置爲Nginx標籤,並定義服務等級爲info,設置日誌設備爲local6

input(type="imfile" File="/usr/local/nginx/logs/access.log" Tag="nginx" Severity ="info"Facility="local6")

#導入momysql模塊

$ModLoad ommysql

#將local6日誌設備所有寫入指定數據庫內

#具體格式爲:*.*:ommysql:database-server,database-name,database-userid,database-password

local6.*:ommysql:192.168.1.141,nginxlog,root,123456;

還有一個重要的事情以前一直忘記作了,而後一直不成功。就是要把數據庫建立好,而且建立兩張表。建立的文件rsyslog-mysql自帶的。

而後會建立兩張表SystemEvents和SystemEventsProperties

具體的sql文件能夠經過

rpm -lq rsyslog-mysql
/usr/lib64/rsyslog/ommysql.so
/usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

查詢看到

並將/usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql文件導入數據庫,庫名字是默認Syslog,我這裏改爲了本身的nginxlog了

重啓rsyslog服務

這個時候開始數據庫已經能夠開始工做

下載並安裝loganalyer。這算個綠色軟件。直接下載下來吧src文件複製到nginx+php環境

這裏須要先生成一個config.php文件並指定666權限,而後根據INSTALL來完成基本配置便可。

這裏要注意的是數據庫名字是區分大小寫的,否則沒法工做。若是發現初始化的時候寫錯了,直接去編輯config.php文件便可。

這道理基本上就完成了整個過程。本身作個記錄以備後用。

相關文章
相關標籤/搜索