1. 為什麼要懂Log系統?
昨天我們把環境準備好了,但在正式實作前,想先補充一點背景知識:不同的Log系統有什麼差別?為什麼我要用 Loki?
這樣Day7開始實作時,就會更清楚「你不是亂選工具」。
2. 常見的Log系統介紹
• ELK Stack(Elasticsearch + Logstash + Kibana)
大企業愛用的組合,功能超完整,搜尋能力也超強。但缺點是安裝與維護都很麻煩,而且非常吃電腦資源。個人練習要跑ELK,通常會很快把筆電操到風扇狂轉。
• Fluentd + Elasticsearch + Kibana
另一種常見的搭配,Fluentd插件超多,很彈性。不過相對的,配置也更複雜,通常是DevOps團隊在用。
• Splunk
商用級的解決方案,功能非常強大,但價格也非常不親民。多數公司用不起來,除非是財力雄厚的大企業。
• Loki + Promtail + Grafana
特色是輕量、免費,而且跟Grafana天生就是好朋友,整合起來超快。缺點是搜尋能力不如ELK,但對於個人專案或快速原型來說,已經夠用了。
3. Loki的設計哲學
• 它不像Elasticsearch把所有log內容都建立索引,而是只存index + label。
• 真正要查詢時,才回去讀原始資料 → 省空間、速度快。
• 跟Prometheus的設計很像,特別適合監控場景。