多行日志
多行日志
背景: java程序一条日志常常会打印多行,在使用filebeat 收集日志时一条日志会分割成多个,不利于问题排查。
[beat-logstash-some-name-832-2015.11.28] IndexNotFoundException[no such index]
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver$WildcardExpressionResolver.resolve(IndexNameExpressionResolver.java:566)
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver.concreteIndices(IndexNameExpressionResolver.java:133)
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver.concreteIndices(IndexNameExpressionResolver.java:77)
at org.elasticsearch.action.admin.indices.delete.TransportDeleteIndexAction.checkBlock(TransportDeleteIndexAction.java:75)
multiline
当input 类型为filestream
时书写语法:
filebeat.inputs: - type: filestream parsers: - multiline: type: pattern pattern: '^\[' negate: true match: after
当input 类型为log
时书写语法:
filebeat.inputs: - type: log multiline.type: pattern multiline.pattern: '^\[' multiline.negate: true multiline.match: after
参数介绍:
multiline.type
定义多行聚合的方式。可选值:pattern
count
,count 用于指定多少行聚合为一行。multiline.pattern
定义模式匹配的正则表达式multiline.negate
是否为否定模式,即对multiline.pattern
匹配到的内容是使用黑名单还是白名单。默认falsemultiline.match
指定匹配到的内容是如何尽心拼接。可选值:after
before
negate
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏