Tomcat is logging everything to stdout
Is dreambear
the name of the web application? Or the servlet?
In these 2 lines,
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/dreambear].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/dreambear].handlers = 5dreambear.org.apache.juli.FileHandler
It needs to be the name of the web application in [/dreambear] and not that of the servlet. Then your logging will work.
also try changing logging level to ALL here
5dreambear.org.apache.juli.FileHandler.level = ALL
Related videos on Youtube
Bart van Heukelom
Professional software developer, online games, full stack but mostly backend. Electronics tinkerer. Maker. Freelance. See LinkedIn for more details. My UUID is 96940759-b98b-4673-b573-6aa6e38272c0
Updated on September 17, 2022Comments
-
Bart van Heukelom over 1 year
I have Tomcat 6 installed as a Windows service. All log messages from my web application dreambear (logged with
getServletContext().log()
) are going to the stdout log instead of the log file I specified. This happened even before I added the dreambear logger, when the messages should still have gotten to the localhost log instead stdout.Below are the contents of logging.properties. The specified log files are created, though empty, so there probably isn't a syntax error or something like that in this file.
handlers = \ 1catalina.org.apache.juli.FileHandler, \ 2localhost.org.apache.juli.FileHandler, \ 3manager.org.apache.juli.FileHandler, \ 4host-manager.org.apache.juli.FileHandler, \ 5dreambear.org.apache.juli.FileHandler, \ java.util.logging.ConsoleHandler .handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler ############################################################ # Handler specific properties. # Describes specific configuration info for Handlers. ############################################################ 1catalina.org.apache.juli.FileHandler.level = FINE 1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 1catalina.org.apache.juli.FileHandler.prefix = catalina. 2localhost.org.apache.juli.FileHandler.level = FINE 2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 2localhost.org.apache.juli.FileHandler.prefix = localhost. 3manager.org.apache.juli.FileHandler.level = FINE 3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 3manager.org.apache.juli.FileHandler.prefix = manager. 4host-manager.org.apache.juli.FileHandler.level = FINE 4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 4host-manager.org.apache.juli.FileHandler.prefix = host-manager. 5dreambear.org.apache.juli.FileHandler.level = FINE 5dreambear.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 5dreambear.org.apache.juli.FileHandler.prefix = dreambear. java.util.logging.ConsoleHandler.level = FINE java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter ############################################################ # Facility specific properties. # Provides extra control for each logger. ############################################################ org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/dreambear].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/dreambear].handlers = 5dreambear.org.apache.juli.FileHandler
Or should I just use Log4J?
-
Bart van Heukelom over 13 yearsYes, it's the name of my web app. It has only one servlet, therefore the confusion.
-
Ashique over 13 years@Bart van Heukelom : Okay then try asking on stackoverflow for a better response
-
Bart van Heukelom over 13 yearsOk I'll try that. I already have another Tomcat related question there: stackoverflow.com/questions/3942655/…
-
Ashique over 13 yearsYes, saw that. I meant log4j stuff is better answered on SO, so you'd get a better recommendation.