Java 使用带弹簧5和log4j2的JAMon 我正处于一个升级的过程中,目前正在将Spring核心从4.3移动到5.2(是的,尝试里程碑,期待LTS发布),它要求我们移动到Log4j2。
到目前为止,我们遇到的问题是,我似乎找不到任何关于如何使JAMon使用这种新配置的信息。追加器失败,并显示以下消息:Java 使用带弹簧5和log4j2的JAMon 我正处于一个升级的过程中,目前正在将Spring核心从4.3移动到5.2(是的,尝试里程碑,期待LTS发布),它要求我们移动到Log4j2。,java,spring,log4j2,jamon,Java,Spring,Log4j2,Jamon,到目前为止,我们遇到的问题是,我似乎找不到任何关于如何使JAMon使用这种新配置的信息。追加器失败,并显示以下消息: java.lang.NoSuchMethodException: org.apache.log4j.api.LoggingEvent.<init>(Ljava/lang/String;Lorg/apache/log4j/Category;Jorg/apache/log4j/Priority...) 因此,它似乎是硬连接到ye olde log4j的。有人设法让它工作
java.lang.NoSuchMethodException: org.apache.log4j.api.LoggingEvent.<init>(Ljava/lang/String;Lorg/apache/log4j/Category;Jorg/apache/log4j/Priority...)
因此,它似乎是硬连接到ye olde log4j的。有人设法让它工作了吗?我想你上面有个打字错误。该类应该是org.apache.log4j.spi.LoggingEvent。Log4j2和SLF4J都为Log4j 1.x提供了适配器,但它们都不包含LoggingEvent构造函数,更不用说与您缺少的签名匹配的构造函数了。但我真的不认为这是必要的(以前从来没有人要求过)。除非JAMonAppender是以编程方式实例化的,否则为Log4j创建JAMonAppender将相当简单。这就是说,JAMon的上一次更新是在4年前,所以如果公共关系被接受,我会感到惊讶
有一件事我需要澄清——JAMonAppender将只与log4j 1.2一起工作,并进行日志记录。如果您的目标是使用log4j2,则需要重写appender 注意,我是jamonapi的创造者。虽然,我已经有一段时间没有更新了,但它仍然受支持,如果有人需要,我们可以添加一个log4j2appender。我知道这是一个老帖子,但让我知道你的想法 编辑:从jamon 2.82开始,JAMonAppender已更新为使用log4j 2。对于log4j,它能够查看每个级别被调用的次数(错误、信息),并允许您通过web应用程序“跟踪”日志。它还监视应用程序的许多其他方面。这里是log4j2的链接-
<%@ page import="com.jamonapi.MonitorFactory, org.apache.log4j.Logger, org.apache.log4j.PropertyConfigurator, java.util.Properties" %>
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