日志系统最佳实践:我如何用 ELK + Filebeat 做“秒级可观测”

运维与后端工程师离不开日志系统,我曾构建过一套完整的日志链路:

复制代码
APP → Filebeat → Kafka → Logstash → ES → Kibana

秒级可查,成本不高。


一、为什么要独立日志系统?

  • Docker 日志丢失风险
  • 容器自动重启导致日志被覆盖
  • 多实例下无法查看全量日志
  • grep 查日志效率低

二、Filebeat 超好用

配置示例:

lua 复制代码
filebeat.inputs:
  - type: log
    paths:
      - /var/log/service/*.log
output.kafka:
  hosts: ["kafka01:9092"]
  topic: "service-log"

自动收集日志 → 推到 Kafka。


三、Logstash 处理与过滤

ini 复制代码
filter {
  json {
    source => "message"
  }
  date {
    match => ["timestamp", "ISO8601"]
  }
}

把日志转成结构化 JSON。


四、ES 查询灵活强大

常见查询:

json 复制代码
{ "query": { "match": { "level": "error" } } }

可以基于:

  • traceId
  • userId
  • serviceName
  • level
  • message

实现高级搜索。


五、最终效果

  • 日均日志 50GB
  • 秒级查询
  • 可视化搜索报错
  • 结合告警系统非常高效

六、总结

日志系统是后端系统稳定性的基石:

  • Filebeat 轻量
  • Kafka 解耦
  • ES 高性能查询
  • Kibana 可视化强大

如果你要搭可观测性系统,从日志开始最简单、收益最大。

相关推荐
AI人工智能+电脑小能手10 分钟前
【大白话说Java面试题】【Java基础篇】第20题:HashMap在计算index的时候,为什么要对数组长度做减1操作
java·开发语言·数据结构·后端·面试·哈希算法·hash-index
阿丰资源1 小时前
基于Spring Boot的新闻推荐系统(源码+数据库+文档)
数据库·spring boot·后端
Gopher_HBo1 小时前
Disruptor消费源码分析
后端
千寻girling2 小时前
滑动窗口刷了快一个月(26天)了 , 还没有刷完. | 含(操作系统学什么的Java 后端)
java·开发语言·javascript·c++·人工智能·后端·python
thatway19892 小时前
太奶也能看懂的 M100 芯片故事
后端
木雷坞2 小时前
K8s GPU 冷启动:把镜像预热从发布里拆出来
后端
渐儿2 小时前
Dify 插件机制详解
后端
渐儿2 小时前
Spring Boot 异步并发实现原理详解
后端
来一斤小鲜肉2 小时前
Spring AI 多模态能力全景
后端·aigc
张立立2 小时前
震惊!用Python每天早上8点,我准时给女神发早安,只因这个脚本…
后端·python