我在生产环境上正经历着非常低的速度。我正在分析系统,我发现的原因是系统中的所有线程都在等待访问websphere环境中的“共享日志编写器”。这可能的原因是什么。
什么是websphere Shared (com.ibm.ejs.ras.SharedLogWriter),它管理在Websphere中写入的日志吗?以及为什么它要阻止应用程序。我的应用程序也在使用log4j日志,大多数日志都是用log4j日志文件编写的,如果由于在磁盘上写入而出现了一些错误,那么它应该在log4j进程中而不是在Websphere共享日志编写器中。
可能的原因是什么。对于报告错误,我是否过多地使用websphere日志文件。请给我你的反馈。
发布于 2014-06-06 15:25:09
您可能将过多的数据记录到日志中,但这也可能是不同进程之间i/o操作同步带来的延迟。顾名思义,它是一个共享日志编写器。使用WAS时,同一个节点(配置文件)的多个进程写入同一个文件,因此需要同步。
在管理术语中,此文件称为“服务日志”,默认情况下位于${LOG_ROOT}/activity.log中。
在大多数情况下,您不需要真正的日志,您可以禁用它,而不会造成严重的后果。
可以以下列方式禁用服务日志:cfgsvclog.html
您可以在全局上为您的单元使用wsadmin脚本。
在wsadmin/jython中:
for sl in AdminConfig.getid('/ServiceLog:/').splitlines():
AdminConfig.modify(sl, [['enabled', 'false']])
AdminConfig.save()广告模式
如果我不利用这个机会为WDR库做广告,我就不会是我自己了,这大大提高了WebSphere脚本的可读性和可维护性。因此,对于WDR,脚本如下所示:
for sl in getid('/ServiceLog:/'):
sl.enabled = 0
save()
sync()https://stackoverflow.com/questions/24083837
复制相似问题