问题内容: 我想在用log4j生成的日志文件的每个条目的时间戳中添加微秒,这可能吗? 我已经搜索了官方文档,但是没有提到毫秒以下的单位。 现在我有一个转换模式,如下所示: 在日期转换模式( %d* )中,我想在毫秒值( SSS )之后添加 微秒 ,有没有办法做到这一点? * 问题答案: 如果要显示微秒,则需要自己添加。可以使用自定义格式化程序(而不是PatternFormatter)来完成
问题内容: 我正在尝试将日志消息保存到中央数据库。为了做到这一点,我在log4j的xml配置中配置了以下Appender: 正常工作,除了某些消息包含’,然后附加程序失败。 是否有捷径可寻? 问题答案: 看一下这个非官方的Log4J JDBCAppender ,它可以解决此问题并在Apache 2.0许可下分发。引用其功能以进行比较: 登录到(关系)数据库 灵活的连接处理(尚不支持数据源) 灵活的
问题内容: 嗨,我是编程概念的新手,我倾向于使用log4j解决问题。因此,我正在阅读Log4j教程,在其中找到了以下代码: 但是在eclipse中运行之后,我无法找到生成的日志文件。谁能告诉文件在哪里转储?还可以为我提供一些最佳站点的帮助,从中我可以从零开始学习Log4j和Java Doc。谢谢!! 问题答案: 要将日志输出重定向到文件,您需要使用FileAppender并需要在log4j.pro
问题内容: 我想使用新的Log4J 2-Java Logging Framework。一切正常,但是一个小时以来,我尝试加载一个自定义配置文件来配置日志记录(如日志级别)。 这是我的log4j2.xml: 我尝试了以下方法,但没有任何效果: 移动log4j2.xml文件,使其位于默认软件包中。 将log4j2.xml文件移动到项目中的任何位置 将log4j2.xml文件命名为“ log4j.xml
问题内容: 我想向正在处理的类中添加一些log.debug语句,并且希望在运行测试时在输出中看到它。我想在命令行上覆盖log4j属性,如下所示: 我经常做这种事情。我特别只对在命令行上传递它的方式感兴趣。我知道如何使用配置文件进行操作,但这不适合我的工作流程。 问题答案: log4j不直接支持此功能。 由于您不希望使用配置文件,因此很可能使用编程配置。我建议您考虑扫描所有系统属性,并根据此内容显式
问题内容: 我试图每小时创建一个新的日志文件。我在RollingFileAppender中使用lo4j2的TimeBasedTriggerringPolicy。以下是我从log4j2官方站点获取的示例xml配置代码。 在时间间隔属性中,我设置了1表示1小时。但是我的文件仍然不会每1小时滚动一次。 请帮助我发现任何错误。 注意:我包括了log4j2的beta9(这是最新的) 问题答案: 这里的1表示
问题内容: 我想动态更改log4j日志文件的路径和文件名。 我已经阅读了很多页面,几乎每个页面都告诉我应该使用此处的系统属性: [如何动态更改log4j日志文件?](http://codingdict.com/questions/141150 所以我的log4j.properties文件看起来像这样: 在我的主要方法中,我将设置新的系统属性: 但是我只是得到一个错误: 当我尝试使用以下命令读取设置
问题内容: 我正在研究一个多模块Maven项目,其结构如下: war模块取决于jar模块,并将打包后将jar工件添加到webapp的lib目录中。 war模块和jar模块都使用Apache log4j进行日志记录,并共享相同的log4j配置文件(log4j.xml),该文件当前位于jar模块项目中。并且此log4j.xml将打包到jar- module.jar文件中,但是,我想将其放入war包中而
问题内容: 开始进行log4j配置的最简单方法是什么? 问题答案: 将名为的文件放在类路径的根目录中: 不需要什么了。Log4j将发现它并进行自我配置。
问题内容: 在log4j中,是否可以让logger.error(“”)和logger.debug(“”)包含不同的输出布局? 我希望错误包含方法名和行号,这两者都会降低应用程序的性能。 编辑: 添加apache-log4j-extras之后,以下配置文件将起作用。 此代码用于测试 问题答案: 在您的log4j.xml配置中,您可以创建两个附加程序,每个附加程序都使用LevelMatchFilter
问题内容: 我有一些在我身上调用System.out.println的库,我想通过log4j或commons logging重定向它们。但特别是我想保留完全合格的类名,这样我就知道哪个组件生成了日志。 有没有一种很好的,有序的方法来完成此任务? 更新:完成此操作后,我将代码发布到了这里: http : //www.bukisa.com/articles/487009_java-how-to-red
问题内容: 我们有几个同时运行的作业,它们必须为log4j使用相同的配置信息。他们都使用相同的附加程序将日志转储到一个文件中。有没有一种方法可以让每个作业动态命名其日志文件,以使它们保持独立? 谢谢 汤姆 问题答案: 您可以为每个作业传递Java系统属性吗?如果是这样,您可以像这样进行参数化: 然后在您的log4j.properties中: 您可以使用主机环境(例如)中的值填充Java系统属性,该
问题内容: 我有从maven log4j2运行时可以运行的应用程序: 但是当我将jar作为独立应用程序运行时,它显示错误: 日志: 我不明白这个错误。它显示未找到log4j2配置文件,但还抱怨配置文件中可能存在某种格式 我的配置是: 它位于jar文件的根目录中。 更新 jar由maven shade插件创建: 因此它包含所有必需的库(大约23 MB),当我运行这个jar时,我只需要指定参数 问题答
问题内容: 是否有可能在运行时使用MDC命名日志文件。 我有一个单独的Web应用程序,该应用程序同时使用tomcat docbase被不同的名称调用。因此,我需要为每个文件设置单独的日志文件。 问题答案: 这可以在Logback(Log4J的后继者)中完成。 Logback旨在作为流行的log4j项目的后继者,从log4j离开的地方接手。 请参阅文档筛选器 SiftingAppender在引用和配
问题内容: 我正在使用Log4j作为我正在研究的项目中的日志记录框架。我有以下情况:Log4j配置为将日志写入日志文件。有时,此日志文件将复制到另一个目标并删除。日志记录框架可以正常工作,但是由于已删除日志,因此日志未写入日志文件。有什么方法可以告诉Log4j重新创建文件并继续将日志写入日志文件。 最好的问候,拉希德 问题答案: 我研究了log4j的来源,发现log4j无法创建新的日志文件,它只是