首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Spring5和JAMon中使用log4j2

在Spring5和JAMon中使用log4j2
EN

Stack Overflow用户
提问于 2019-08-06 19:35:18
回答 2查看 164关注 0票数 2

我正在对一个应用程序进行升级,该应用程序目前正在将Spring从4.3迁移到5.2 (是的,正在尝试LTS发布的里程碑),它要求我们迁移到log4j2。

到目前为止,我们遇到的问题是,我似乎找不到任何关于如何使JAMon与这种新配置一起工作的东西。这个附录失败了,这条消息是:

代码语言:javascript
复制
java.lang.NoSuchMethodException: org.apache.log4j.api.LoggingEvent.<init>(Ljava/lang/String;Lorg/apache/log4j/Category;Jorg/apache/log4j/Priority...)

而且,在这个项目中,我们最后一次从维护人员那里听到的消息是 (看起来当前版本不支持更改log4j2的附加程序)。

例如,在log4j.jsp中,它导入

代码语言:javascript
复制
<%@ page import="com.jamonapi.MonitorFactory, org.apache.log4j.Logger, org.apache.log4j.PropertyConfigurator, java.util.Properties" %>

源代码中的JAMonAppender类表示

代码语言:javascript
复制
public class JAMonAppender extends AppenderSkeleton {
    /* Prefix for this classes jamon monitor labels */
    private final String PREFIX = "com.jamonapi.log4j.JAMonAppender.";

    // any of these poperties can be overridden via log4j configurators.
    private int bufferSize = 100;

    private String units = "log4j"; // units in jamon montiors

因此,它似乎是硬连接到你的老log4j。有人成功让它成功了吗?

EN

回答 2

Stack Overflow用户

发布于 2019-08-08 03:25:38

我想你上面有个错误。这个类应该是org.apache.log4j.spi.LoggingEvent。Log4j2和SLF4J都为Log4j 1.x提供了适配器,但它们都没有包含一个LoggingEvent构造函数,更不用说与您丢失的签名匹配的构造函数了。但我真的不认为这是必要的(从来没有人要求过)。除非以编程方式实例化JAMonAppender,否则为Log4j创建JAMonAppender将相当简单。尽管如此,JAMon上一次更新是在4年前,所以如果接受公关,我会感到惊讶。

有一件事我要说清楚-- JAMonAppender将只与log4j 1.2一起进行日志记录。如果您的目标是使用Log4j 2,则需要重写附录。

票数 0
EN

Stack Overflow用户

发布于 2020-02-17 03:07:38

请注意,我是jamonapi的创造者。尽管如此,我已经有一段时间没有进行更新了,而且我们可以添加一个log4j 2附录,如果有人想要的话。我知道这是个老职位,但让我知道你的想法.

编辑:截止到Jamon2.82,JAMonAppender已经被更新为使用log4j 2。对于log4j,它提供了查看每个级别被调用多少次(错误、信息)的能力,并允许您通过web应用程序“跟踪”日志。它还监视应用程序的许多其他方面。以下是log4j2 - jamonappender.html的链接

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57382881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档