เบขเบนเป Badoo, เบเบงเบเปเบฎเบปเบฒเบเบดเบเบเบฒเบกเปเบเบฑเบเปเบเปเบฅเบเบตเปเปเปเบขเปเบฒเบเบเปเปเปเบเบทเปเบญเบ เปเบฅเบฐ เบเบฐเปเบกเบตเบเบงเปเบฒเบเบงเบเบกเบฑเบเบเบธเปเบกเบเปเบฒเปเบเบเบฒเบเบเบณเปเบเปเปเบเบฅเบฐเบเบปเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเบซเบผเบทเบเปเป. เบเบงเบเปเบฎเบปเบฒเบขเบฒเบเปเบเปเบเบเบฑเบเบซเบเบถเปเบเปเบเบเบฒเบเบชเบถเบเบชเบฒเปเบซเบผเบปเปเบฒเบเบตเปเบเบฑเบเบเบธเบกเบเบปเบ. เบกเบฑเบเบญเบธเบเบดเบเบเบปเบเปเบเบทเปเบญ Loki, เบฅเบฐเบเบปเบเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเบฑเบเบเบถเบ.
Loki เปเบกเปเบเบเบฒเบเปเบเปเปเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบฅเบฐเปเบเบดเปเบเบเบฑเบเบเบถเบ, เปเบฅเบฐ stack เบเบตเปเบเบฑเบเบชเบฐเบซเบเบญเบเบฅเบฐเบเบปเบเบเบตเปเบกเบตเบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเปเบเบเบฒเบเบงเบดเปเบเบฒเบฐเปเบฅเบฐเบชเบปเปเบเบเปเปเบกเบนเบเปเบเบซเบฒ Prometheus. เปเบเปเบเบทเบญเบเบเบถเบเบชเบฐเบเบฒ, เบเบฒเบเบเบฑเบเบเบธเบเบญเบทเปเบเปเบเปเบเบทเบเบเปเบญเบเบญเบญเบเบกเบฒ, เปเบเบดเปเบเปเบเปเบฎเบฑเบเบเบฒเบเบชเบปเปเบเปเบชเบตเบกเบขเปเบฒเบเบเบดเบเบเบฑเบเปเบเบเบเบนเปเบชเปเบฒเบ. เบเบงเบเปเบฎเบปเบฒเบกเบตเบเบงเบฒเบกเบชเบปเบเปเบเปเบเบชเบดเปเบเบเบตเป Loki เบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป, เบเบงเบฒเบกเบชเบฒเบกเบฒเบเบเบตเปเบกเบฑเบเบชเบฐเบซเบเบญเบ, เปเบฅเบฐเปเบเบฅเบฐเบเบฑเบเปเบเบเบตเปเบกเบฑเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเบซเบเปเบฒเบเบตเปเปเบเบฑเบเบเบฒเบเปเบฅเบทเบญเบเบเบญเบ ELK, stack เบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเปเปเบเบเบฑเบเบเบธเบเบฑเบ.
Loki เปเบกเปเบเบซเบเบฑเบ
Grafana Loki เปเบกเปเบเบเบธเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบชเปเบฒเบฅเบฑเบเบฅเบฐเบเบปเบเบเบตเปเบชเบปเบกเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบเปเบกเปเบเปเบญเบ. เบเปเปเปเบซเบกเบทเบญเบเบเบฑเบเบฅเบฐเบเบปเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเบญเบทเปเบเป, Loki เปเบกเปเบเบญเบตเบเปเบชเปเปเบเบงเบเบงเบฒเบกเบเบดเบเบเบญเบ indexing เบเบฝเบเปเบเป log metadata - เบเปเบฒเบเบเบทเป (เบเบทเบเบฑเบเบเบฑเบเปเบ Prometheus), เปเบฅเบฐเบเบฒเบเบเบตเบเบญเบฑเบเบเบฑเบเบเบถเบเบเปเบงเบเบเบปเบเปเบญเบเปเบเบปเปเบฒเปเบเปเบ chunks เปเบเบเบเปเบฒเบเบซเบฒเบ.
เบเปเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฐเปเบเบปเปเบฒเปเบเปเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเปเบเบฑเบ Loki, เบเปเบญเบเบเปเบญเบเบเบฒเบเปเบซเปเบเบงเบฒเบกเบเบฐเบเปเบฒเบเปเบเปเบเบเปเบฝเบงเบเบฑเบเบชเบดเปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒ "เปเบเบงเบเบงเบฒเบกเบเบดเบเบเบญเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเบเบฝเบเปเบเป metadata." เปเบซเปเบเบฝเบเบเบฝเบเบงเบดเบเบตเบเบฒเบ Loki เปเบฅเบฐเบงเบดเบเบตเบเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบเบเบฒเบเปเบเปเปเบเปเบเบเบเบฑเปเบเปเบเบตเบกเปเบเบฑเปเบ Elasticsearch, เปเบเบเปเบเปเบเบปเบงเบขเปเบฒเบเบเบญเบเปเบชเบฑเปเบเบเบฒเบเบเบฑเบเบเบถเบ nginx:
172.19.0.4 - - [01/Jun/2020:12:05:03 +0000] "GET /purchase?user_id=75146478&item_id=34234 HTTP/1.1" 500 8102 "-" "Stub_Bot/3.0" "0.001"
เบฅเบฐเบเบปเบเปเบเบเบเบฑเปเบเปเบเบตเบก parse เปเบเบงเบเบฑเบเบซเบกเบปเบ, เบฅเบงเบกเบเบฑเบเบเปเบญเบเบเปเปเบกเบนเบเบเบตเปเบกเบตเบเปเบฒเบเบงเบ user_id เปเบฅเบฐ item_id เบเบตเปเปเบเบฑเบเปเบญเบเบฐเบฅเบฑเบ, เปเบฅเบฐเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเบขเบนเปเปเบเบเบฑเบเบเบฐเบเบตเบเบฐเบซเบเบฒเบเปเบซเบเป. เบเบฐเปเบซเบเบเบเบญเบเบงเบดเบเบตเบเบฒเบเบเบตเปเปเบกเปเบเบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบชเบญเบเบเบฒเบกเบเบตเปเบชเบฑเบเบชเบปเบเปเบเปเปเบง, เปเบเบฒเบฐเบงเปเบฒเบเปเปเบกเบนเบเปเบเบทเบญเบเบเบฑเบเบซเบกเบปเบเปเบกเปเบเบขเบนเปเปเบเบเบฑเบเบเบฐเบเบต. เปเบเปเบเบตเปเบกเบฒเปเบเบฅเบฒเบเบฒเบเบตเปเบเบฑเบเบเบฐเบเบตเบเบฒเบเปเบเบฑเบเบเบฐเบซเบเบฒเบเปเบซเบเป, เปเบเบดเปเบเปเบเปเบเบฑเบเบเบงเบฒเบกเบเปเบญเบเบเบฒเบเบเบงเบฒเบกเบเบปเบเบเปเบฒ. เบเบฑเปเบเบเบฑเปเบ, เบเบฑเบเบเบฐเบเบตเบเบฑเบเบเบถเบเบเปเปเบเบงเบฒเบกเปเบเบฑเบกเปเบกเปเบเบชเบฒเบกเบฒเบเบเบฝเบเบเบฝเบเปเบเปเปเบเบเบฐเบซเบเบฒเบเบเบญเบเบเบฑเบเบเบถเบเบเบญเบเบเบปเบเปเบญเบ. เปเบเบทเปเบญเบเบปเปเบเบซเบฒเบกเบฑเบเบขเปเบฒเบเปเบงเบงเบฒ, เบเบฑเบเบเบฐเบเบตเบเปเบญเบเบเบทเบเปเบซเบฅเบเปเบเบปเปเบฒเปเบเปเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒ. เปเบฅเบฐเบเบฑเบเบเบถเบเบซเบผเบฒเบ, เบเบฑเบเบเบฐเบเบตเบเบฐเปเบเบตเบเปเบเปเบงเบเบถเปเบเปเบฅเบฐเบเบงเบฒเบกเบเปเบฒเบซเบผเบฒเบเบกเบฑเบเบเปเบฅเบดเปเบเบ.
เบงเบดเบเบตเบเบฒเบ Loki เบฎเบฝเบเบฎเปเบญเบเปเบซเปเบเบฝเบเปเบเปเบเปเปเบกเบนเบเบเบตเปเบเปเบฒเปเบเบฑเบเปเบเปเบเบทเบเบชเบฐเบเบฑเบเบญเบญเบเบเบฒเบเบชเบฐเบเบฃเบดเบ, เบเปเบฒเบเบงเบเบเปเบฒเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบเบเปเบญเบ. เบงเบดเบเบตเบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฑเบเบเบฑเบเบชเบฐเบเบตเบเบฐเบซเบเบฒเบเบเปเบญเบเปเบฅเบฐเบชเบฒเบกเบฒเบเบเบปเปเบเบซเบฒเบเปเปเบกเบนเบเปเบเปเปเบเบเบเบฒเบเบเบฑเปเบเบเบญเบเบกเบฑเบเบเบฒเบกเปเบงเบฅเบฒเปเบฅเบฐเปเบเบเบเปเบญเบเบเปเปเบกเบนเบเบเบตเปเบเบทเบเบเบฑเบเบชเบฐเบเบต, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบชเบฐเปเบเบเบชเปเบงเบเบเบตเปเปเบซเบผเบทเบญเบเปเบงเบเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเบเบปเบเบเบฐเบเบดเบซเบผเบทเบเบฒเบเบเบปเปเบเบซเบฒ substring. เบเบฐเบเบงเบเบเบฒเบเปเบเบดเปเบเบเบทเบงเปเบฒเบเปเปเปเบงเบเบตเปเบชเบธเบ, เปเบเป Loki เปเบเบเบเปเบฒเบฎเปเบญเบเบเปเบญเบญเบเปเบเบฑเบเบซเบผเบฒเบเบเบฒเบเบชเปเบงเบเปเบฅเบฐเบเบฐเบเบดเบเบฑเบเปเบซเปเปเบเบปเบฒเปเบเบปเปเบฒเปเบเบเบฐเบซเบเบฒเบ, เบเบฐเบกเบงเบเบเบปเบเบเปเปเบกเบนเบเบเปเบฒเบเบงเบเบซเบผเบงเบเบซเบผเบฒเบเปเบเปเบงเบฅเบฒเบชเบฑเปเบเป. เบเปเบฒเบเบงเบเบเบญเบ shards เปเบฅเบฐเบเปเบฒเบฎเปเบญเบเบเปเบเบฐเบซเบเบฒเบเปเบเบเบงเบเปเบเบปเบฒเปเบกเปเบ configurable; เบเบฑเปเบเบเบฑเปเบ, เบเปเบฒเบเบงเบเบเปเปเบกเบนเบเบเบตเปเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเปเบซเบปเบงเบซเบเปเบงเบเบเบญเบเปเบงเบฅเบฒเปเบกเปเบเบเบถเปเบเบเบฑเบเบเปเบฒเบเบงเบเบเบฑเบเบเบฐเบเบฒเบเบญเบเบเบตเปเบชเบฐเบซเบเบญเบเปเบซเป.
เบเบฒเบเบเบทเปเบเบฒเบเบเบตเปเบฅเบฐเบซเบงเปเบฒเบเบเบฑเบเบเบฐเบเบตเบเบฐเบซเบเบฒเบเปเบซเบเป, เปเบงเปเบฅเบฐเบเบฐเบซเบเบฒเบเบเปเบญเบ, เบเบฐเบซเบเบฒเบ brute-force เบเบฑเบเบเบฐเบเบตเบญเบฐเบเบธเบเบฒเบเปเบซเป Loki เบเบงเบเบเบธเบกเบเปเบฒเปเบเปเบเปเบฒเบเบเบญเบเบฅเบฐเบเบปเบ. เบกเบฑเบโเบชเบฒโเบกเบฒเบโเปเบเปโเบฎเบฑเบโเบเบฒเบโเบเบฑเบโเบเบฑเปเบโเปเบฅเบฐโเบเบฐโเบซเบเบฒเบโเบเบปเบงโเบเบฒเบกโเบเบงเบฒเบกโเบเปเบญเบโเบเบฒเบโ.
stack Loki เบเบฐเบเบญเบเบเปเบงเบเบชเบฒเบกเบญเบปเบเบเบฐเบเบญเบ: Promtail, Loki, Grafana. Promtail เปเบเบฑเบโเบเปเบฒโเบเปเปโเบกเบนเบโเบเบฑเบโเบเบถเบ, เบเบธเบโเปเบเปเบโเปเบซเปโเปเบเบปเบฒโเปเบเบปเปเบฒโเปเบฅเบฐโเบชเบปเปเบโเปเบซเปโเปเบเบปเบฒโเปเบเบปเปเบฒ Loki. Loki เบฎเบฑเบเบชเบฒเบเบงเบเปเบเบปเบฒ. เปเบฅเบฐ Grafana เบชเบฒเบกเบฒเบเบฎเปเบญเบเบเปเบเปเปเบกเบนเบเบเบฒเบ Loki เปเบฅเบฐเบชเบฐเปเบเบเบกเบฑเบ. เปเบเบเบเบปเปเบงเปเบ, Loki เบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเบเปเปเบเบฝเบเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฑเบเบเบถเบเปเบฅเบฐเบเบปเปเบเบซเบฒเบเปเบฒเบเบเบงเบเบกเบฑเบ. stack เบเบฑเบเบซเบกเบปเบเบชเบฐเบซเบเบญเบเปเบญเบเบฒเบเบเบตเปเบเบดเปเบเปเบซเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบธเบเปเบเปเบเปเบฅเบฐเบเบฒเบเบงเบดเปเบเบฒเบฐเบเปเปเบกเบนเบเบเบฒเปเบเบปเปเบฒเปเบเบเปเบเปเบงเบดเบเบตเบเบฒเบ Prometheus.
เบฅเบฒเบเบฅเบฐเบญเบฝเบเบเบญเบเบเบฐเบเบงเบเบเบฒเบเบเบดเบเบเบฑเปเบเบชเบฒเบกเบฒเบเบเบปเบเปเบเป
เบเบญเบเบซเบฒเบเปเบงเบเบเบฑเบเบเบถเบ
เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบปเปเบเบซเบฒเบเบฑเบเบเบถเบเปเบเบเบฒเบเปเบเปเบเบญเบ Grafana เบเบดเปเบชเบ - Explorer. เบเบฒเบเบชเบญเบเบเบฒเบกเปเบเปเบเบฒเบชเบฒ LogQL, เปเบเบดเปเบเบเปเบฒเบเบเบทเบเบฑเบเบเบฑเบ PromQL เบเบตเปเปเบเปเปเบ Prometheus. เปเบเบซเบผเบฑเบเบเบฒเบ, เบกเบฑเบเบชเบฒเบกเบฒเบเบเบทเบเบเบดเบเบงเปเบฒเปเบเบฑเบ grep เปเบเบเบขเบฒเบ.
เบเบฒเบเปเบเปเบเบญเบเบเบฒเบเบเบญเบเบซเบฒเปเบเบดเปเบเบเบทเบงเปเบฒเบเบตเป:
เบเบฒเบเบฎเปเบญเบเบเปเบเบปเบงเบเบญเบเบกเบฑเบเปเบญเบเบเบฐเบเบญเบเบเปเบงเบเบชเบญเบเบเบฒเบเบชเปเบงเบ: เบเบปเบงเปเบฅเบทเบญเบเปเบฅเบฐเบเบปเบงเบเบญเบ. Selector เปเบกเปเบเบเบฒเบเบเบปเปเบเบซเบฒเปเบเบเปเบเป metadata เบเบตเปเบเบทเบเบเบฑเบเบชเบฐเบเบต (เบเปเบฒเบเบเบทเป) เบเบตเปเบเบทเบเบกเบญเบเบซเบกเบฒเบเปเบซเปเบเบฑเบเบเบถเบ, เปเบฅเบฐเบเบฒเบเบเบฑเปเบเบเบญเบเปเบกเปเบเบชเบฐเบเบฃเบดเบเบเบปเปเบเบซเบฒเบซเบผเบท regexp เบเบตเปเบเบฑเปเบเบเบญเบเบเบฑเบเบเบถเบเบเบตเปเบเปเบฒเบเบปเบเปเบเบเบเบปเบงเปเบฅเบทเบญเบ. เปเบเบเบปเบงเบขเปเบฒเบเบเบตเปเปเบเปเบฎเบฑเบ: เปเบเบงเบปเบเปเบฅเบฑเบ curly เบกเบตเบเบปเบงเปเบฅเบทเบญเบ, เบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเปเบกเปเบเบเบปเบงเบเบญเบ.
{image_name="nginx.promtail.test"} |= "index"
เปเบเบทเปเบญเบเบเบฒเบเบงเบดเบเบตเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบญเบ Loki, เบเปเบฒเบเบเปเปเบชเบฒเบกเบฒเบเปเบฎเบฑเบเบเบฒเบเบชเบญเบเบเบฒเบกเปเบเบเบเปเปเบกเบตเบเบปเบงเปเบฅเบทเบญเบ, เปเบเปเบเปเบฒเบเบเบทเปเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเปเบเบปเปเบงเปเบเบเบฒเบกเบเบตเปเบเปเบฒเบเบเปเบญเบเบเบฒเบ.
เปเบเปเบฅเบทเบญเบเปเบกเปเบเบเปเบฒเบซเบผเบฑเบเปเบเบงเบปเบเบเบตเบเบเบฒ. เบเปเบฒเบเบชเบฒเบกเบฒเบเบฅเบงเบกเบเบปเบงเปเบฅเบทเบญเบเปเบฅเบฐเบฅเบฐเบเบธเปเบเบทเปเบญเบเปเบเบเบฒเบเบเบญเบเบซเบฒเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบเบเปเบเปเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ =, != เบซเบผเบทเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเบเบปเบเบเบฐเบเบด:
{instance=~"kafka-[23]",name!="kafka-dev"}
// ะะฐะนะดัั ะปะพะณะธ ั ะปะตะนะฑะปะพะผ instance, ะธะผะตััะธะต ะทะฝะฐัะตะฝะธะต kafka-2, kafka-3, ะธ ะธัะบะปััะธั dev
เบเบปเบงเบเบญเบเปเบกเปเบเบเปเปเบเบงเบฒเบก เบซเบผเบท regexp เบเบตเปเบเบฐเบเบฑเปเบเบเบญเบเบเปเปเบกเบนเบเบเบฑเบเปเบปเบเบเบตเปเปเบเปเบฎเบฑเบเปเบเบเบเบปเบงเปเบฅเบทเบญเบ.
เบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบฐเปเบเปเบฎเบฑเบเบเบฒเบเบชเบฐเปเบเบฒเบฐเปเบเบเบญเบตเบเปเบชเปเบเปเปเบกเบนเบเบเบตเปเปเบเปเบฎเบฑเบเปเบเบฎเบนเบเปเบเบ metrics. เบเบปเบงเบขเปเบฒเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบญเบเบซเบฒเปเบเปเบงเปเบฒเบฅเบฒเบเบเบฒเบเบเบตเปเบกเบตเบเบฑเบเบเบฐเบเบตเบชเบฐเบเบฃเบดเบเบเบฒเบเบปเบเบขเบนเปเปเบเบเบฑเบเบเบถเบ nginx เปเบฅเบทเปเบญเบเปเบชเปเปเบฒเปเบ:
เบฅเบฒเบเบฅเบฐเบญเบฝเบเปเบเบฑเบกเบเบญเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเบชเบฒเบกเบฒเบเบเบปเบเปเบเปเปเบเปเบญเบเบฐเบชเบฒเบ
เบเบฒเบเบงเบดเปเบเบฒเบฐเบเบฑเบเบเบถเบ
เบกเบตโเบซเบผเบฒเบโเบงเบดโเบเบตโเบเบฒเบโเปเบเบฑเบโเบเปเบฒโเบเปเปโเบกเบนเบโ:
- เบเบฒเบเบเปเบฒเปเบเป Promtail, เบญเบปเบเบเบฐเบเบญเบเบกเบฒเบเบเบฐเบเบฒเบเบเบญเบ stack เบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเบเปเบฒเบเปเปเบกเบนเบเบเบฑเบเบเบถเบ.
- เปเบเบเบเบปเบเบเบฒเบเบเบฑเบ docker เปเบเบเปเบเป
เปเบเปเบงเบตเบเบฑเบเบเบถเบ Loki Docker. - เปเบเป Fluentd เบซเบผเบท Fluent Bit, เปเบเบดเปเบเบชเบฒเบกเบฒเบเบชเบปเปเบเบเปเปเบกเบนเบเปเบเบซเบฒ Loki. เบเปเปเปเบซเบกเบทเบญเบเบเบฑเบ Promtail, เบเบงเบเปเบเบปเบฒเบกเบตเบเบปเบงเปเบเบเบงเบดเปเบเบฒเบฐเบเบตเปเบเบฝเบกเบเปเบญเบกเบชเปเบฒเบฅเบฑเบเปเบเบทเบญเบเบเบธเบเบเบฐเปเบเบเบเบญเบเบเบฑเบเบเบถเบเปเบฅเบฐเบเบฑเบเบชเบฒเบกเบฒเบเบเบฑเบเบเบฒเบเบเบฑเบเบเบถเบเบซเบผเบฒเบเปเบเบง.
เบเบปเบเบเบฐเบเบดเปเบฅเปเบง Promtail เปเบกเปเบเปเบเปเปเบเบทเปเบญเบงเบดเปเบเบฒเบฐ. เบกเบฑเบเปเบฎเบฑเบเบชเบฒเบกเบขเปเบฒเบ:
- เบเบญเบเบซเบฒเปเบซเบผเปเบเบเปเปเบกเบนเบ.
- เบเบดเบเบเปเบฒเบเบเบณเบเบฑเบเปเบชเปเบเบงเบเบกเบฑเบ.
- เบชเบปเปเบเบเปเปเบกเบนเบเปเบเบซเบฒ Loki.
เปเบเบเบฑเบเบเบธเบเบฑเบ Promtail เบชเบฒเบกเบฒเบเบญเปเบฒเบเบเบฑเบเบเบถเบเบเบฒเบเปเบเบฅเปเบเปเบญเบเบเบดเปเบเปเบฅเบฐเบเบฒเบเบงเบฒเบฅเบฐเบชเบฒเบ systemd. เบกเบฑเบเบเปเบญเบเบเบทเบเบเบดเบเบเบฑเปเบเบขเบนเปเปเบเปเบเปเบฅเบฐเปเบเบทเปเบญเบเบเบฑเบเบเบตเปเปเบเบฑเบเบเปเบฒเบเปเปเบกเบนเบเบเบฑเบเบเบถเบ.
เบกเบตเบเบฒเบเปเบเบทเปเบญเบกเปเบเบเบเบฑเบ Kubernetes: Promtail เปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ, เบเปเบฒเบ Kubernetes REST API, เบฎเบฑเบเบฎเบนเปเบชเบฐเบเบฒเบเบฐเบเบญเบเบเบธเปเบก เปเบฅเบฐเปเบเบฑเบเบเปเบฒเบเปเปเบกเบนเบเบเบฑเบเบเบถเบเบเบฒเบ node, เบเปเบฅเบดเบเบฒเบ เบซเบผเบท pod, เบเบฑเบเบเบตเบเบตเปเบเบฐเบเบฒเบเบเปเบฒเบเบเบทเปเปเบเบเบญเบตเบเปเบชเป metadata เบเบฒเบ Kubernetes (เบเบทเป pod, เบเบทเปเปเบเบฅเป, เปเบฅเบฐเบญเบทเปเบเป) .
เบเปเบฒเบเบเบฑเบเบชเบฒเบกเบฒเบเบงเบฒเบเบเปเบฒเบเปเบเบเบญเบตเบเปเบชเปเบเปเปเบกเบนเบเบเบฒเบเบเบฑเบเบเบถเบเปเบเบเปเบเป Pipeline. Pipeline Promtail เบชเบฒเบกเบฒเบเบเบฐเบเบญเบเบเปเบงเบเบชเบตเปเบเบฐเปเบเบเบเบญเบเบเบฑเปเบเบเบญเบ. เบฅเบฒเบเบฅเบฐเบญเบฝเบเปเบเบตเปเบกเปเบเบตเบกเปเบ
- เบเบฑเปเบเบเบญเบเบเบฒเบเบงเบดเปเบเบฒเบฐ. เบเบตเปเปเบกเปเบเบเบฑเปเบเบเบญเบ RegEx เปเบฅเบฐ JSON. เปเบเบเบฑเปเบเบเบญเบเบเบตเป, เบเบงเบเปเบฎเบปเบฒเบชเบฐเบเบฑเบเบเปเปเบกเบนเบเบเบฒเบเบเบฑเบเบเบถเบเปเบเบปเปเบฒเปเบเปเบเบญเบฑเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒเปเบเบเบเบตเปเบชเบฐเบเบฑเบ. เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบชเบฐเบเบฑเบเบเบฒเบ JSON เปเบเบเบเบฝเบเปเบเปเบเบฑเบเบฅเบญเบเบเบปเปเบเบเบฒเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบเปเบเบปเปเบฒเปเบเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ, เบซเบผเบทเปเบเบเบเปเบฒเบเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเบเบปเบเบเบฐเบเบด (RegEx), เบเปเบญเบเบเบตเปเบเบธเปเบกเบเบตเปเบกเบตเบเบทเปเบเบทเบ "เปเบฎเบฑเบเปเบเบเบเบตเป" เปเบเบปเปเบฒเปเบเปเบเปเบเบเบเบตเปเบชเบฐเบเบฑเบ. เปเบเบโเบเบตเปโเบเบตเปโเบชเบฐโเบเบฑเบโเบญเบญเบโเปเบกเปเบโเบเบฒเบโเปเบเบฑเบโเบฎเบฑเบโเบชเบฒโเบเบตเปโเบกเบตโเบเบธเบโเบเปเบฒโเบเบตเปโเบชเปเบฒโเบเบฑเบโ, เบเบตเปโเบชเปเบฒโเบเบฑเบโเปเบกเปเบโเบเบทเปโเบเบญเบโเบเบฒเบโเบชเบฐโเบซเบเบฒเบกโ, เปเบฅเบฐโเบกเบนเบโเบเปเบฒโเปเบกเปเบโเบเปเบฒโเบเบญเบโเบเบปเบโเบเบฒเบโเบเบฑเบโเบเบถเบโ.
- เบเบฑเปเบเบเบญเบเบเบฒเบเบซเบฑเบเบเปเบฝเบ. เบเบฑเปเบเบเบญเบเบเบตเปเบกเบตเบชเบญเบเบเบฒเบเปเบฅเบทเบญเบ: เบเบฒเบเบซเบฑเบเบเปเบฝเบ, เบเปเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบฒเบเบปเบเบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบซเบฑเบเบเปเบฝเบ, เปเบฅเบฐเปเบซเบผเปเบ - เปเบซเบผเปเบเบเปเปเบกเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบซเบฑเบเบเปเบฝเบเบเบฒเบเปเบเบเบเบตเปเบชเบฐเบเบฑเบ. เบเปเบฒเบเปเปเบกเบตเบเบฒเบเบชเบฐเบซเบเบฒเบกเบเบฑเปเบเบเปเบฒเบงเปเบเปเบเบเบเบตเปเบชเบฐเบเบฑเบ, เบกเบฑเบเบเบฐเบเบทเบเบชเปเบฒเบเบเบถเปเบ. เบงเบดเบเบตเบเบตเปเบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบฐเบชเปเบฒเบเบเปเบฒเบเบเบตเปเบเปเปเบญเบตเบเปเบชเปเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ. เปเบโเบเบฑเปเบโเบเบญเบโเบเบตเปโเบเบงเบโเปเบฎเบปเบฒโเบชเบฒโเบกเบฒเบโเบเบฑเบโเบเบฒเบโเบเปเปโเบกเบนเบโเปเบโเปเบเบโเบเบตเปโเบชเบฐโเบเบฑเบโเปเบเบโเบเปเบฒโเปเบเปโเบเบตเปโเบกเบตโเบญเปเบฒโเบเบฒเบโเบเปโเบชเบปเบกโเบเบงเบโ
เปเบกเปเปเบเบ Golang . เบเบญเบเบเบฒเบเบเบฑเปเบ, เบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบทเปเปเบงเปเบงเปเบฒเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบเบกเบฒเปเบเปเบเบทเบเปเบซเบฅเบเบเบฑเบเบซเบกเบปเบเปเบเบฅเบฐเบซเบงเปเบฒเบเบเบฒเบเบงเบดเปเบเบฒเบฐ, เปเบเบดเปเบเปเบฎเบฑเบเปเบซเปเบกเบฑเบเปเบเบฑเบเปเบเปเบเป, เบเบปเบงเบขเปเบฒเบเปเบเบฑเปเบ, เปเบเบทเปเบญเบเบงเบเปเบเบดเปเบเบเปเบฒเปเบเบกเบฑเบ: โ{{เบเปเบฒ .tag}เบเปเบฒเปเบเบฑเบเบกเบตเบขเบนเป{end}}โ. เปเบกเปเปเบเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเปเบเบทเปเบญเบเปเบ, loops, เปเบฅเบฐเบเบฒเบเบเบฑเบเบเบฑเบ string เปเบเบฑเปเบ Replace เปเบฅเบฐ Trim. - เบเบฑเปเบเบเบญเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ. เปเบเบเบธเบเบเบตเป, เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเบเบฒเบเบชเบดเปเบเบเบฒเบเบขเปเบฒเบเบเบตเปเบกเบตเปเบเบทเปเบญเปเบเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ:
- เบชเปเบฒเบเบเปเบฒเบเบเบทเปเบเบฒเบเบเปเปเบกเบนเบเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ, เปเบเบดเปเบเบเบฐเบเบทเบเบเบฑเบเบชเบฐเบเบตเปเบเบ Loki.
- เบเปเบฝเบ เบซเบผเบทเบเบฑเปเบเปเบงเบฅเบฒเปเบซเบเบเบฒเบเบเบฒเบเบเบฑเบเบเบถเบ.
- เบเปเบฝเบเบเปเปเบกเบนเบ (เบเปเปเบเบงเบฒเบกเบเบฑเบเบเบถเบ) เบเบตเปเบเบฐเปเบเบซเบฒ Loki.
- เบชเปเบฒเบเปเบกเบเบฃเบดเบ.
- เบเบฑเปเบเบเบญเบเบเบฒเบเบเบฑเปเบเบเบญเบ. เบเบฑเปเบเบเบญเบเบเบฒเบเปเบเปเบเบเบฑเบ, เบเปเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบชเบปเปเบเบฅเบฒเบเบเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบ /dev/null เบซเบผเบทเบชเบปเปเบเบเปเปเปเบซเปเปเบเบปเบฒเปเบเบปเปเบฒเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบธเบเปเบเปเบเบเปเปเปเบ.
เบเบฒเบเบเปเบฒเปเบเปเบเบปเบงเบขเปเบฒเบเบเบญเบเบเบฒเบเบเบธเบเปเบเปเบเบเบฑเบเบเบถเบ nginx เบเบปเบเบเบฐเบเบด, เบเปเบฒเบเบฐเปเบเบปเปเบฒเบเบฐเบชเบฐเปเบเบเบงเบดเบเบตเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบงเบดเปเบเบฒเบฐเบเบฑเบเบเบถเบเปเบเบเปเบเป Promtail.
เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบปเบเบชเบญเบ, เปเบซเปเปเบเปเปเบเบฑเบ nginx-proxy เปเบเบฑเบเบฎเบนเบเบเบฒเบ nginx เบเบตเปเบเบทเบเบเบฑเบเปเบเบ jwilder/nginx-proxy:alpine เปเบฅเบฐ daemon เบเบฐเบซเบเบฒเบเบเปเบญเบเบเบตเปเบชเบฒเบกเบฒเบเบเบฒเบกเบเบปเบงเปเบญเบเบเปเบฒเบ HTTP. daemon เบกเบตเบซเบผเบฒเบเบเบธเบเบชเบดเปเบเบชเบธเบ, เปเบเบดเปเบเบกเบฑเบเบชเบฒเบกเบฒเบเบชเบฐเบซเบเบญเบเบเบฒเบเบเบญเบเบชเบฐเบซเบเบญเบเบเบญเบเบเบฐเบซเบเบฒเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ, เบกเบตเบชเบฐเบเบฒเบเบฐเบเบฒเบ HTTP เบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบฅเบฐเบกเบตเบเบงเบฒเบกเบฅเปเบฒเบเปเบฒเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ.
เบเบงเบเปเบฎเบปเบฒเบเบฐเปเบเบฑเบเบเบฑเบเบเบถเบเบเบฒเบ docker containers, เปเบเบดเปเบเบชเบฒเบกเบฒเบเบเบปเบเปเบเปเบเบฒเบกเปเบชเบฑเปเบเบเบฒเบ /var/lib/docker/containers/ / -json.log
เปเบ docker-compose.yml เบเบงเบเปเบฎเบปเบฒ configure Promtail เปเบฅเบฐเบฅเบฐเบเบธเปเบชเบฑเปเบเบเบฒเบเปเบเบซเบฒ config:
promtail:
image: grafana/promtail:1.4.1
// ...
volumes:
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- promtail-data:/var/lib/promtail/positions
- ${PWD}/promtail/docker.yml:/etc/promtail/promtail.yml
command:
- '-config.file=/etc/promtail/promtail.yml'
// ...
เปเบเบตเปเบกเปเบชเบฑเปเบเบเบฒเบเปเบเบซเบฒเบเบฑเบเบเบถเบเปเบเบซเบฒ promtail.yml (เบกเบตเบเบฒเบเปเบฅเบทเบญเบ "docker" เปเบ config, เปเบเบดเปเบเปเบฎเบฑเบเบชเบดเปเบเบเบฝเบงเบเบฑเบเปเบเปเบเบงเบเบฝเบง, เปเบเปเบกเบฑเบเบเบฐเบเปเปเบเบฑเบเปเบเบ):
scrape_configs:
- job_name: containers
static_configs:
labels:
job: containerlogs
__path__: /var/lib/docker/containers/*/*log # for linux only
เปเบกเบทเปเบญเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบตเปเบเบทเบเปเบเบตเบเปเบเปเบเบฒเบ, เบเบฑเบเบเบถเบเบเบฒเบเบเปเบญเบเบเบฑเบเบเบธเบเบฑเบเปเบปเบเบเบฐเบเบทเบเบชเบปเปเบเปเบเบซเบฒ Loki. เปเบเบทเปเบญเบซเบผเบตเบเปเบงเบฑเปเบเบเบฒเบเบเบตเป, เบเบงเบเปเบฎเบปเบฒเบเปเบฝเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบญเบเบเบฒเบเบเบปเบเบชเบญเบ nginx เปเบ docker-compose.yml - เบเบทเปเบกเบเปเปเบกเบนเบเบเบฑเบเบเบถเบเบเบฒเบเปเบเบปเปเบฒเบชเบนเปเบฅเบฐเบเบปเบ:
proxy:
image: nginx.test.v3
//โฆ
logging:
driver: "json-file"
options:
tag: "{{.ImageName}}|{{.Name}}"
เบเบฒเบเปเบเปเปเบ promtail.yml เปเบฅเบฐเบเบฒเบเบเบฑเปเบเบเปเบฒ Pipeline. เบเบฒเบเบเปเบญเบเบเปเปเบกเบนเบเบเบฐเบเบญเบเบกเบตเบเบฑเบเบเบถเบเบเบญเบเบเบฐเปเบเบเบเปเปเปเบเบเบตเป:
{"log":"u001b[0;33;1mnginx.1 | u001b[0mnginx.test 172.28.0.3 - - [13/Jun/2020:23:25:50 +0000] "GET /api/index HTTP/1.1" 200 0 "-" "Stub_Bot/0.1" "0.096"n","stream":"stdout","attrs":{"tag":"nginx.promtail.test|proxy.prober"},"time":"2020-06-13T23:25:50.66740443Z"}
{"log":"u001b[0;33;1mnginx.1 | u001b[0mnginx.test 172.28.0.3 - - [13/Jun/2020:23:25:50 +0000] "GET /200 HTTP/1.1" 200 0 "-" "Stub_Bot/0.1" "0.000"n","stream":"stdout","attrs":{"tag":"nginx.promtail.test|proxy.prober"},"time":"2020-06-13T23:25:50.702925272Z"}
เบเบฑเปเบเบเบญเบเบเบญเบเบเปเป:
- json:
expressions:
stream: stream
attrs: attrs
tag: attrs.tag
เบเบงเบเปเบฎเบปเบฒเบชเบฐเบเบฑเบเปเบญเบปเบฒ fields stream, attrs, attrs.tag (เบเปเบฒเบเบงเบเบกเบฑเบเบกเบตเบขเบนเป) เบเบฒเบ JSON เบเบตเปเปเบเบปเปเบฒเบกเบฒเปเบฅเบฐเปเบซเปเบเบงเบเปเบเบปเบฒเบขเบนเปเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ.
- regex:
expression: ^(?P<image_name>([^|]+))|(?P<container_name>([^|]+))$
source: "tag"
เบเปเบฒเบเบงเบเปเบฎเบปเบฒเบเบฑเบเบเบฒเบเปเบชเปเบเบฒเบเบชเบฐเบซเบเบฒเบกเปเบเบฑเบเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเปเบเบเปเบเป regexp เบเบงเบเปเบฎเบปเบฒเบชเบฐเบเบฑเบเบเบทเปเบเบญเบเบฎเบนเบเบเบฒเบเปเบฅเบฐเบเบฑเบ.
- labels:
image_name:
container_name:
เบเบงเบเปเบฎเบปเบฒเบเปเบฒเบเบปเบเบเปเบฒเบเบเบทเป. เบเปเบฒเบเบปเบเบเบฐเปเบ image_name เปเบฅเบฐ container_name เปเบเบเปเปเบกเบนเบเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, เบเปเบฒเบเบญเบเบเบงเบเบกเบฑเบเบเบฐเบเบทเบเบกเบญเบเปเบซเปเบเปเบฒเบเบเบทเปเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบ.
- match:
selector: '{job="docker",container_name="",image_name=""}'
action: drop
เบเบงเบเปเบฎเบปเบฒเบเบปเบเปเบฅเบตเบเบเบฑเบเบเบถเบเบเบฑเบเปเบปเบเบเบตเปเบเปเปเปเบเปเบเบดเบเบเบฑเปเบเบเปเบฒเบเบเบทเป image_name เปเบฅเบฐ container_name.
- match:
selector: '{image_name="nginx.promtail.test"}'
stages:
- json:
expressions:
row: log
เบชเบณเบฅเบฑเบเบเบฑเบเบเบถเบเบเบฑเบเปเบปเบเบเบตเปเบกเบตเบเบทเป image_name เปเบกเปเบ nginx.promtail.test, เปเบเบเบเปเปเบกเบนเบเบเบฑเบเบเบถเบเบเบฒเบเบเบฑเบเบเบถเบเปเบซเบผเปเบเบเบตเปเบกเบฒ เปเบฅเบฐเปเบชเปเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบเปเบงเบเบเบธเปเบกเปเบเบง.
- regex:
# suppress forego colors
expression: .+nginx.+|.+[0m(?P<virtual_host>[a-z_.-]+) +(?P<nginxlog>.+)
source: logrow
เบเบงเบเปเบฎเบปเบฒเบฅเบถเบเบชเบฒเบเบเบฒเบเบเปเบญเบเบเปเปเบกเบนเบเบเปเบงเบเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเปเบเบฑเบเบเบปเบเบเบฐเบเบดเปเบฅเบฐเบเบถเบ nginx virtual host เปเบฅเบฐเปเบชเบฑเปเบเบเบฑเบเบเบถเบ nginx เบญเบญเบ.
- regex:
source: nginxlog
expression: ^(?P<ip>[w.]+) - (?P<user>[^ ]*) [(?P<timestamp>[^ ]+).*] "(?P<method>[^ ]*) (?P<request_url>[^ ]*) (?P<request_http_protocol>[^ ]*)" (?P<status>[d]+) (?P<bytes_out>[d]+) "(?P<http_referer>[^"]*)" "(?P<user_agent>[^"]*)"( "(?P<response_time>[d.]+)")?
เบงเบดเปเบเบฒเบฐเบเบฑเบเบเบถเบ nginx เปเบเบเปเบเปเบเบฒเบเบชเบฐเปเบเบเบเบปเบเบเบปเบเบเบฐเบเบด.
- regex:
source: request_url
expression: ^.+.(?P<static_type>jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$
- regex:
source: request_url
expression: ^/photo/(?P<photo>[^/?.]+).*$
- regex:
source: request_url
expression: ^/api/(?P<api_request>[^/?.]+).*$
เบกเบฒเบงเบดเปเบเบฒเบฐ request_url. เบเบฒเบเบเปเบฒเปเบเป regexp เบเบงเบเปเบฎเบปเบฒเบเปเบฒเบเบปเบเบเบธเบเบเบฐเบชเบปเบเบเบญเบเบเปเบฒเบฎเปเบญเบเบเป: เปเบเบทเปเบญเบเปเปเบกเบนเบเบชเบฐเบเบดเบ, เบฎเบนเบเบเบฒเบ, API เปเบฅเบฐเบเปเบฒเบเบปเบเบฅเบฐเบซเบฑเบเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบเปเบเปเบเบเบเบตเปเบชเบฐเบเบฑเบ.
- template:
source: request_type
template: "{{if .photo}}photo{{else if .static_type}}static{{else if .api_request}}api{{else}}other{{end}}"
เบเบฒเบเบเปเบฒเปเบเปเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบเปเบเบทเปเบญเบเปเบเปเบ Template, เบเบงเบเปเบฎเบปเบฒเบเบงเบเปเบเบดเปเบเบเปเบญเบเบเปเปเบกเบนเบเบเบตเปเบเบดเบเบเบฑเปเบเบขเบนเปเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบเปเบฅเบฐเบเปเบฒเบเบปเบเบเปเบฒเบเบตเปเบเปเบญเบเบเบฒเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเบฐเบซเบเบฒเบก request_type: photo, static, API. เบกเบญเบเปเบฒเบเบญเบฑเบเบญเบทเปเบเบเปเบฒเบกเบฑเบเบฅเบปเปเบกเปเบซเบฅเบง. request_type เบเบญเบเบเบตเปเบกเบตเบเบฐเปเบเบเบเบฒเบเบฎเปเบญเบเบเป.
- labels:
api_request:
virtual_host:
request_type:
status:
เบเบงเบเปเบฎเบปเบฒเบเบฑเปเบเบเปเบฒเบเบเบทเป api_request, virtual_host, request_type เปเบฅเบฐเบชเบฐเบเบฒเบเบฐ (เบชเบฐเบเบฒเบเบฐ HTTP) เปเบเบเบญเบตเบเปเบชเปเบชเบดเปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฑเบเบเบฒเบเปเบชเปเปเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบ.
- output:
source: nginx_log_row
เบเปเบฝเบเบเบปเบเบเบฐเบฅเบดเบ. เปเบเบเบฑเบเบเบธเบเบฑเบเบเบฑเบเบเบถเบ nginx เบเบตเปเบเบทเบเบญเบฐเบเบฒเปเบกเบเบฒเบเปเบเบเบเบตเปเบเบตเปเบชเบฐเบเบฑเบเบญเบญเบเปเบเบซเบฒ Loki.
เบซเบผเบฑเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ config เบเปเบฒเบเปเบเบดเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบซเบฑเบเปเบเปเบงเปเบฒเปเบเปเบฅเบฐเบฅเบฒเบเบเบฒเบเปเบเปเบเบทเบเบกเบญเบเบซเบกเบฒเบเบเปเบฒเบเบเบทเปเปเบเบเบญเบตเบเปเบชเปเบเปเปเบกเบนเบเบเบฒเบเบเบฑเบเบเบถเบ.
เบชเบดเปเบเบซเบเบถเปเบเบเบตเปเบเบงเบเบเบทเปเปเบกเปเบเบงเปเบฒเบเบฒเบเบเบถเบเปเบญเบปเบฒเบเปเบฒเบเบเบตเปเบกเบตเบเปเบฒเบเปเบฒเบเบงเบเบซเบฅเบฒเบ (cardinality) เบชเบฒเบกเบฒเบเบเปเบฒเบฅเบปเบเบขเปเบฒเบเบซเบผเบงเบเบซเบผเบฒเบ Loki. เบเบฑเปเบเปเบกเปเบ, เบเปเบฒเบเบเปเปเบเบงเบเปเบชเป, เบเบปเบงเบขเปเบฒเบ, user_id เปเบเบเบฑเบเบเบฐเบเบต. เบญเปเบฒเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเปเบฅเบทเปเบญเบเบเบตเปเปเบเบเบปเบเบเบงเบฒเบก "
เบเบฒเบเปเบเบดเปเบเปเบซเบฑเบเบเบญเบเบเบฑเบเบเบถเบ
Loki เบชเบฒเบกเบฒเบเปเบฎเบฑเบเบซเบเปเบฒเบเบตเปเปเบเบฑเบเปเบซเบฅเปเบเบเปเปเบกเบนเบเบชเปเบฒเบฅเบฑเบ Grafana graphs เปเบเบเปเบเป LogQL. เบเบธเบโเบเบฐโเบชเบปเบกโเบเบฑเบโเบเบฑเปเบโเบเปเปโเปเบโเบเบตเปโเปเบกเปเบโเบชเบฐโเบซเบเบฑเบโเบชเบฐโเบซเบเบนเบโ:
- เบญเบฑเบโเบเบฒ - เบเปเบฒโเบเบงเบโเบเบญเบโเบเบฒเบโเบเบฑเบโเบเบถเบโเบเปเปโเบงเบดโเบเบฒโเบเบตโ;
- เบเบฑเบโเปเบเบฑเบโเปเบฅโเบเบฐ โ เบเปเบฒโเบเบงเบโเบเบญเบโเบเบฒเบโเบเบฑเบโเบเบถเบโเปเบโเบฅเบฐโเบเบฑเบโเบเบตเปโเบเปเบฒโเบเบปเบโเปเบงเปโ.
เบเบญเบเบเบฒเบเบเบตเปเบเบฑเบเบกเบตเบซเบเปเบฒเบเบตเปเบฅเบงเบก Sum, Avg เปเบฅเบฐเบญเบทเปเบเป. เบเปเบฒเบเบชเบฒเบกเบฒเบเบชเปเบฒเบเบเบฒเบเบเบตเปเบเปเบญเบเบเปเบฒเบเบชเบฑเบเบชเบปเบ, เบเบปเบงเบขเปเบฒเบเปเบเบฑเปเบเบเบฒเบเบเบญเบเบเปเบฒเบเบงเบเบเปเปเบเบดเบเบเบฒเบ HTTP:
เปเบซเบผเปเบเบเปเปเบกเบนเบเบกเบฒเบเบเบฐเบเบฒเบ Loki เปเบกเปเบเบซเบผเบธเบเบฅเบปเบเบเบฒเบเบขเปเบฒเบเปเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบกเบทเปเบญเบเบฝเบเบเบฑเบเปเบซเบผเปเบเบเปเปเบกเบนเบ Prometheus (เบเบปเบงเบขเปเบฒเบ, เบเปเบฒเบเบเปเปเบชเบฒเบกเบฒเบเบเปเบฝเบเบเบงเบฒเบกเบซเบกเบฒเบ), เปเบเป Loki เบชเบฒเบกเบฒเบเปเบเบทเปเบญเบกเบเปเปเปเบเบฑเบเปเบซเบผเปเบเบเบตเปเบกเบตเบเบฐเปเบเบ Prometheus. เบเปเบฒโเบเบฐโเปเบเบปเปเบฒโเบเปเปโเปเบเปโเปเบเบงเปโเบฒโเบงเปเบฒโเบเบตเปโเปเบกเปเบโเบเบถเบโเบเบดโเบเปเบฒโเบเบตเปโเบเบฑเบโเบเบถเบโเปเบงเปโ, เปเบเปโเบเบฒเบโเบเบฑเบโเบชเบดเบโเปเบเบโเบเบฒเบโเบเบญเบโเบชเบฐโเบซเบเบญเบโเบเบญเบโเบเบนเปโเบเบฑเบโเบเบฐโเบเบฒโ"
เปเบเบตเปเบก Loki เปเบเบฑเบเปเบซเบผเปเบเบเปเปเบกเบนเบเบเบตเปเบกเบตเบเบฐเปเบเบ Prometheus เปเบฅเบฐเปเบเบตเปเบก URL / loki:
เปเบฅเบฐเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบชเปเบฒเบเบเบฒเบ, เบเบทเบเบฑเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเปเบฎเบฑเบเบงเบฝเบเบเบฑเบ metrics เบเบฒเบ Prometheus:
เบเปเบฒเบเบฐเปเบเบปเปเบฒเบเบดเบเบงเปเบฒเบเบงเบฒเบกเปเบเบเบเปเบฒเบเปเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบกเปเบเบเบปเปเบงเบเบฒเบงเปเบฅเบฐเบเบนเปเบเบฑเบเบเบฐเบเบฒเบเบฐเปเบเปเปเบเบชเบดเปเบเบเบตเปเปเบเบญเบฐเบเบฒเบเบปเบ.
เปเบกเบเบฃเบดเบ
Loki เปเบซเปเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบชเบฐเบเบฑเบเบเบปเบงเปเบฅเบเบเบปเบงเปเบฅเบเบเบฒเบเบเบฑเบเบเบถเบเปเบฅเบฐเบชเบปเปเบเบเบงเบเบกเบฑเบเปเบเบซเบฒ Prometheus. เบเบปเบงเบขเปเบฒเบ, เบเบฑเบเบเบถเบ nginx เบเบฐเบเบญเบเบกเบตเบเปเบฒเบเบงเบ bytes เบเปเปเบเบฒเบเบเบญเบเบชเบฐเบซเบเบญเบ, เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบ, เบเปเบงเบเบเบฒเบเบเบฑเบเปเบเปเบเบตเปเปเบเปเบเบญเบเบเบญเบเบฎเบนเบเปเบเบเบเบฑเบเบเบถเบเบกเบฒเบเบเบฐเบเบฒเบ, เปเบงเบฅเบฒเปเบเบฑเบเบงเบดเบเบฒเบเบตเบเบตเปเบกเบฑเบเปเบเปเปเบงเบฅเบฒเบเบญเบเบชเบฐเบซเบเบญเบ. เบเปเปเบกเบนเบเบเบตเปเบชเบฒเบกเบฒเบเบเบทเบเบชเบฐเบเบฑเบเปเบฅเบฐเบชเบปเปเบเปเบเบซเบฒ Prometheus.
เปเบเบตเปเบกเบเบฒเบเบชเปเบงเบเบญเบทเปเบเปเบชเป promtail.yml:
- match:
selector: '{request_type="api"}'
stages:
- metrics:
http_nginx_response_time:
type: Histogram
description: "response time ms"
source: response_time
config:
buckets: [0.010,0.050,0.100,0.200,0.500,1.0]
- match:
selector: '{request_type=~"static|photo"}'
stages:
- metrics:
http_nginx_response_bytes_sum:
type: Counter
description: "response bytes sum"
source: bytes_out
config:
action: add
http_nginx_response_bytes_count:
type: Counter
description: "response bytes count"
source: bytes_out
config:
action: inc
เบเบฒเบเปเบฅเบทเบญเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเบเบปเบเปเบฅเบฐเบเบฑเบเบเบธเบ metrics เปเบเบเบญเบตเบเปเบชเปเบเปเปเบกเบนเบเบเบฒเบเปเบเบเบเบตเปเบชเบฐเบเบฑเบ. metrics เปเบซเบผเบปเปเบฒเบเบตเปเบเปเปเปเบเปเบเบทเบเบชเบปเปเบเปเบเบซเบฒ Loki - เบเบงเบเบกเบฑเบเบเบฒเบเบปเบเบขเบนเปเปเบเบเบธเบเบชเบดเปเบเบชเบธเบเบเบญเบ Promtail /metrics. Prometheus เบเปเบญเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบฒเปเบเบทเปเบญเบฎเบฑเบเบเปเปเบกเบนเบเบเบตเปเปเบเปเบฎเบฑเบเปเบเบเบฑเปเบเบเบญเบเบเบตเป. เปเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเปเบเบดเบ, เบชเปเบฒเบฅเบฑเบ request_type=โapiโ เบเบงเบเปเบฎเบปเบฒเปเบเบฑเบเปเบญเบปเบฒ histogram metric. เบเปเบงเบเบเบฐเปเบเบเบเบญเบเบเบฒเบเบงเบฑเบเปเบเบเบเบตเปเบกเบฑเบเบชเบฐเบเบงเบเบเบตเปเบเบฐเปเบเปเบฎเบฑเบเบญเบฑเบเบเบฒเบชเปเบงเบเบฎเปเบญเบ. เบชเปเบฒเบฅเบฑเบ static เปเบฅเบฐเบฎเบนเบเบเบฒเบ, เบเบงเบเปเบฎเบปเบฒเปเบเบฑเบเบเปเบฒเบเบปเบเบฅเบงเบกเบเบญเบ bytes เปเบฅเบฐเบเปเบฒเบเบงเบเปเบเบงเบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฑเบ bytes เปเบเบทเปเบญเบเบดเบเปเบฅเปเบชเบฐเปเบฅเปเบ.
เบญเปเบฒเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบเบฒเบเบงเบฑเบเปเบเบ
เปเบเบตเบเบเบญเบเปเบ Promtail:
promtail:
image: grafana/promtail:1.4.1
container_name: monitoring.promtail
expose:
- 9080
ports:
- "9080:9080"
เปเบซเปเปเบเปเปเบเบงเปเบฒเบเบฒเบเบงเบฑเบเปเบเบเบเบตเปเบกเบตเบเปเบฒเบเปเบฒเบซเบเปเบฒ promtail_custom เบเบฒเบเบปเบ:
เบเบฒเบเบเบฑเปเบเบเปเบฒ Prometheus. เปเบเบตเปเบกเบงเบฝเบ promtail:
- job_name: 'promtail'
scrape_interval: 10s
static_configs:
- targets: ['promtail:9080']
เปเบฅเบฐเบเบงเบเปเบฎเบปเบฒเปเบเปเบกเปเบชเบฑเปเบเบชเบฐเปเบเบ:
เบงเบดเบเบตเบเบตเปเปเบเบปเปเบฒเบชเบฒเบกเบฒเบเบเบญเบเบซเบฒเบเบปเบงเบขเปเบฒเบ, เบชเบตเปเบเปเบฒเบเบฒเบกเบเบตเปเบเปเบฒเบเบตเปเบชเบธเบ. เบเบญเบเบเบฑเปเบเบเปเบฒเบเบเบฑเบเบชเบฒเบกเบฒเบเบเบฑเปเบเบเปเบฒเบเบฒเบเบเบดเบเบเบฒเบกเบชเปเบฒเบฅเบฑเบ metrics เปเบซเบผเบปเปเบฒเบเบตเป.
เบเบฒเบเบเบฑเบเบเบฐเปเบฒเบ
Loki เบชเบฒโเบกเบฒเบโเบขเบนเปโเปเบโเบฎเบนเบโเปเบเบโเบเบนเปโเบเบฝเบงโเบซเบผเบทโเปเบโเบฎเบนเบโเปเบเบ sharded (เบฎเบนเบโเปเบเบโเบเบฒเบโเบเบฐโเบซเบเบฒเบโเบญเบญเบโเบเบฒเบกโเบฅเบงเบโเบเบญเบโ)โ. เปเบเบเปเบฅเบฐเบเบตเบเบตเบชเบญเบ, เบกเบฑเบเบชเบฒเบกเบฒเบเบเบฑเบเบเบถเบเบเปเปเบกเบนเบเปเบชเปเปเบกเบ, เปเบฅเบฐเบเบดเปเบเบชเปเบงเบเปเบฅเบฐเบเบฑเบเบชเบฐเบเบตเบเบทเบเปเบเบฑเบเปเบงเปเปเบเบเบเปเบฒเบเบซเบฒเบ. เบฎเบธเปเบ 1.5 เปเบเบฐเบเปเบฒเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบขเบนเปเปเบเบชเบฐเบเบฒเบเบเบตเปเบเบฝเบง, เปเบเปเบกเบฑเบเบเบฑเบเบเปเปเบเบฑเบเปเบเบฐเบเปเบฒเปเบซเปเปเบเปเปเบเบเบฒเบเบเบฐเบฅเบดเบ.
Chunks เบชเบฒเบกเบฒเบเบเบทเบเปเบเบฑเบเปเบงเปเปเบเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบตเปเปเบเบปเปเบฒเบเบฑเบเปเบเปเบเบฑเบ S3, เปเบฅเบฐเบเบฒเบเบเปเปเบกเบนเบเบเบตเปเบชเบฒเบกเบฒเบเบเบฐเบซเบเบฒเบเปเบเปเบเบฒเบกเบฅเบงเบเบเบญเบเบชเบฒเบกเบฒเบเบเปเบฒเปเบเปเปเบเบทเปเบญเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฑเบเบชเบฐเบเบต: Cassandra, BigTable เบซเบผเบท DynamoDB. เบเบฒเบเบชเปเบงเบเบญเบทเปเบเปเบเบญเบ Loki - เบเบนเปเบเบฑเบเบเปเบฒเบซเบเปเบฒเบ (เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบฝเบ) เปเบฅเบฐ Querier (เบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเบญเบเบเบฒเบก) - เปเบกเปเบเบเปเปเบกเบตเบฅเบฑเบเปเบฅเบฐเบเบฑเบเบเบฐเบซเบเบฒเบเบเบฒเบกเปเบเบงเบเบญเบ.
เปเบเบเบญเบเบเบฐเบเบธเบก DevOpsDays Vancouver 2019, เบซเบเบถเปเบเปเบเบเบนเปเปเบเบปเปเบฒเบฎเปเบงเบก Callum Styan เปเบเปเบเบฐเบเบฒเบเบงเปเบฒเบเปเบงเบ Loki เปเบเบเบเบฒเบเบเบญเบเบฅเบฒเบงเบกเบตเปเบกเปเบเปเบญเบ petabytes เบเบตเปเบกเบตเบเบฑเบเบเบฐเบเบตเบซเบเปเบญเบเบเบงเปเบฒ 1% เบเบญเบเบเบฐเบซเบเบฒเบเบเบฑเบเบซเบกเบปเบ: "
เบเบฒเบเบเบฝเบเบเบฝเบ Loki เปเบฅเบฐ ELK
เบเบฐเบซเบเบฒเบเบเบฑเบเบเบฐเบเบต
เปเบเบทเปเบญเบเบปเบเบชเบญเบเบเบฐเบซเบเบฒเบเบเบฑเบเบเบฐเบเบตเบเบปเบเปเบเปเบฎเบฑเบ, เบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเปเปเบญเบปเบฒเบเบฑเบเบเบถเบเบเบฒเบเบเบฑเบ nginx เบเบตเปเบเปเปเบเปเบฒเบเปเบเบดเบเปเบเปเบเบทเบเบเบฑเปเบเบเปเบฒ. เปเบเบฅเปเบเบฑเบเบเบถเบเบกเบต 406 เปเบเบงเบเบตเปเบกเบตเบเบฐเบฅเบดเบกเบฒเบเบเบฑเบเปเบปเบ 624 MB. เบเบฑเบเบเบถเบเปเบเปเบเบทเบเบชเปเบฒเบเบเบถเปเบเบเบฒเบเปเบเบซเบเบถเปเบเบเบปเปเบงเปเบกเบ, เบเบฐเบกเบฒเบ 109 เบฅเบฒเบเบเบฒเบเบเปเปเบงเบดเบเบฒเบเบต.
เบเบปเบงเบขเปเบฒเบเบเบญเบเบชเบญเบเปเบเบงเบเบฒเบเบเบฑเบเบเบถเบ:
เปเบกเบทเปเบญเบเบทเบเบเบฑเบเบชเบฐเบเบตเปเบเบ ELK, เบเบตเปเปเบฎเบฑเบเปเบซเปเบเบฐเบซเบเบฒเบเบเบฑเบเบเบฐเบเบต 30,3 MB:
เปเบเบเปเบฅเบฐเบเบตเบเบญเบ Loki, เบเบตเปเปเบฎเบฑเบเปเบซเปเบเบฑเบเบเบฐเบเบตเบเบฐเบกเบฒเบ 128 KB เปเบฅเบฐเบเบฐเบกเบฒเบ 3,8 MB เบเบญเบเบเปเปเบกเบนเบเปเบ chunks. เบกเบฑเบเปเบเบฑเบเบกเบนเบเบเปเบฒเบเบตเปเบชเบฑเบเปเบเบเบงเปเบฒเบเบฑเบเบเบถเบเปเบเปเบเบทเบเบชเปเบฒเบเบเบทเปเบเปเบเบเบเบญเบกเปเบฅเบฐเบเปเปเบกเบตเบเปเปเบกเบนเบเบเปเบฒเบเบงเบเบซเบฅเบฒเบ. gzip เบเปเบฒเบเปเปเบเบเบฑเบเบเบถเบ Docker JSON เบเบปเปเบเบชเบฐเบเบฑเบเบเบตเปเบกเบตเบเปเปเบกเบนเบเปเบฎเบฑเบเปเบซเปเบเบฒเบเบเบตเบเบญเบฑเบ 95,4%, เปเบฅเบฐเบเปเบฒเบเบถเบเปเบเบดเบเบเบงเบฒเบกเบเบดเบเบเบตเปเบงเปเบฒเบเบฝเบเปเบเปเบเบฑเบเบเบถเบ nginx เบเบตเปเบชเบฐเบญเบฒเบเบเบทเบเบชเบปเปเบเปเบเบซเบฒ Loki เปเบญเบ, เบเบฒเบเบเบตเบเบญเบฑเบเปเบเบดเบ 4 MB เปเบกเปเบเปเบเบปเปเบฒเปเบเปเบเป. เบเปเบฒเบเบงเบเบเบฑเบเบซเบกเบปเบเบเบญเบเบกเบนเบเบเปเบฒเบเบตเปเปเบเบฑเบเปเบญเบเบฐเบฅเบฑเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบ Loki เปเบกเปเบ 35, เปเบเบดเปเบเบญเบฐเบเบดเบเบฒเบเปเบเบดเบเบเบฐเบซเบเบฒเบเบเบฐเบซเบเบฒเบเบเปเบญเบเบเบญเบเบเบฑเบเบเบฐเบเบต. เบชเปเบฒเบฅเบฑเบ ELK เบเบฑเบเบเบถเบเบเบฑเบเบเบทเบเบฅเบถเบเบฅเปเบฒเบ. เบเบฑเปเบเบเบฑเปเบ, Loki เปเบเปเบเบตเบเบญเบฑเบเบเปเปเบกเบนเบเบเบปเปเบเบชเบฐเบเบฑเบ 96%, เปเบฅเบฐ ELK 70%.
เบเบฒเบเบเปเบฅเบดเปเบเบเบเบงเบฒเบกเบเบปเบเบเปเบฒ
เบเปเบฒเบเบงเบเปเบฎเบปเบฒเบเบฝเบเบเบฝเบ Prometheus เปเบฅเบฐ ELK stack เบเบฑเบเบซเบกเบปเบ, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ Loki "เบเบดเบ" เบซเบผเบฒเบเปเบเบทเปเบญเบซเบเปเบญเบ. เบกเบฑเบเปเบเบฑเบเบเบตเปเบเบฑเบเปเบเบเบงเปเบฒเบเบฒเบเบเปเบฅเบดเบเบฒเบ Go เปเบเปเบซเบเปเบญเบเบเบงเปเบฒเบเบฒเบเบเปเบฅเบดเบเบฒเบ Java, เปเบฅเบฐเบเบฒเบเบเบฝเบเบเบฝเบเบเบฐเบซเบเบฒเบเบเบญเบ JVM Heap Elasticsearch เปเบฅเบฐเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบตเปเบเบฑเบเบชเบฑเบเบชเปเบฒเบฅเบฑเบ Loki เปเบกเปเบเบเปเปเบเบทเบเบเปเบญเบ, เปเบเปเบขเปเบฒเบเปเบเบเปเปเบเบฒเบกเบกเบฑเบเปเบเบฑเบเบกเบนเบเบเปเบฒเบเบตเปเบชเบฑเบเปเบเบเบงเปเบฒ Loki เปเบเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบซเบเปเบญเบเบฅเบปเบ. เบเบฐเปเบซเบเบเบเบญเบ CPU เบเบญเบเบกเบฑเบเบเปเปเบเบฐเปเบเปเบ, เปเบเปเบกเบฑเบเบเบฑเบเบกเบตเบขเบนเป.
เบเบงเบฒเบกเปเบง
Loki โdevursโ เบเบฑเบเบเบถเบเปเบงเบเบถเปเบ. เบเบงเบฒเบกเปเบงเปเบกเปเบเบเบถเปเบเบเบฑเบเบเบฑเบเปเบเบเปเบฒเบเบงเบเบซเบผเบฒเบ - เบเบฐเปเบเบเบเบญเบเบเบฑเบเบเบถเบ, เบงเบดเบเบตเบเบตเปเบเบงเบเปเบฎเบปเบฒเบกเบตเบเบงเบฒเบกเบเบฑเบเบเปเบญเบเปเบเบเบฒเบเบงเบดเปเบเบฒเบฐเบเบงเบเบกเบฑเบ, เปเบเบทเบญเบเปเบฒเบ, เปเบเปเบ, เปเบฅเบฐเบญเบทเปเบเป - เปเบเปเปเบเปเบเบญเบเปเบกเปเบเบชเบนเบเบเบงเปเบฒ ELK (เปเบเบเบฒเบเบเบปเบเบชเบญเบเบเบญเบเบเปเบญเบ - เบเบฐเบกเบฒเบเบชเบญเบเปเบเบปเปเบฒ). เบเบตเปเปเบกเปเบเบญเบฐเบเบดเบเบฒเบเปเบเบเบเบงเบฒเบกเบเบดเบเบเบตเปเบงเปเบฒ Loki เปเบญเบปเบฒเบเปเปเบกเบนเบเบซเบเปเบญเบเบฅเบปเบเปเบเบเบฑเบเบเบฐเบเบตเปเบฅเบฐ, เบเบฒเบกเบเบฑเปเบ, เปเบเปเปเบงเบฅเบฒเบซเบเปเบญเบเบฅเบปเบเปเบเบเบฑเบเบชเบฐเบเบต. เบเปเบงเบเบเบงเบฒเบกเปเบงเปเบเบเบฒเบเบเบปเปเบเบซเบฒ, เบชเบฐเบเบฒเบเบฐเบเบฒเบเปเบกเปเบเบเบปเบเบเบฑเบเบเปเบฒเบก: Loki เบเปเบฒเบฅเบปเบเบขเปเบฒเบเปเบซเบฑเบเปเบเปเบเบฑเบเบเปเบฝเบงเบเบฑเบเบเปเปเบกเบนเบเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบเปเบซเบเปเบเบงเปเบฒเบซเบผเบฒเบ gigabytes, เปเบเบเบฐเบเบฐเบเบตเปเบเบงเบฒเบกเปเบงเบเบปเปเบเบซเบฒเบเบญเบ ELK เบเปเปเบเบถเปเบเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบเบเปเปเบกเบนเบ.
เบเบญเบเบซเบฒเบเปเบงเบเบเบฑเบเบเบถเบ
Loki เปเบกเปเบเบเปเปเบฒเบเบงเปเบฒ ELK เบขเปเบฒเบเบซเบผเบงเบเบซเบผเบฒเบเปเบเปเบเปเบเบญเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบเบญเบเบซเบฒเบเบฑเบเบเบถเบ. Grep เบเบฑเบเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเบเบปเบเบเบฐเบเบดเปเบกเปเบเบกเบตเบญเปเบฒเบเบฒเบ, เปเบเปเบงเปเบฒเบกเบฑเบเปเบกเปเบ inferior เบเบฑเบเบเบฒเบเบเปเปเบกเบนเบ mature. เบเบฒเบเบเบฒเบเบเบฒเบเบชเบญเบเบเบฒเบกเบฅเบฐเบเบฑเบ, เบเบฒเบเบฅเบงเบเบฅเบงเบกเบเบฝเบเปเบเปเปเบเบเบเปเบฒเบเบเบทเป, เบเบงเบฒเบกเบเปเปเบชเบฒเบกเบฒเบเบเบปเปเบเบซเบฒเปเบเบเบเปเปเบกเบตเบเปเบฒเบเบเบทเป - เบเบฑเบเบซเบกเบปเบเบเบตเปเบเปเบฒเบเบฑเบเบเบงเบเปเบฎเบปเบฒเปเบเบเบฒเบเบเบปเปเบเบซเบฒเบเปเปเบกเบนเบเบเบตเปเบซเบเปเบฒเบชเบปเบเปเบเปเบ Loki. เบเบตเปเบเปเปเปเบเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเปเปเบกเบตเบซเบเบฑเบเบชเบฒเบกเบฒเบเบเบปเบเปเบซเบฑเบเปเบเปเปเบเบเปเบเป Loki, เปเบเปเบกเบฑเบเบเปเบฒเบเบปเบเบเบฒเบเปเบซเบผเปเบเบปเปเบฒเบเบญเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบเปเบกเปเบเปเบญเบเปเบเปเบงเบฅเบฒเบเบตเปเบเปเบฒเบเบเบปเบเบเบฑเบเบซเบฒเบเปเบฒเบญเบดเบเปเบเบเบฒเบเบฐเบฅเบฒเบ Prometheus, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเปเบเปเบเปเบฒเบเปเบซเบผเบปเปเบฒเบเบตเปเปเบเบทเปเบญเบเบญเบเบซเบฒเบชเบดเปเบเบเบตเปเปเบเบตเบเบเบถเปเบเปเบเบเบฑเบเบเบถเบ.
เบเบฒเบเปเบเปเบเบญเบ
เบเปเบญเบเบญเบทเปเบ เปเบปเบ, เบกเบฑเบเบเบฒเบก (เบเปเบญเบฐเปเบ, เบเบปเบเบเปเปเปเบเป). Grafana เบกเบตเบเบฒเบเปเบเปเบเบญเบเบเบตเปเปเบเบดเปเบเบเบฒเบก, เปเบเป Kibana เบกเบตเบซเบผเบฒเบเบฅเบฑเบเบชเบฐเบเบฐเบเบตเปเบญเบธเบเบปเบกเบชเบปเบกเบเบนเบ.
เบเปเปเบเบตเปเบฅเบฐเบเปเปเปเบชเบเบเบญเบ Loki
เบซเบเบถเปเบเปเบเบเปเปเปเบเปเบเบฝเบเปเบกเปเบเบงเปเบฒ Loki เบเบฐเบชเบปเบกเบเบฐเบชเบฒเบเบเบฑเบ Prometheus, เบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฑเบ metrics เปเบฅเบฐเบเบฒเบเปเบเปเบเปเบเบทเบญเบเบญเบญเบเบเบฒเบเบเปเบญเบ. เบกเบฑเบเปเบเบฑเบเบเบฒเบเบชเบฐเบเบงเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเบเบฑเบเบเบถเบเปเบฅเบฐเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบซเปเปเบเบปเบฒเปเบเบปเปเบฒเบเบฒเบ Kubernetes Pods, เบเปเบญเบเบงเปเบฒเบกเบฑเบเบกเบตเบเบฒเบเบเบปเปเบเบเบปเบเบเบฒเบเบเปเบฅเบดเบเบฒเบเบเบตเปเบชเบทเบเบเบญเบเบกเบฒเบเบฒเบ Prometheus เปเบฅเบฐเบเบดเบเบเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ.
เบเปเปเปเบชเบเปเบกเปเบเปเบญเบเบฐเบชเบฒเบเบเบตเปเบญเปเบญเบเปเบญ. เบเบฒเบเบชเบดเปเบเบเบตเป, เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบปเบเบเบปเบงเบขเปเบฒเบ, เบฅเบฑเบเบชเบฐเบเบฐเปเบฅเบฐเบเบงเบฒเบกเบชเบฒเบกเบฒเบเบเบญเบ Promtail, เบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเปเบเบปเปเบเบเบปเบเบเบฝเบเปเบเปเปเบเบเบฐเบเบงเบเบเบฒเบเบเบญเบเบเบฒเบเบชเบถเบเบชเบฒเบฅเบฐเบซเบฑเบ, เปเบเบเบเบตเบกเบฑเบเปเบเบฑเบ open-source. เบเปเปเปเบชเบเบญเบตเบเบญเบฑเบเปเบถเปเบเปเบกเปเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบงเบดเปเบเบฒเบฐเบเบตเปเบญเปเบญเบเปเบญ. เบเบปเบงเบขเปเบฒเบ, Loki เบเปเปเบชเบฒเบกเบฒเบเบงเบดเปเบเบฒเบฐเบเบฑเบเบเบถเบเบซเบผเบฒเบเปเบเบงเปเบเป. เบเปเปเปเบชเบเบญเบตเบเบญเบฑเบเปเบถเปเบเปเบกเปเบเบงเปเบฒ Loki เปเบเบฑเบเปเบเบฑเบเปเบเปเบฅเบเบตเบเบตเปเบเปเบญเบเบเปเบฒเบเบญเปเบญเบ (เบเบฒเบเบเปเบญเบ 1.0 เปเบกเปเบเปเบเปเบเบทเบญเบเบเบฐเบเบดเบ 2019).
เบชเบฐเบซเบฅเบธเบ
Loki เปเบเบฑเบเปเบเบเปเบเปเบฅเบเบตเบเบตเปเบซเบเปเบฒเบชเบปเบเปเบ 100% เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบเปเบเบเบเบฒเบเบเบฐเบซเบเบฒเบเบเปเบญเบเปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบฒเบ, เบเปเบงเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเปเปเบเบเบฑเบเบซเบฒเบเปเบฒเบเบงเบเบซเบผเบฒเบเบเบญเบเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเบฑเบเบเบถเบ, เบเบฒเบเบเบปเปเบเบซเบฒเบเบฑเบเบเบถเบ, เบเบฒเบเบเบดเบเบเบฒเบกเปเบฅเบฐเบเบฒเบเบงเบดเปเบเบฒเบฐเบเบฑเบเบเบถเบ.
เบเบงเบเปเบฎเบปเบฒเบเปเปเปเบเป Loki เปเบ Badoo เปเบเบฒเบฐเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบต stack ELK เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบเบเบงเบเปเบฎเบปเบฒเปเบฅเบฐเบกเบฑเบเปเบเปเบเบทเบ overgrown เบเบฑเบเบงเบดเบเบตเปเบเปเปเบ custom เบเปเบฒเบเปเปเบเปเบฅเบเบฐเบเบตเบเบตเปเบเปเบฒเบเบกเบฒ. เบชเปเบฒเบฅเบฑเบเบเบงเบเปเบฎเบปเบฒ, เบเบฒเบเบชเบฐเบเบธเบเปเบกเปเบเบเบฒเบเบเบญเบเบซเบฒเบเปเบฒเบเปเบกเปเบเปเบญเบ. เบเปเบงเบเบเบฑเบเบเบถเบเปเบเบทเบญเบ 100 GB เบเปเปเบกเบทเป, เบกเบฑเบเปเบเบฑเบเบชเบดเปเบเบชเปเบฒเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบงเบเปเบฎเบปเบฒเบเบตเปเบเบฐเบชเบฒเบกเบฒเบเบเบญเบเบซเบฒเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเปเบฅเบฐเปเบเบตเปเบกเปเบเบตเบกเปเบฅเบฑเบเบเปเบญเบเปเบฅเบฐเปเบฎเบฑเบเบกเบฑเบเปเบเปเปเบง. เบชเปเบฒเบฅเบฑเบเบเบฒเบเบฐเบฅเบฒเบเปเบฅเบฐเบเบฒเบเบเบดเบเบเบฒเบก, เบเบงเบเปเบฎเบปเบฒเปเบเปเบงเบดเบเบตเปเบเปเปเบเบญเบทเปเบเปเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบเบเบงเบฒเบกเบเปเบญเบเบเบฒเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบฅเบฐเบเบฐเบชเบปเบกเบเบฐเบชเบฒเบเบเบฑเบเบเบฑเบเปเบฅเบฐเบเบฑเบ. Loki stack เบกเบตเบเบปเบเบเบฐเปเบซเบเบเบเบตเปเปเบซเบฑเบเปเบเปเบเบฑเบเปเบเบ, เปเบเปเบกเบฑเบเบเบฐเบเปเปเปเบซเปเบเบงเบเปเบฎเบปเบฒเบซเบผเบฒเบเบเปเบงเบฒเบเบตเปเบเบงเบเปเบฎเบปเบฒเบกเบตเบขเบนเปเปเบฅเปเบง, เปเบฅเบฐเบเบปเบเบเบฐเปเบซเบเบเบเบญเบเบกเบฑเบเปเบเปเบเบญเบเบเบฐเบเปเปเปเบเบตเบเบเปเบฒเปเบเปเบเปเบฒเบเบเบญเบเบเบฒเบเปเบเบทเปเบญเบเบเปเบฒเบ.
เปเบฅเบฐเปเบเบดเบเปเบกเปเบเบงเปเบฒเบซเบผเบฑเบเบเบฒเบเบเบฒเบเบเบปเปเบเบเบงเปเบฒเบกเบฑเบเปเบเปเบเบฒเบเปเบเบฑเบเบเบตเปเบเบฑเบเปเบเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเปเบชเบฒเบกเบฒเบเปเบเป Loki, เบเบงเบเปเบฎเบปเบฒเบซเบงเบฑเบเบงเปเบฒเบเปเปเบเบงเบฒเบกเบเบตเปเบเบฐเบเปเบงเบเปเบเบปเปเบฒเปเบเบเบฒเบเปเบฅเบทเบญเบเบเบญเบเปเบเบปเปเบฒ.
repository เบเบตเปเบกเบตเบฅเบฐเบซเบฑเบเบเบตเปเปเบเปเปเบเบเบปเบเบเบงเบฒเบกเปเบกเปเบเบเบฑเปเบเบขเบนเป
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com