package com.stackoverflow.tests.logging;
import java.util.Locale;
import java.util.logging.Logger;
public class TestLogging
{
public static void doLog(Locale l)
{
Locale.setDefault(l);
Logger logger = Logger.getLogger(TestLogging.class.getName());
final String msg = "Hello logging world";
logger.severe(msg);
logger.info(msg);
logger.config(msg);
logger.fine(msg);
logger.finer(msg);
logger.finest(msg);
}
public static void main(String args[])
{
doLog(Locale.ITALY);
// doLog(Locale.UK);
// doLog(Locale.FRANCE);
}
}
dic 15, 2014 10:48:43 AM com.stackoverflow.tests.logging.TestLogging doLog
Grave: Hello logging world
dic 15, 2014 10:48:43 AM com.stackoverflow.tests.logging.TestLogging doLog
Informazioni: Hello logging world
我怎么能那样做
Logger.getLogger
可以使用ResourceBundle,但我没有设法使其工作,而且我也不知道该文件中的内容)loggerFactory.getLogger
函数,它是我用来获取记录器的函数)根据一些测试,使用JDK日志记录似乎不可能做到这一点。
传递给记录器
的资源包名称不会影响创建本地化名称的级别
对象。相反,它使用默认的资源包(sun.util.logging.resources.logging
)来获得该级别的文本版本。
我的测试包含一个名为logmessages.properties
的文件,其中包含:
INFO="NEWINFO"
testmessage="fooballs"
和一个简单的类:
import java.util.logging.Logger;
public class LocaleLoggingTest {
public static void main(String[] args) throws Exception {
Logger logger = Logger.getLogger("name", "logmessages");
logger.info("testmessage");
}
}
输出:
Dec 15, 2014 10:23:39 AM LocaleLoggingTest main
INFO: "fooballs"
如果您进行调试,当您到达java.util.logging.simpleformatter.format(LogRecord)
时,日志记录具有一个level
对象,该对象具有默认的资源包。很沮丧,是吧?
在我的Java应用程序中,我使用SLF4J+Logback进行日志记录。我在开发环境中使用调试级日志记录,在生产环境中使用错误级日志记录。但是有一些消息我无论如何都想要记录下来,无论日志级别如何(类似于,但使用的是logger)。 有什么切实可行的方法可以实现这一点吗?我可以使用error或更低的级别,但我想做的是给出一些信息,所以在语义上是错误的,它不是错误。 我可以在我的中为我的类定义另一个记
我目前正在尝试降低我在java项目中使用的PDFBox 1.8.6库的日志记录级别,但失败了。基于前面的问题,我在 /src/目录中有以下log4j.properties文件。 我不确定我还遗漏了什么,因为我仍然在控制台中收到类似以下消息的垃圾邮件。 如果有一种方法可以通过编程方式更改日志级别,那么我根本不会附加到属性文件,因为我在其他任何地方都不使用log4j。我不知道它是否使用log4j。属性
SLF4J具有以下日志级别 JDK日志记录具有以下日志级别 如果我想将日志级别设置为DEBUG,那么该级别在JDK日志中不可用。谁能解释一下在这种情况下我们如何获得调试级别的日志记录。对于这种情况,我们需要做什么额外的配置吗? 已更新 这是我的属性文件配置 请让我知道我哪里错了。
我一直在尝试更改用户日志的日志级别,即出现在
给定的第三方库的源代码我不能更改: 我想消除假阳性。 感谢您的反馈!
我已经将ApacheJena库包含到我的Java项目中,并且我正在使用ApacheLog4J2作为我的记录器。我还包括了用于从log4jv1映射的log4j-1.2-api和log4j-slf4j-impl依赖项。x和SLF4J(分别) 但是,我无法更改Jena的日志记录级别 我尝试在log4j2中设置它。xml(我在项目中使用的内容): 我甚至尝试添加一个log4j。属性文件: 没有成功 是否有