Tag: java.util.logging

如何在java日志记录中格式化日期?

我在用 : log.info(“Message”); 输出是: Jul 8, 2014 12:58:02 PM myclass main INFO: message 我如何只打印没有日期和信息的消息:?

从Logger中过滤掉不需要的INFO消息

我正在使用java.util.logging登录我的Java应用程序。 我还使用javax.xml.ws.Endpoint发布SOAP接口。 随着时间的推移,我添加了越来越多的exception,这些exception在启动时都会出现如下日志条目: Jan 24, 2011 12:29:27 PM com.sun.xml.internal.ws.model.RuntimeModeler getExceptionBeanClass INFO: Dynamically creating exception bean Class de.wi08e.myhome.frontend.jaxws.NotLoggedInBean 我尝试使用filter来阻止它们,但我不确定使用getLogger获取哪个类: /* Filter ExceptionBeanClass logs */ Logger loggerInfo = Logger.getLogger(“javax.xml.ws.Endpoint”); loggerInfo.setFilter(new Filter() { @Override public boolean isLoggable(LogRecord l) { System.out.println(l.getMessage()); if (l.getMessage().startsWith(“Dynamically creating exception bean Class”)) return false; return true; } }); 有谁知道如何找出哪个类创建此日志条目? 有没有其他方法可以过滤掉这些紧张的信息? 编辑:我也尝试过Logger.getLogger(“com.sun.xml.internal.ws.model.RuntimeModeler”) ,但它仍然没有工作……

如何规范记录指令产生的打印输出量随着时间的推移而产生?

如何在Y秒内将程序日志打印输出限制为最多X个打印输出? 使用java.util.logging编程服务器端,我的代码有很多信息,警告和错误语句,如: s_logger.logp(Level.WARNING, myClassName, myMethodName, “msg.code.in.properties.file”); 一方面,我确实希望看到上面的警告信息打印到STDOUT,因为它表明出现了问题,特别是在调查生产中的问题时,但另一方面,打印了许多讲述相同故事的线条在很短的时间内,没有附加价值,而是打击性能并引入滚动失明。 我正在寻找的是一种机制/ API,可以在y秒内将每个消息代码的打印输出调整为不超过x条消息。 例如,在一分钟内,我不想生成和写入超过10个类型的消息:“事务超时”。 我很高兴API或库参考,任​​何人?

Java Logging – 我的日志文件在哪里?

我找不到我的日志文件了。 我在Windows XP上的Eclipse 3.7.1 java.util.logging使用Java Logging – java.util.logging 。 我的logging.properties文件的相关行是: handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler .level=INFO java.util.logging.FileHandler.pattern = %h/java%u.log java.util.logging.FileHandler.limit = 50000 java.util.logging.FileHandler.count = 1 java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter 据我所知,在执行这两行之后: Logger logger = Logger.getLogger(“test”); logger.logp(Level.INFO, “myClass”, “myMethod”, “Alcatraz”); 我的日志文件应该在C:\Documents and Settings\[My Windows ID]\javaX.log ,其中X是一个整数。 我在该目录中有5个不同的java.log文件, java0.log到java4.log ,但它们都不包含我的日志记录,甚至包含今天日期的记录。 我做了一些谷歌搜索,发现跟踪和记录 ,这意味着我的日志应该在不同的位置, c:\Documents and Settings\[My Windows ID]\Application Data\Sun\Java\Deployment\log 。 那里有一个名为plugin5581819941091650582.log文件,但它基本上是空的: 它的创建日期是上周。 […]

slf4j使用jdk进行日志记录 – 如何启用调试?

默认情况下,slf4j与jdk( slf4j-jdk14-1.6.1.jar )一起使用时,不会记录调试消息。 我该如何启用它们? 我无法在官方文档,网络或此处找到有关如何启用它的信息。 我发现了一些信息(虽然失败了)在%JDK_HOME%/ lib中创建文件并在配置文件中定义了那里的级别。 但是,我想在编译/运行时定义级别,以便我可以从具有不同日志记录级别的IDE运行和调试我的应用程序。 是不是我可以设置一些环境变量,或VM arg?

如何映射java.util.logging和SLF4J记录器的级别?

如何将java.util.logging中的日志记录级别映射到SLF4J? SLF4J 跟踪 调试 信息 警告 错误 致命 java.util.logging中 最好的 细 精细 配置 信息 警告 严重

加载java.util.logging.config.file以进行默认初始化

我正在尝试在启动应用程序时加载自定义log.properties文件。 我的属性文件与我的主类在同一个包中,所以我假设-Djava.util.logging.config.file=log.properties命令行参数应该加载属性文件。 但是只有在指定属性文件的完整绝对路径时才会加载属性。 任何建议如何使用相对路径?

如何使用JDK Logging手动滚动日志文件

我有一个应用程序,它使用JDK Logging和logging.properties文件,该文件通过java.util.logging.FileHandler.count配置一些较旧的日志文件。 在应用程序的某些点,我想触发日志文件的手动翻转,以启动新的日志文件,例如在计划的活动开始之前。 这可能与JDK Logging有关吗? 在Log4j我使用以下,但在这种情况下,我想使用JDK日志记录! Logger logger = Logger.getRootLogger(); Enumeration appenders = logger.getAllAppenders(); while(appenders.hasMoreElements()) { Object obj = appenders.nextElement(); if(obj instanceof RollingFileAppender) { ((RollingFileAppender)obj).rollOver(); } }

在java.util.logging中,什么是全局记录器?

在java.util.logging日志框架中有一个名为”global”的特殊Logger实例,但我找不到任何有关其预期用途的文档。 Logger.getGlobal()的文档只是说 返回名为Logger.GLOBAL_LOGGER_NAME全局记录器对象。 反过来, Logger.GLOBAL_LOGGER_NAME仅记录为 GLOBAL_LOGGER_NAME是全局记录器的名称。 我相当广泛的搜索没有找到任何更有用的文档。 什么是全球记录器用于? 这是在我遗漏的地方记录的吗?

调整apache commons日志记录的日志级别?

我有一个简单的控制台应用程序,它使用apache的PDFBox库,后者又使用commons日志记录。 我在我的控制台中收到了很多垃圾邮件,我想压制它: 2011年2月15日下午3:56:40 org.apache.pdfbox.util.PDFStreamEngine processOperator INFO:不支持/禁用操作:EI 在我的代码中,我试图重置日志级别无济于事: Logger.getLogger(“org.apache.pdfbox.util.PDFStreamEngine”).setLevel(Level.OFF); Logger.getLogger(“org.apache.pdfbox.util”).setLevel(Level.OFF); Logger.getLogger(“org.apache.pdfbox”).setLevel(Level.OFF); 尽管有这些设置,但消息仍会显示在控制台上。 从Commons日志记录中检索日志对象也没有帮助,因为它似乎没有办法设置级别。 有没有办法以编程方式抑制这些消息? 或者我是否需要添加配置文件?