针对Java配置的日志格式如下:
<property name="log_pattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %mm{sessionId} %-5level %logger{50} [%file:%line] - %P{traceId} - %msg%n"/>
%d表示日期,
%thread表示线程名,
%-5level:级别从左显示5个字符宽度
%msg:日志消息,
%logger{50}包名缩写,
%n是换行符
转换为grok解析表达式:
(?<logtimestamp>%{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{TIME}) %{WORD:contextName} \[%{DATA:thread}\] %{DATA:mdcSessionId} %{LOGLEVEL:logLevel} %{DATA:package} \[%{DATA:fileLine}\] - %{DATA:traceId} - %{DATA:msg}$
解析后效果:
文章来源:https://www.toymoban.com/news/detail-534845.html
spring boot 默认格式解析:文章来源地址https://www.toymoban.com/news/detail-534845.html
(?<logtimestamp>%{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{TIME})
到了这里,关于logstash grok解析Java log实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!