InfluxDB 安裝後原本有 /var/log/influxdb/
路徑資料夾,但是預設情況下並沒有存放 log 在裡面,原因是在2.x版之後,默認情況下InfluxDB 將所有日誌輸出到 stdout,若要查看 InfluxDB 當下運行紀錄,需要手動執行 influxd 或是 journalctl
指令,要看之前的則需要到 syslog 查看非常繁雜不便,因此如果想要完整監控 InfluxDB 運行效能,建議將 InfluxDB
日誌獨立分開存放,之後進一步做日誌分析會更方便
第一步:建立 influxdb 擁有寫入權限的 log 檔案
root@inluxdb-uat:~# touch /var/log/influxdb/influxd.log
root@inluxdb-uat:~# chown -R influxdb:influxdb /var/log/influxdb/influxd.log
確認檔案擁有者為 influxdb
root@inluxdb-uat:~# ls -l /var/log/influxdb/influxd.log
-rw-r--r-- 1 influxdb influxdb 0 May 23 22:20 /var/log/influxdb/influxd.log
第二步:修改 influxdb 啟動的腳本內容
root@inluxdb-uat:~# vim /usr/lib/influxdb/scripts/influxd-systemd-start.sh
將原本第一行的 /usr/bin/influxd &
,修改重新定向為指定的目錄檔案
root@inluxdb-uat:~# /usr/bin/influxd 1> /var/log/influxdb/influxd.log &
重新啟動服務
root@inluxdb-uat:~# systemctl restart influxdb.service
查看log檔案已經將日誌內容寫入
root@inluxdb-uat:~# cat /var/log/influxdb/influxd.log
第三步:查看 influxdb 的 logrotate 設定
InfluxDB
本身不會定期清理日誌,使用logrotate來管理日誌,日誌按天輪換,保留期為 7
天,如果指定的路徑跟名稱不一樣則需修改。
root@inluxdb-uat:~# vim /etc/logrotate.d/influxdb