I'm having problem losing initial debug logger output when using
a StreamTarget under tomcat and cocoon. The logkit.conf entry
looks like:
<factory type="stream"
class="org.apache.avalon.excalibur.logger.factory.StreamTargetFactory"/>
My component uses the logger string "wq" in cocoon.xconf:
<work-queue logger="wq">
<parameter name="max-threads" value="8"/>
</work-queue>
My component implements ThreadSafe, so cocoon/avalon makes an
instance during startup. Under jdb, I see the enableLogging()
call happen and the logger looks good:
main[1] dump logger
logger = instance of org.apache.avalon.framework.logger.LogKitLogger(id=1333) {
m_logger: instance of org.apache.log.Logger(id=1334)
}
main[1] dump logger.m_logger
logger.m_logger = instance of org.apache.log.Logger(id=1334) {
CATEGORY_SEPARATOR: .
m_errorHandler: instance of org.apache.log.Hierarchy$InnerErrorHandler(id=1335)
m_parent: instance of org.apache.log.Logger(id=1336)
m_category: "wq"
m_children: null
m_logTargets: instance of org.apache.log.LogTarget[3] (id=1338)
m_logTargetsForceSet: true
m_priority: instance of org.apache.log.Priority(id=1340)
m_priorityForceSet: true
m_additivity: false
}
main[1] dump logger.m_logger.m_logTargets[0]
logger.m_logger.m_logTargets[0] = instance of
org.apache.log.output.io.StreamTarget(id=1341) {
m_outputStream: instance of
org.apache.tomcat.util.log.SystemLogHandler(id=1342)
org.apache.log.output.AbstractOutputTarget.m_formatter: instance of
org.apache.log.format.ExtendedPatternFormatter(id=1343)
org.apache.log.output.AbstractTarget.DEFAULT_ERROR_HANDLER: instance of
org.apache.log.util.DefaultErrorHandler(id=1344)
org.apache.log.output.AbstractTarget.m_errorHandler: instance of
org.apache.log.Hierarchy$InnerErrorHandler(id=1335)
org.apache.log.output.AbstractTarget.m_isOpen: true
}
main[1] p java.lang.System.err
java.lang.System.err = instance of
org.apache.tomcat.util.log.SystemLogHandler(id=1342)
(So logger.m_logger.m_logTargets[0].m_outputStream == System.err.)
But I see no output during cocoon startup. I pass this logger to other
LogEnabled classes, which does make reasonable output during normal
execution (page fetches), but I miss the debug output from my
lifecycle methods, which I'd like to see.
Has anyone seen anything like this?
Thanks,
Phil
Here's the backtrace from enableLogging, if it helps:
main[1] bt
[1] net.juniper.cocoon.components.schedule.AbstractWorkSchedule.enableLogging
(AbstractWorkSchedule.java:463)
[2] org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance
(DefaultComponentFactory.java:188)
[3] org.apache.avalon.excalibur.component.ThreadSafeComponentHandler.initialize
(ThreadSafeComponentHandler.java:98)
[4] org.apache.avalon.excalibur.component.ExcaliburComponentManager.initialize
(ExcaliburComponentManager.java:513)
[5] org.apache.cocoon.Cocoon.initialize (Cocoon.java:288)
[6] org.apache.cocoon.servlet.CocoonServlet.createCocoon (CocoonServlet.java:1264)
[7] org.apache.cocoon.servlet.CocoonServlet.init (CocoonServlet.java:465)
[8] org.apache.catalina.core.StandardWrapper.loadServlet (StandardWrapper.java:924)
[9] org.apache.catalina.core.StandardWrapper.load (StandardWrapper.java:813)
[10] org.apache.catalina.core.StandardContext.loadOnStartup
(StandardContext.java:3341)
[11] org.apache.catalina.core.StandardContext.start (StandardContext.java:3534)
[12] org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:821)
[13] org.apache.catalina.core.ContainerBase.addChild (ContainerBase.java:807)
[14] org.apache.catalina.core.StandardHost.addChild (StandardHost.java:579)
[15] org.apache.catalina.core.StandardHostDeployer.install
(StandardHostDeployer.java:257)
[16] org.apache.catalina.core.StandardHost.install (StandardHost.java:772)
[17] org.apache.catalina.startup.HostConfig.deployDirectories (HostConfig.java:569)
[18] org.apache.catalina.startup.HostConfig.deployApps (HostConfig.java:411)
[19] org.apache.catalina.startup.HostConfig.start (HostConfig.java:879)
[20] org.apache.catalina.startup.HostConfig.lifecycleEvent (HostConfig.java:368)
[21] org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent
(LifecycleSupport.java:166)
[22] org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1196)
[23] org.apache.catalina.core.StandardHost.start (StandardHost.java:738)
[24] org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
[25] org.apache.catalina.core.StandardEngine.start (StandardEngine.java:347)
[26] org.apache.catalina.core.StandardService.start (StandardService.java:497)
[27] org.apache.catalina.core.StandardServer.start (StandardServer.java:2189)
[28] org.apache.catalina.startup.Catalina.start (Catalina.java:510)
[29] org.apache.catalina.startup.Catalina.execute (Catalina.java:400)
[30] org.apache.catalina.startup.Catalina.process (Catalina.java:180)
[31] java.lang.reflect.Method.invoke (native method)
[32] org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:203)
--
To unsubscribe, e-mail: <mailto:avalon-users-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-users-help@;jakarta.apache.org>