日志系统最佳实践:我如何用 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 可视化强大

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

相关推荐
十年Java程序媛11 小时前
Java枚举Enum完整教程|替代静态常量,开发与面试要点
java·开发语言·spring boot·后端·面试
我是人✓11 小时前
SpringBoot静态资源映射揭秘
java·spring boot·后端
全栈弄潮儿11 小时前
Python实战第7期:字典与集合
后端·python·编程语言
码事漫谈11 小时前
DeepSeek 又更新!但怎么有个分数往下掉?
后端
吃饱了得干活11 小时前
用 PageHelper 同步数据到 ES:能跑,但这几个坑得先知道
后端·elasticsearch
金銀銅鐵12 小时前
[Java] 借助GUI展示class文件的内容(v1.0版本)
jvm·后端·ai编程
皮皮林55112 小时前
Java 导出 Excel 利器:JXLS
后端
吃饱了得干活12 小时前
从 LIKE 查询到毫秒级搜索:Elasticsearch 核心原理与 Java 实战
后端·elasticsearch
tianbin91114 小时前
大模型训练与推理:API中转站在企业AI落地中的隐藏价值
大数据·后端·ai