apache commons 日志记录中的打印格式
print format in apache commons logging
下面使用log4j。
我该怎么做,格式化或通配符之类的东西:
System.out.printf('%s', 5)
有
log.info('%s', 5) //org.apache.commons.logging.Log instance
版本:commons-logging-1.1.3.jar。
上面提到的 API 的缺点是:
它只有方法 info(object)
和 info(object, throwable)
。
或者日志没有在那里进化??
是的,可以在 "slf4j" 中实现。尝试使用以下快照-
log.info("My name is %s %s",firstName,secondName)
或
LOG.debug("WidgetName:{}\n curWidgetVOArray=\n",curWidgetName, curWidgetVOArray);
参考 - http://javarevisited.blogspot.in/2013/08/why-use-sl4j-over-log4j-for-logging-in.html
log4j2 中包含您要查找的功能:
http://www.apache.org/dyn/closer.cgi/logging/log4j/2.1/apache-log4j-2.1-bin.zip
您必须包含至少两个 jar 文件:
- log4j-api-2.1.jar
- log4j-core-2.1.jar
最后将名为 "log4j2.xml" 的配置文件放入您的类路径中,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
配置完成后,您应该可以通过以下代码实现您想要的效果:
Logger log = LogManager.getLogger(YOURCLASSNAME.class);
log.printf(Level.INFO,"%s",5);
这可能是最简单的方法
log.info(String.format("%s", 5));
下面使用log4j。
我该怎么做,格式化或通配符之类的东西:
System.out.printf('%s', 5)
有
log.info('%s', 5) //org.apache.commons.logging.Log instance
版本:commons-logging-1.1.3.jar。
上面提到的 API 的缺点是:
它只有方法 info(object)
和 info(object, throwable)
。
或者日志没有在那里进化??
是的,可以在 "slf4j" 中实现。尝试使用以下快照-
log.info("My name is %s %s",firstName,secondName)
或
LOG.debug("WidgetName:{}\n curWidgetVOArray=\n",curWidgetName, curWidgetVOArray);
参考 - http://javarevisited.blogspot.in/2013/08/why-use-sl4j-over-log4j-for-logging-in.html
log4j2 中包含您要查找的功能:
http://www.apache.org/dyn/closer.cgi/logging/log4j/2.1/apache-log4j-2.1-bin.zip
您必须包含至少两个 jar 文件:
- log4j-api-2.1.jar
- log4j-core-2.1.jar
最后将名为 "log4j2.xml" 的配置文件放入您的类路径中,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
配置完成后,您应该可以通过以下代码实现您想要的效果:
Logger log = LogManager.getLogger(YOURCLASSNAME.class);
log.printf(Level.INFO,"%s",5);
这可能是最简单的方法
log.info(String.format("%s", 5));