Tag: log4j

如何配置Tomcat JULI日志记录以滚动日志文件?

我有几个使用java.util.logging的webapps。 Tomcat 5.5配置为使用Juli记录器,以便每个webapp都有自己的日志文件。 问题是Juli没有最大文件大小和文件数的属性。 使用Juli文件将无限增长,并且只在一天结束时滚动。 此外,还保留了无限数量的日志文件。 您可以在此页面上看到FileHandler属性 – Apache Tomcat 5.5文档 没有限制或计数属性(以下行无效) org.apache.juli.FileHandler.limit=102400 org.apache.juli.FileHandler.count=5 在不更改webapps的情况下,有没有办法为每个应用程序获取日志文件大小的某种类型的边界的唯一日志文件? 更新:我发现的解决方案根本不使用Juli记录器! java.util.logging.FileHandler.limit=102400 java.util.logging.FileHandler.count=5 谢谢, 格雷格

在温和使用后,Tomcat会随着AbstractProtocol暂停而随机关闭

运行我的webapp一段时间后(时间因小时和天而异,具体取决于流量)Tomcat似乎随机关闭了自己。 在这种情况发生之前,日志中没有任何exception(没有例外)只是我的应用程序发出的正常INFO内容。 任何人都可以帮助如何最好地调试这个? Tomcat中有什么东西可以触发AbstractProtocol pause信号吗? 日志: 09-Nov-2011 21:40:19 org.apache.coyote.AbstractProtocol pause INFO: Pausing ProtocolHandler [“http-bio-80”] 09-Nov-2011 21:40:20 org.apache.coyote.AbstractProtocol pause INFO: Pausing ProtocolHandler [“ajp-bio-8009”] 09-Nov-2011 21:40:21 org.apache.catalina.core.StandardService stopInternal INFO: Stopping service Catalina Java版本:1.6.0_25-b06 Tomcat版本:6

Log4j – org.hibernate.type不起作用!

这是我的记录器配置: log4j.logger.org.hibernate.SQL=TRACE, stdout log4j.logger.org.hibernate.type=TRACE, stdout 但我没有看到类型的叮咬 所以我尝试了这个 log4j.logger.org.hibernate=TRACE, stdout 看看我是否错过了什么(这显示了所有的hibernate记录器),我发现org.hibernate.engine.QueryParameters记录器也显示了参数绑定(仍然没有org.hibernate.type记录器绑定消息的标志) 那么我试过了 log4j.logger.org.hibernate.SQL=TRACE, stdout log4j.logger.org.hibernate.type=TRACE, stdout log4j.logger.org.hibernate.engine.QueryParameters=TRACE, stdout 但它只显示来自org.hibernate.SQL记录器的日志! 我们使用Hibernate 3.2.6.ga和经典的查询翻译器 有什么线索吗?

如何以编程方式在运行时添加Log4J2 appender?

是否可以使用XML配置中的规范以编程方式添加Log4J2 appender? 我计划在log4j2.xml中定义它,然后像这样选择appender(不会编译): if (arg[0].equals(“log”) ) { Logger.getLogger(“loggerNameFromXMLConfig”).addAppender(“appenderNameFromXMLConfig”); } else { //… }

使用XML文件(log4j2.xml)配置Log4j 2

我想使用新的Log4J 2 – Java Logging Framework。 一切正常,但我尝试了一个小时后加载自定义配置文件来配置日志记录(如日志级别)。 这是我的log4j2.xml: 我尝试了以下,但没有任何作用: 移动log4j2.xml文件,使其位于默认包中。 将log4j2.xml文件移动到项目中的任何位置 将log4j2.xml文件命名为“log4j.xml” 在项目中创建一个文件夹,将log4j2.xml文件放在那里,并将该文件夹添加到运行时类路径中 由于官方网站无法帮助我,我希望你能帮助我让Log4j 2使用我的配置文件。

log4j相对文件路径

我希望我的网络应用程序使用此路径登录文件:webapp / logs / 我可以在log4j.properties文件中设置绝对路径,但生产环境的目录结构会有所不同。 有什么办法可以吗? 我是这样做的: log4j.appender.f=org.apache.log4j.RollingFileAppender log4j.appender.f.layout=org.apache.log4j.PatternLayout log4j.appender.f.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L – %m%n log4j.appender.f.File=log.out log4j.appender.f.MaxFileSize=100KB 这是将日志打印到我的eclipse目录(c:// eclipse)中名为log.log的文件中。 我正在使用Tomcat 6。

没有为logger找到appender(org.apache.http.client.protocol.RequestAddCookies)

我试图在Firefoxdriver上运行selenium webdriver代码,但在运行时我得到一个例外 – log4j:WARN No appenders could be found for logger (org.apache.http.client.protocol.RequestAddCookies). log4j:WARN Please initialize the log4j system properly. Exception in thread “main” org.openqa.selenium.ElementNotVisibleException: Element is not currently visible and so may not be interacted with Command duration or timeout: 15 milliseconds Build info: version: ‘2.42.2’, revision: ‘6a6995d’, time: ‘2014-06-03 17:42:30’ System info: host: ‘Admin-PC’, […]

Log4j2 – 配置RolloverStrategy以删除旧的日志文件

我正在尝试配置log4j以仅保留指定数量的备份文件或保留不超过某个年龄的文件。 最终,我希望有时间[每日]触发策略,并保留30个备份文件或删除30天以前的文件。 在做了一些研究之后,我了解到在使用时间策略时我无法指定备份文件的最大数量但是我遇到了这个问题https://issues.apache.org/jira/browse/LOG4J2-435和这个文档片段http: //logging.apache.org/log4j/2.x/manual/appenders.html#CustomDeleteOnRollover ,描述如何根据文件的年龄和名称模式删除文件。 现在我尝试在每分钟创建新备份文件的简单示例中应用此配置,并将自动删除3分钟以前的文件。 为此,我使用以下pom创建了简单的maven项目: 4.0.0 test test 1.0-SNAPSHOT org.apache.logging.log4j log4j-api 2.5 org.apache.logging.log4j log4j-core 2.5 org.apache.maven.plugins maven-dependency-plugin copy-dependencies prepare-package copy-dependencies ${project.build.directory}/lib false false true org.apache.maven.plugins maven-jar-plugin true lib/ test.Main log4j2.xml配置文件: %d %p %c{1.} [%t] %m%n <!—-> 和主要课程: package test; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; /** * Created by mzurawski on 2015-12-22. */ public class […]

log4j:以毫秒为单位的当前时间

在log4j.properties我可以设置PatternLayout例如(“[%p] %c – %m – %d %n”) 是否有任何符号(%something)以毫秒为单位返回当前时间?

如何在log4j2中创建自定义RewritePolicy?

我正在尝试在Log4j2中编写自己的RewritePolicy。 文件说明: RewritePolicy是一个接口,允许实现在将LogEvent传递给Appender之前检查并可能修改它们。 RewritePolicy声明了一个必须实现的名为rewrite的方法。 该方法传递给LogEvent,可以返回相同的事件或创建一个新事件。 这是我的java类 : public final class MarkerInjectorRewritePolicy implements RewritePolicy { @Override public LogEvent rewrite(final LogEvent event) { final Marker marker = event.getMarker(); if (marker == null) return event; // If there’s a Marker, add it to the ThreadContextMap so the RoutingAppender can properly routes log messages event.getContextMap().put(“_marker”, marker.getName()); return event; } […]