原创作品。出自 “深蓝的blog” 博客,深蓝的blog:javascript:void(0)
近日。在为驻地project师查看was日志时,发现大量缺失标识符错误。
was日志的位置:
logs | 全部类型的日志文件,比如 SystemOut.log、tranlog、FFDC、activity.log等等。 路径在/logs/server*/以下。 |
was系统日志:
WebSphere Application Server日志记录基础结构是基于标准 Java的日志记录基础结构(即java.util.logging)建立的。在一个典型的 WebSphere Application Server配置中,日志记录被设置为将普通和严重的日志消息分别写入两个文件。即SystemOut.log和 SystemErr.log。
除了system日志,还有native日志,例如以下:
但这两个日志。与system日志是不同的。这两个文件实际上是由 JVM本身处理的,仅仅包括与该 JVM的操作有关的消息,而不包括来自 WebSphere Application Server执行时的消息。
在日志中发现大量例如以下类型错误:
跟身边的开发朋友简单请教了一下,说这是返回的XML格式不正确。缺少结束标识。
于是在翻看了冗长的日志信息后,发现大量的错误都是这一类的:缺少结束标识。
反馈信息给驻地人员。建议其联系系统开发project师。查看代码是否有问题。
另外在与驻地project师沟通后,发现之所以查看日志,因为之前系统时WAS会无故卡死。后来他把初始堆栈改小了,之后系统临时执行正常了。
最后,还是建议他多观察几日,看看堆栈改小能否满足需求。有可能是存在内存溢出现象,但日志中没捕获到如systemout之类的信息。所以仍须要观察。
对于标识符错误。须要尽快联系开发查看。
突然想到点有意思的,这里想提一嘴内存溢出问题,常见与java开发程序中。因为代码质量,常会有对象占用不正确其释放。就像是一个屋子里,一个类的作用是把人放到屋子里。而代码机制有问题,new出一个深蓝来,之后功能上又反复new出一个深蓝来,再然后不停的new出深蓝来。一直下去,整个屋子被同一个深蓝占满了。而实际上我们仅仅须要一个深蓝。而这个屋子挤满了深蓝以后,有一个深蓝从窗户被挤出去了。这就内存溢出了。
对于面向对象中的类,就像是数据库中的表,对象就像是表中的一条数据。我们使用对象的时候就是向类传參。
附录:
以下部分was日志信息:
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: Error on line 1: 元素类型“项目名称类别”必须用匹配的结束标记“</项目名称类别>”终止。
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Error on line 1:元素类型“项目名称类别”必须用匹配的结束标记“</项目名称类别>”终止。
{http://xml.apache.org/axis/}hostname:localhost.localdomain
[15-7-8 21:00:00:268 CST] 00000039 SystemErr R Error on line 1:元素类型“项目名称类别”必须用匹配的结束标记“</项目名称类别>”终止。
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: Error on line 1: 元素类型“项目被关联人”后必须紧跟属性规范“>”或“/>”。
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Error on line 1:元素类型“项目被关联人”后必须紧跟属性规范“>”或“/>”。
*******************************************蓝的成长记系列****************************************************