[root@node1 ]# cat ngxlog.sh
#!/bin/bash
nginx_logs_dir="/var/log/nginx/web/"
#nginx_pid_file="/var/log/nginx/nginx.pid"
pid=`ps -ef|grep nginx|grep apache|awk ''`
nginx_log_today="$nginx_logs_dir/access_`date +%y%m%d`.log"
[ -f "$nginx_log_today" ] && exit 1
mv $nginx_logs_dir/access.log $nginx_log_today
/bin/kill -usr1 $
[ -f $nginx_pid_file ] && /bin/kill -usr1 $(cat $nginx_pid_file)
鳥哥linux私房菜文件-第十九章、認識與分析登入檔案
[root@node1 ]# cat /etc/rsyslog.conf
.........
# log anything (except mail) of level info or higher.
# don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none;local1.none;local2.none /var/log/messages //不將日誌重複輸出到messages檔案
local1.* /var/log/nginx // 新增此項
& ~local2.* /var/log/web2log // 新增此項
& ~.........
[root@node1 ]# vim /etc/logrotate.d/syslog
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
/var/log/nginx //新增此項
/var/log/web2log // 新增此項,預設將會在/var/log 下建立對應檔案並寫入日誌
啟動容器[syslog-facility --> 此項對應設定的日誌]
[root@node1 ]# docker run -d --name nginx --log-driver=syslog --log-opt syslog-facility=local1 -p 81:80 nginx:v1
[root@node1 ]# docker run -d --name web2 --log-driver=syslog --log-opt syslog-facility=local2 -p 82:80 nginx:v1
[root@node1 ]# ll -h /var/log/
-rw------- 1 root root 89k 9月 30 10:45 /var/log/dp1web
-rw------- 1 root root 6.0k 9月 30 10:48 /var/log/nginx
[root@node1 ]# docker run -d --name n1 --log-driver=journald -p 90:80 nginx
[root@node1 ]# journalctl container_name=n1
使用python指令碼收集日誌:
[root@node1 ]# yum install python2-systemd -y
[root@node1 ]# cat log.py
#!/usr/bin/python
import systemd.journal
reader = systemd.journal.reader()
reader.add_match('container_name=web')
for msg in reader:
print ': '.format(**msg)
check config file:
[root@node1 ]# fluentd --dry-run -c fluent.conf*
docker容器使用loki收集日誌
loki進行日誌聚合處理 類似elk中的es promtail是日誌收集,類似elk中的logstash filebeat等,如果是只收集docker容器的日誌則可以用loki的docker plugin替代 grafana是日誌顯示,類似elk中的kibana,可以通過各種標籤和表示式過濾顯示日誌...
容器日誌收集ELK Filebeat Kafka
隨著容器如火如荼的發展,分布式的業務架構日誌收集便也成了我們需要重點考慮之一 傳統方式中已經有相對成熟的解決方案,無不外乎容器中我們同樣能夠採取相同的架構解決容器基於kubernetes的日誌收集問題 對於這套方案,網上已經有無數種介紹,在此就不再對各大元件進行贅述,僅做簡單描述 元件作用 優點fi...
docker日誌 及 docker容器日誌
docker容器的日誌是預設存在本地的 var lib docker containers container id container id json.log 裡。可以用以下命令查log檔案的位置 docker inspect container id grep log 或 docker insp...