cmu*_*t78 5 java logging tomcat log4j java.util.logging
我在Tomcat 7中配置日志格式需要一些指导.我在日志记录配置方面比较新,所以请原谅幽默这个问题,如果它看起来有点基础......
使用logging.properties中配置的Tomcat中的标准日志记录显示以下格式的日志:
Jun 6, 2011 9:27:00 AM com.class.Control_WS callWebService
INFO: Response received from Control_WS:[Y]
Run Code Online (Sandbox Code Playgroud)
我想自定义这些日志以压缩到一行,并将日期格式扩展到包括毫秒.
例:
[2011-05-04T11:37:00.037|INFO|javax.enterprise.system.stream.out|Response recieved from Control_WS:[Y]]
Run Code Online (Sandbox Code Playgroud)
这是我可以使用JUL做的事情还是我需要切换到LOG4J?
任何可以提供的简单示例或方向都将非常受欢迎.
如果您使用的是Java 7(或更高版本:-)),则不再需要为java.util.logging(JUL)创建自定义格式化程序类.在Java 7中有一个新属性java.util.logging.SimpleFormatter.format,它控制JUL如何SimpleFormatter打印信息.因此,只要您使用的是SimpleFormatter(无论如何都是默认设置),那么这将起作用.
一些陷阱:
看起来您可以通过创建一个扩展Formatter的自定义类来完成此操作,然后在您的logging.properties中将其指定为处理程序的格式化程序。例如,如果您使用 ConsoleHandler,您将使用以下内容:
java.util.logging.ConsoleHandler.formatter = com.mycompany.MyFormatter
Run Code Online (Sandbox Code Playgroud)
然后将类文件(单独或放在 jar 中)放置在 tomcat 类路径中的某个位置。我会创建一个罐子,然后将其放入其中${catalina.home}/lib/ext