[問題] 請教使用 docker 架設 server log 安排問題

作者: chan15 (ChaN)   2024-01-16 08:59:57
一般我們安裝 nginx、php 以及 MySQL 時軟體服務都會預設一個簡單的
logrotate config 讓服務的 log 檔案不會無限肥大下去,也可以自訂
config 產出你想要的格式或數量,但 docker 來說 container 的 log
一般預設都是 stdout 讓你使用,也有 logging 可以讓你配置,但可設
定的內容不多,大概就是檔案數量以及大小,當然你可以透過 volume 把
log 掛載出來,但如果你想要針對該 log 從外部跑 logrotate 的話要
嘛得暫停該 container,否則有權限問題,要嘛就是要冒丟失風險
logrotate 配置 copytruncate 才能進行,想請教各位實務上是怎麼處
理這些 log 的,謝謝。
作者: chang505 (眼線)   2024-01-16 11:14:00
直接導出elk看 本機通通檔案 /dev/null
作者: obarisk (OSWALT)   2024-01-17 10:58:00
看你設定的 log driver
作者: Hsins (翔)   2024-01-17 13:43:00
跟樓上說的一樣,如果是 NGINX, MySQL 這種的走 Docker 的日誌,設定好 log driver 之後再拿來處理;然後運行程式的日誌,會在裡面寫一段操作,把日誌寫到 Redis/Kafka 再存到 Elasticsearch
作者: chan15 (ChaN)   2024-01-19 08:53:00
原來大家都走elk嗎,小小案子沒這種資源 QQ
作者: Reylod (Reylod)   2024-01-19 13:50:00
輕量一點的話選fluentd + loki,用grafana當前端
作者: obarisk (OSWALT)   2024-01-20 00:24:00
syslog, rsyslog, journald
作者: chan15 (ChaN)   2024-01-20 19:57:00
上述的 driver 我都試過,但客戶會針對每天切割出來的檔案做後續動作,所以 journald 那種的不太適合
作者: obarisk (OSWALT)   2024-01-21 23:07:00
沒預算還不用man 那就跟客戶做不到
作者: chang0206 (Eric Chang)   2024-01-22 17:02:00
每天定時切好給客戶?
作者: zack2004 (~夜晚的星空~)   2024-01-23 21:30:00
多少錢,做多少事。存log,就是要花錢
作者: jokester (蠻王科科)   2024-02-25 22:33:00
stream logs to cloud service with fluent-bit

Links booklink

Contact Us: admin [ a t ] ucptt.com