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文件便可。
這道理基本上就完成了整個過程。本身作個記錄以備後用。