首页/云/可观测性速查/Grok 解析非结构化日志
本包目录(282 条)
监控体系与方法40 条Prometheus 与采集64 条Grafana 与看板53 条
日志平台52 条
链路追踪23 条告警与响应50 条

Grok 解析非结构化日志

grok 用模式库把文本拆成字段:%{TIMESTAMP_ISO8601:ts} 这类“模式:字段名”的写法即取即用,自定义模式可放 patterns 目录。

可观测性速查云更新于 2026-10-12

解析 Nginx 访问日志

解析 Nginx 访问日志
filter {
  grok {
    match => {
      "message" => "%{IPORHOST:clientip} - - \[%{HTTPDATE:time}\] \"%{WORD:method} %{URIPATHPARAM:request} HTTP/%{NUMBER:ver}\" %{NUMBER:status:int} %{NUMBER:bytes:int}"
    }
    tag_on_failure => ["_grokparsefailure"]
  }
}
先对着开发者工具(Grok Debugger)验证再上线;解析失败保留原 message 并打标签,避免数据丢失。

易错点

  • 正则贪婪与转义问题让解析时对时错,固定样例集回归验证
  • 对高流量日志跑复杂 grok 会抬高 CPU,必要时先做条件判断再解析

数据来源与参考

  • Elastic 官方文档 · Grok filter
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌