IBM Support

在IBM i上HTTP服务器的错误排查攻略

Technical Blog Post


Abstract

在IBM i上HTTP服务器的错误排查攻略

Body

 在这篇博客里,我们将重点介绍在IBM i上HTTP server的故障排除和错误信息追踪办法。
 
引言
Apache是最流行的Web服务器端软件之一,由于其跨平台和安全性被广泛使用。随着IBM i上web应用的增加,IBM HTTP Server (Power by Apache) for i 上的应用也在逐渐增多,问题随之而来本文指导读者如何分析定位IBM i上HTTP 服务器的错误。
 
错误排查
在IBM i查找HTTP 服务器出错信息的方法有很多种,以下列出几种较常用的简单办法,让大家在IBM i上运行HTTP 服务器出现问题时,能快速有效的定位和解决问题。
通常HTTP服务器的错误问题有配置文件错误和运行时产生的错误。
HTTP服务器常见故障现象及可能原因见下表。

故障现象

可能原因

HTTP server无法启动

配置文件错误

系统原因

HTTP server的某些功能不能正常使用

配置文件错误

HTTP server崩溃

运行中错误

 
 
配置文件错误:常常导致HTTP server启动不了,或某些功能不能正常使用。
解决方法:
1. 使用GUI (IBM Web Administration for i)查看HTTP server的配置文件,有错误的配置行会被系统自动标记,可以直观的看出配置文件中的问题。
 2. 确定在GUI上没有错误信息,可以查看HTTP server的 job信息。Server启动不了的时候,用wrkjob命令直接查看server启动的job信息可以较快的找到问题所在。图像
 
运行中的错误:常常导致服务器崩溃,或某些功能无法使用。
解决方法: 
1. 查看HTTP server的access log和error log。页面访问出现异常时会在access log和error log中找到线索。关于log的显示和警告级别可以在配置文件中定义。
wrklnk '/www/serverA/logs'

图像 

2. 查看trace文件,有助于开发人员定位问题所在。
步骤如下:
a. 启动HTTP server加参数-vv
STRTCPSVR SERVER(*HTTP) HTTPSVR(testhttp '-vv')
b. 查看在子系统QHTTPSVR里线程最多的server job,并记住job号
wrkactjob sbs(QHTTPSVR)

图像 查看在子系统QHTTPSVR里线程最多的server job(按F11)
c. Dump该用户的trace 文件
DMPUSRTRC <job number>/QTMHHTTP/<your server name>
d. 查看lib QTEMP下的物理文件QAP0ZDMP
STRPDM
图像 e. 查看trace文件里有无exception 或是error 信息。

3. 查看iSeries系统log信息;可以帮助定位HTTP server不能启动是否是因为系统的原因(比如产品到期,使用受限等等)。
dspmsg *sysopr
 

 相关链接:
1. IBM Web Administration for i (http://www-03.ibm.com/systems/i/software/http/product/gui.html)

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]

UID

ibm11146292