Java控制台日志如何隐藏方法执行

时间:2013-03-11 18:15:15

标签: java windows maven logging

我正在运行.jar文件,当我运行它时,我看到我的方法正在执行...

INFO: ------- Order #295389
Mar 11, 2013 2:10:31 PM com.production.tasks.ImportNewOrders checkForOrders
INFO:     - Order has already been imported
Mar 11, 2013 2:10:31 PM com.production.tasks.ImportNewOrders checkForOrders
INFO: ...finished fetching orders, will check again in 60 seconds

我宁愿只看......

INFO: ------- Order #295389
INFO:     - Order has already been imported
INFO: ...finished fetching orders, will check again in 60 seconds

如何从输出中阻止方法执行?

4 个答案:

答案 0 :(得分:1)

这不是标准的java输出。看起来你有一个日志记录框架记录出来(可能是log4j,slf4j,logback,java logger或commons logging)。您必须将日志记录配置为不打印方法信息。

答案 1 :(得分:1)

您必须更改日志级别以仅记录更高级别的日志。它现在是INFO(从你的输出中猜到)你可以设置它WARN,它只记录警告或更高级别的消息。您可以在配置文件中找到这些设置。有关不同级别的更多信息,请参阅link for log4j。

答案 2 :(得分:1)

如果您使用的是Log4J,请找到您的log4j.properties文件。请注意使用的ConversionPattern属性。特别是,我认为您需要删除C(完全限定的类名)和M(方法名称)。有关选项的完整列表,请参阅here

答案 3 :(得分:0)

执行此操作并非log4j,但实际上java.util.logging记录了每个方法调用。

这将隐藏方法调用:

System.setProperty("java.util.logging.SimpleFormatter.format", "%4$s: %5$s%n");

相关问题