从外部包或文件获取 log4j2 日志模式格式
我目前正在将现有的 logback
日志配置迁移到 log4j2
。 其中日志记录格式是从外部文件
指定的。
在旧的 logback 系统中..
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="com.abc.logging.MyJsonLayout">
<pattern>%msg</pattern>
</layout>
</encoder>
</appender>
在
标记中,com.abc.logging.MyJsonLayout
点到指定日志记录格式的包。上面的 logback
配置正在记录到该文件中指定的格式,没有任何问题。
我需要的是从同一个包中应用相同的模式来进行 log4j2 配置。 我阅读了有关此内容的 Apache 文档,但找不到任何有用的信息。
那么有没有一种方法可以在 log4j2.xml
中将这个包的路径指定为模式格式?
我目前正在使用如下所示的控制台标签,而没有 log4j2.xml
中的外部模式文件。
<Console name="stdout" target="SYSTEM_OUT">
<PatternLayout>
<pattern>{"level":"%p","loggerName":"%c"}\n</pattern>
</PatternLayout>
</Console>
I'm currently migrating an existing logback
logging configration to log4j2
.
In there the logging format is specified from an external file
.
In the older logback system..
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="com.abc.logging.MyJsonLayout">
<pattern>%msg</pattern>
</layout>
</encoder>
</appender>
Where in the <layout class="com.abc.logging.MyJsonLayout">
tag, com.abc.logging.MyJsonLayout
points to the package where the format of logging is specified. And above logback
configuration is logging to the format specified in that file without any issue.
What I need is to apply the same pattern from the same package for log4j2
configuration.
I read the Apache docs regarding about this and couldn't find any helpful information.
So is there a way that I can specify the path of this package as a pattern format in a the log4j2.xml
?
I'm currently using the console tag like below without the external pattern file in log4j2.xml
.
<Console name="stdout" target="SYSTEM_OUT">
<PatternLayout>
<pattern>{"level":"%p","loggerName":"%c"}\n</pattern>
</PatternLayout>
</Console>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论