Using Logback in Glassfish v3 – Part II
In my previous post I listed out ways to configure logback in glassfish v3. After researching out and understanding logback more I realized that there is a simpler way.
Logback searches for the logback configuration file (first logback.groovy then logback-test.xml and then logback.xml if the former one is not found) in the classpath. Hence one can just place the logback.xml in the deployed application war and that’s it. No jvm-option called -Dlogback.configurationFile is needed.
If there is no logback.xml found in the classpath, logback configures itself using BasicConfigurator which will cause the logging output to be directed to the console. The minimal configuration involves a consoleAppender attached to the root logger which has a default log level of DEBUG. In glassfish v3, anything logged to the Console i.e. System.out or System.error is sent to the log file via a logger named “javax.enterprise.system.std.com.sun.enterprise.v3.services.impl”. A message to System.err is logged at Level.SEVERE. A message to System.out is logged at Level.INFO.
See the last logger in the below image.
Posted on March 31, 2011, in glassfish, logback and tagged glassfish, logback. Bookmark the permalink. 2 Comments.
Where would this leave the output for a file appender relative to? The location of logback.xml?
In glassfish it should be relative to the domain directory, but I am not completely sure since I have not tried it out.
Instead of relying on glassfish to figure out the location, a simpler way would be to configure the location through jNDI. Logback provides JNDI support !
Hope that helps.