我有一个很长的日志文件,用log4j
, 10threads
写入日志。我正在寻找日志分析器工具,它可以找到用户等待很长时间的行(即同一线程的日志条目之间的差异超过一分钟)。
PS 我正在尝试使用OtrosLogViewer
,但它通过某些值(例如,通过线程 ID)进行过滤,并且不会在行之间进行比较。
PPS 新版本的 OtrosLogViewer 有一个“Delta”列,用于计算 adj 日志行之间的差异(以毫秒为单位)
谢谢你
我正在使用OtrosLogViewer来分析我的glassfish日志文件.但似乎软件无效.我认为我的模式是错误的.
type=log4j
customLevels=SEVERE=FATAL,WARNING=WARN,CONFIG=INFO,FINE=DEBUG,FINER=TRACE,FINEST=TRACE,INFO=INFO
pattern=[#|TIMESTAMP|LEVEL|PROP(ProductName-Version)|LOGGER|_ThreadID=PROP(ThreadID);_ThreadName=THREAD;PROP(Properties);|MESSAGE|#]
dateFormat=yyyy-MM-dd'T'HH:mm:ss.SSSZ
name=GlassFish logger
charset=UTF-8
Run Code Online (Sandbox Code Playgroud)
这是我的服务器日志示例(Glassfish 4.0):
[2013-10-13T17:36:03.841+0700] [glassfish 4.0] [WARNING] [endpoint.activation.failure] [javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.inbound] [tid: _ThreadID=34 _ThreadName=admin-listener(1)] [timeMillis: 1381660563841] [levelValue: 900] [[
RAR8501: Exception during endpoint activation for ra [ jmsra ], activationSpecClass [ com.sun.messaging.jms.ra.ActivationSpec ] : javax.resource.ResourceException: MQRA:EC:Invalid destinationLookup jms/NewMessage configured in ActivationSpec of MDB for no JNDI name found]]
[2013-10-13T17:36:03.841+0700] [glassfish 4.0] [SEVERE] [containers.mdb.create_container_exception] [javax.enterprise.system.container.ejb.mdb.org.glassfish.ejb.mdb] [tid: _ThreadID=34 _ThreadName=admin-listener(1)] [timeMillis: 1381660563841] [levelValue: 1000] [[
MDB00017: [NewMessage]: Exception in creating message-driven bean container: [java.lang.Exception]]]
Run Code Online (Sandbox Code Playgroud)
如何修改我的模式使其工作?我对OtrosLogViewer的模式很困惑.
谢谢.
我开始使用Otros日志查看器来分析我的log4j日志,但找不到按方法或类名过滤日志的方法,也找不到计算错误的方法(例如)在方法"foo"中.
我会很感激一个很好的解决方案.
谢谢