Tag: log4j

Log4j2为什么要在log4j上使用它?

我一定错过了一些东西,但我现在已经看了几天了,但为什么你会在log4j上使用log4j2(性能除外)? 从我到目前为止看到的,log4j2被宣传为更简单的配置,但它实际上非常复杂(现在已经三天了,我仍然无法在我的主目录中写日志)。 自动配置对我来说根本不起作用(或者至少我不能使它工作),配置文件本身的结构要复杂得多,并且在运行时添加内容以帮助诊断似乎更难。 所以除了性能之外还有什么理由使用log4j2而不是原始的log4j?

如何使用log4j自动记录类中调用的每个方法

我有一个带数据库调用的类,我通常希望使用log4j记录此类中带有(带参数)的每个方法: logger.debug(“foo(id=”+id+”) initiated”); 是否可以自动执行此操作? 也许在每个方法的开头使用某种注释而不是编写每个logger.debug? 今天我每次更改参数或方法名称时都必须更新我的logging.debug。

Kafka快速入门:我需要什么依赖?

我正在通过kafka快速入门: http://kafka.apache.org/07/quickstart.html 和基本的消费者群体示例: https://cwiki.apache.org/confluence/display/KAFKA/Consumer+Group+Example 我已经编写了Consumer和ConsumerThreadPool,如上所示: import kafka.consumer.KafkaStream; import kafka.consumer.ConsumerIterator; public class Consumer implements Runnable { private KafkaStream m_stream; private Integer m_threadNumber; public Consumer(KafkaStream a_stream, Integer a_threadNumber) { m_threadNumber = a_threadNumber; m_stream = a_stream; } public void run() { ConsumerIterator it = m_stream.iterator(); while (it.hasNext()) { System.out.println(“Thread ” + m_threadNumber + “: ” + new String(it.next().message())); […]

如何重新执行Log4j“默认初始化过程”?

在运行时,我经常创建/修改log4j Loggers,Appenders,Levels,Layouts以及需要将所有内容重置为默认值的时间。 Log4j系统具有明确定义的默认初始化过程 ,该过程在将log4j类加载到内存时执行。 有没有办法在以后的运行时以编程方式重新执行整个过程? 我在log4j文档中找到了几个resetConfiguration()方法,但不确定它们中的任何一个是否会执行默认初始化过程 : BasicConfigurator.resetConfiguration(); Hierarchy.resetConfiguration(); LogManager.resetConfiguration(); 关于重置log4j配置的任何其他建议都欢迎! 谢谢。

如何在java中将错误日志或exception写入文件

有没有办法在java中的文件中写入错误日志或exception。 我经历过Log4j。 我搜索了一下,但diidnt找到了一个很好的解决方案。 我写了一个简单的代码 catch (Exception e) { PrintWriter pw = new PrintWriter(new FileOutputStream(“Log”)); e.printStackTrace(pw); } 有没有其他方法来记录错误或exception? 任何机构可以提供我与Log4j的示例?

log4j,slf4j和logback有什么区别?

我对这三个记录器库有点困惑。 看起来他们可以在java日志记录中做类似的事情……

Log4j登录所有类级别

我正在使用Log4j调试我的Java Web应用程序,我需要登录类级别。 我不想在我的log4j.properties文件中为每个类添加一行,因为我在我的应用程序中有数百个类,如下所示: log4j.logger.com.my.package.class1=DEBUG log4j.logger.com.my.package.class2=DEBUG log4j.logger.com.my.package.class3=DEBUG 是否有一行设置来实现所有类的登录?

如何使用log4j创建多个日志文件

我想创建单独的日志文件一个用于info另一个用于调试,我在log4j.property文件下面使用,请建议如何修改不同文件中的两级日志记录, # Root logger option log4j.rootLogger=info, file # Direct log messages to a log file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=infoLog.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} – %m%n log4j.rootCategory=DEBUG, console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} – %m%n log4j.appender.console.Target=System.out 我想请求请给我发送更新的属性文件,而不是给搜索或探索指针,因为我已经花了3-4个小时在Google和StackOverflow中搜索此解决方案, 提前致谢。

Java:log4j初始化错误

我是使用log4j包的新手,我没有看到错误:这是一个非常简单直接的代码示例: import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class TestLogger { private static Logger logger; public static void main(String[] args) { logger = LogManager.getLogger(TestLogger.class); logger.info(“Hello”); } } 当我尝试编译时,我收到此错误: 位于my.package.logging.TestLogger.main的org.apache.logging.log4j.LogManager.getLogger(LogManager.java:129)中的线程“main”java.lang.NullPointerException中的exception(TestLogger.java:15) 我想知道它究竟是什么意思…… 你能在这帮吗?

使用log4j2 API无法在EAR中检测到自定义插件

我正在将一个EAR应用程序从log4j迁移到log4j2 。 我有类在不同的EARjar中扩展appender,filter,布局,现在,我已将它们转换为插件。 这意味着我在多个jar中有自定义插件(假设有3个jar子)。 我没有在log4j2.xml使用packages属性, log4j2.xml使用Dlog4j.configurationFile JVM参数初始化日志系统, Dlog4j.configurationFile JVM参数指向EAR的META-INF的log4j2.xml位置。 在所有三个jar项目中添加以下插件都不起作用。 org.apache.maven.plugins maven-compiler-plugin log4j-plugin-processor compile process-classes only org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor 模式布局:在下面的模式布局中, e是自定义模式,其中编写自定义模式转换器插件以转换此字符串。 %d %-5p [%c{1}] [EventId: %e] [%t] %m%n 用于上述模式布局的自定义转换器插件(在jar1中): jar1在org.apache..文件夹中的META-INF下有Log4J2Plugins.dat文件。 @Plugin(name = “EventPatternConverter”, category = “Converter”) @ConverterKeys({“e”}) public class EventPatternConverter extends LogEventPatternConverter { protected EventPatternConverter(String name, String style) { super(name, style); } public static EventPatternConverter newInstance(String[] options) […]