缺省情况下,记录功能已启用,并且 Connector 在其操作期间遇到的所有错误都会写入 Tomcat_directory/logs 目录中的 connector.log 文件。唯一的例外是 blueprintLogger,它会将信息写入同一目录中其自己的日志 blueprint.log。
跟踪功能提供关于 Connector 操作的其他非错误信息以供调试之用。缺省情况下,跟踪功能已禁用。可以通过使用 JMX 控制台来将其启用。如果服务器已正确配置,那么可使用任何 JMX 控制台来启用跟踪功能。 这些是 jconsole 的指示信息,它是随 Java™ SDK 提供的 JMX 控制台。
Tomcat Application Server 必须经过配置才能接受来自 JMX 控制台的连接。
Dcom.sun.management.jmxremote
Dcom.sun.management.jmxremote.port=9004
Dcom.sun.management.jmxremote.authenticate=false
Dcom.sun.management.jmxremote.ssl=false
第一行启用 JMX 远程登录。 第二行指定用于侦听入局 JMX 控制台请求的端口。 后面两行禁用认证和加密,这在生产环境中可能不合要求。
有关更多高级 JMX 配置的信息,请查阅位于 http://Tomcat.apache.org/tomcat-5.5-doc/monitoring.html#Enabling_JMX_Remote 的 Tomcat 文档。
使用 jconsole 连接时无需更改任何 WebSphere® Application Server JVM 属性。 但是,必须创建启动脚本和属性文件。示例启动脚本如下:
@echo off
set WAS_HOME=C:\PROGRA~2\IBM\SDP\runtimes\base_v7
set HOST=localhost:2809
set PROPS_DIR=c:\temp
:: properties
set PROPS=
set PROPS=%PROPS% -Dcom.ibm.CORBA.ConfigURL=file:/%PROPS_DIR%/sas.client.props
set PROPS=%PROPS% -Djava.naming.provider.url=corbaname:iiop:%HOST%
:: classpath
set CLASSPATH=
set CLASSPATH=%CLASSPATH%;%WAS_HOME%\java\lib\tools.jar
set CLASSPATH=%CLASSPATH%;%WAS_HOME%\runtimes\com.ibm.ws.admin.client_7.0.0.jar
set CLASSPATH=%CLASSPATH%;%WAS_HOME%\runtimes\com.ibm.ws.ejb.thinclient_7.0.0.jar
set CLASSPATH=%CLASSPATH%;%WAS_HOME%\runtimes\com.ibm.ws.orb_7.0.0.jar
set CLASSPATH=%CLASSPATH%;%WAS_HOME%\java\lib\jconsole.jar
:: start jconsole using was jdk
start %WAS_HOME%\java\bin\javaw.exe -classpath %CLASSPATH% %PROPS%
sun.tools.jconsole.JConsole service:jmx:iiop://%HOST%/jndi/JMXConnector
以上示例撰写为 Windows .bat 脚本。您将需要把 WAS_HOME 的值更改为 WebSphere Application Server 安装目录的 8.3 路径,并把 PROPS_DIR 的值更改为保存了以下名为 sas.client.props 的属性文件的目录:
com.ibm.CORBA.securityEnabled=true
com.ibm.CORBA.authenticationTarget=BasicAuth
com.ibm.CORBA.authenticationRetryEnabled=true
com.ibm.CORBA.authenticationRetryCount=3
com.ibm.CORBA.validateBasicAuth=true
com.ibm.CORBA.securityServerHost=
com.ibm.CORBA.securityServerPort=
com.ibm.CORBA.loginTimeout=300
com.ibm.CORBA.loginSource=prompt
com.ibm.CORBA.loginUserid=
com.ibm.CORBA.loginPassword=
com.ibm.CORBA.krb5ConfigFile=
com.ibm.CORBA.krb5CcacheFile=
com.ibm.CSI.performStateful=true
com.ibm.CSI.performClientAuthenticationRequired=false
com.ibm.CSI.performClientAuthenticationSupported=true
# all false from here
com.ibm.CSI.performTLClientAuthenticationRequired=false
com.ibm.CSI.performTLClientAuthenticationSupported=false
com.ibm.CSI.performTransportAssocSSLTLSRequired=false
com.ibm.CSI.performTransportAssocSSLTLSSupported=false
com.ibm.CSI.performMessageIntegrityRequired=false
com.ibm.CSI.performMessageIntegritySupported=false
com.ibm.CSI.performMessageConfidentialityRequired=false
com.ibm.CSI.performMessageConfidentialitySupported=false
# not needed
#com.ibm.ssl.alias=DefaultSSLSettings
com.ibm.CORBA.requestTimeout=180
缺省情况下,跟踪器设置为 INFO 级别,这在 log4j 中为低优先级。 跟踪级别 INFO 意味着 Connector 中的跟踪语句不会写入 connectorTrace.log 文件。
使用若干跟踪器的组合通常会产生更好的效果。 调查问题时,请确保 Connector 跟踪器已启用。在调查 Rational ClearQuest 与 Service Desk 之间的问题时,请启用 cq、sdAdapter 和 serviceDesk 跟踪器。在执行蓝图推送时,请在启用 blueprint 跟踪器之外还启用 Rational 服务器跟踪(如 rqm 和 reqPro)。