tomcat 日志 java.util.logging.Logger使用 (三)

本文介绍如何在Tomcat的web项目中使用Tomcat自带的JULI进行日志配置,包括创建logging.properties文件的具体步骤及注意事项。

在tomcat的web项目中使用tomcat自带的JULI

配置步骤

1:在src下写一个logging.properties文件

handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################

org.apache.juli.FileHandler.level = WARNING
org.apache.juli.FileHandler.directory = ${catalina.base}
org.apache.juli.FileHandler.prefix = wechat.

java.util.logging.ConsoleHandler.level = WARNING
#java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.ConsoleHandler.formatter = coffee.common.log.jdk.ConsoleFormatter
:2:然后唯一不同的是需要在java代码中调用

org.apache.juli.logging.LogFactory.getLog("")

需要注意的是在eclipse中run as server运行的话可能看不到效果

把项目部署到tomcat的 webapps目录下,然后双击 tomcat_home /bin/startup.bat

便可以看到效果了


D:\JDK_Version\jdk-24\bin\java.exe -Dcatalina.home=D:\apache-tomcat-10.1.48-windows-x64\apache-tomcat-10.1.48 -Dcatalina.base=C:\Users\48148\.SmartTomcat\goodbook\goodbook -Djava.io.tmpdir=C:\Users\48148\.SmartTomcat\goodbook\goodbook\temp -Djava.util.logging.config.file=C:\Users\48148\.SmartTomcat\goodbook\goodbook\conf\logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager "-javaagent:D:\IntelliJ IDEA Community Edition 2025.2.1\lib\idea_rt.jar=51638" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\apache-tomcat-10.1.48-windows-x64\apache-tomcat-10.1.48\bin\bootstrap.jar;D:\apache-tomcat-10.1.48-windows-x64\apache-tomcat-10.1.48\bin\tomcat-juli.jar org.apache.catalina.startup.Bootstrap start NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED Handler error java.lang.ClassNotFoundException: java.com.example.goodbook.com.example.goodbook.dao.util.logging.ConsoleHandler at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:580) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:490) at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:549) at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:487) at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:299) at java.logging/java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:413) at java.logging/java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:366) at java.logging/java.util.logging.LogManager.getLogManager(LogManager.java:398) at java.logging/java.util.logging.Logger.demandLogger(Logger.java:638) at java.logging/java.util.logging.Logger.getLogger(Logger.java:708) at java.logging/java.util.logging.Logger.getLogger(Logger.java:691) at org.apache.juli.logging.DirectJDKLog.<init>(DirectJDKLog.java:61) at org.apache.juli.logging.DirectJDKLog.getInstance(DirectJDKLog.java:176) at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:115) at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:136) at org.apache.juli.logging.LogFactory.getLog(LogFactory.java:185) at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:47) WARNING: A restricted method in java.lang.System has been called WARNING: java.lang.System::load has been called by org.apache.tomcat.jni.Library in an unnamed module (file:/D:/apache-tomcat-10.1.48-windows-x64/apache-tomcat-10.1.48/lib/tomcat-jni.jar) WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module WARNING: Restricted methods will be blocked in a future release unless native access is enabled
最新发布
10-21
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值