weblogic 中 hibernate 的巨型 NodeManagerLogs
题
我们的 weblogic 8.1 之一突然开始记录大量日志并填满磁盘。
给我们带来困扰的日志位于
mydrive:\bea\weblogic81\common\nodemanager\NodeManagerLogs\generatedManagedServer1\managedserveroutput.log
日志文件中的条目只是一次又一次重复的同类条目。像这样的东西
19:21:24,470 DEBUG [StdRowLockSemaphore] Lock 'TRIGGER_ACCESS' returned by: LLL-SCHEDULER_QuartzSchedulerThread
19:21:31,923 DEBUG [StdRowLockSemaphore] Lock 'STATE_ACCESS' is deLLLred by: QuartzScheduler_LLL-SCHEDULER-NACDLLLF011219763113220_ClusterManager
19:21:31,923 DEBUG [StdRowLockSemaphore] Lock 'STATE_ACCESS' is being obtained: QuartzScheduler_LLL-SCHEDULER-NACDLLLF011219763113220_ClusterManager
19:21:31,923 DEBUG [StdRowLockSemaphore] Lock 'STATE_ACCESS' given to: QuartzScheduler_LLL-SCHEDULER-NACDLLLF011219763113220_ClusterManager
19:21:31,923 DEBUG [StdRowLockSemaphore] Lock 'TRIGGER_ACCESS' is deLLLred by: QuartzScheduler_LLL-SCHEDULER-NACDLLLF011219763113220_ClusterManager
...
19:17:46,798 DEBUG [CascadingAction] cascading to saveOrUpdate: mypackage.config.common.Share
19:17:46,798 DEBUG [DefaultSaveOrUpdateEventListener] reassociated uninitialized proxy
19:17:46,798 DEBUG [Cascade] done processing cascade ACTION_SAVE_UPDATE for: mypackage.config.common.FileLocation
19:17:46,798 DEBUG [Cascade] processing cascade ACTION_SAVE_UPDATE for: mypackage.config.common.FileLocation
19:17:46,798 DEBUG [CascadingAction] cascading to saveOrUpdate: mypackage.config.common.Share
19:17:46,798 DEBUG [DefaultSaveOrUpdateEventListener] reassociated uninitialized proxy
我找不到任何地方设置的任何调试设置。我查看了托管服务器的远程启动类路径和参数。
谁能指出我控制该日志文件的方向?
解决方案
由于这些日志条目不是问题,听起来全局日志级别已调至 DEBUG。或者,可能已经实现了新的日志记录机制或写入标准输出的新日志 Appender,因此由 Weblogic 重新记录。我会看看你的记录器的配置。(或者如果使用默认配置,则提供一个)
例如,当使用具有活动 Log4J 设置的 Hibernate 时,Hibernate 将自动加入您在自己的应用程序中设置的 Log4J 实例
它可以按照正常的 Log4J 配置进行调整。此示例使用属性配置样式:
log4j.category.org.hibernate=WARN
Hibernate 可以通过 apache commons 日志 API 加入其他日志机制。了解如何配置您自己的记录器并调整 org.hibernate.* 频率。
注:调试时,重新打开
log4j.category.org.hibernate.SQL=INFO or DEBUG
可能有用。
其他提示
它是一个拥有许多程序员的大型系统吗?如果是这样,可能值得检查代码中是否没有记录器以编程方式更改其配置。
在 log4j 中,这可以使用 LogManager
或者 BasicConfigurator
类。还可以通过 PropertyConfigurator
和 DomConfigurator
. 。只需一行恶意代码就可以使用示例中所示的 PatternLayout 将新的记录器设置为标准输出。
BasicConfigurator.configure();
不隶属于 StackOverflow