问题
My understanding is that the different levels of logging, in order of severity, are: SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST.
In my conf/logging.properties I've set all levels to WARNING, restarted Tomcat, but I still keep getting INFO level message in catalina.out. Any ideas?
I'm copying logging.properties below. Am I doing something obviously wrong?
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = WARNING
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = WARNING
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = WARNING
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
回答1:
Tomcat's logging.properties
does not affect anything in catalina.out
: notice that catalina.out
isn't mentioned at all in logging.properties
? The file logs/catalina.out
is created via shell redirection when you use Tomcat's startup scripts to launch Tomcat.
Anything that goes to standard output (from either Tomcat itself or any webapp) will end up in catalina.out.
If you have output going to standard output, then you should fix your webapp so it doesn't do that anymore.
If you configure your <Context>
with swallowOutput=true then Tomcat will redirect standard output for that webapp to whatever log file has been configured for that particular webapp (e.g. 3manager.org.apache.juli.FileHandler
-- though you should probably have a separate logger for your own application).
来源:https://stackoverflow.com/questions/14072707/tomcat-should-log-warning-severe-but-logs-info-too