更改在日志文件中使用的消息标识

通过设置 com.ibm.websphere.logging.messageId.version 系统属性,可以更改服务器日志中消息标识的缺省格式。

准备工作

不推荐使用的功能: 从 WebSphere® Application Server V 6.0开始,根据标准化系统对日志记录文件进行格式化。 但是,仍将缺省运行时行为配置为使用较旧的格式。 在 WebSphere Application Server的新发行版中,将更改写入日志文件的消息标识,以确保它们不会与其他 IBM® 产品冲突。 缺省运行时行为仍配置为使用较旧的消息标识,在 V 9.0中不推荐使用。

作为缺省运行时行为的结果,您可能会看到使用 4 个字母的消息前缀和 5 个字母的消息前缀的消息混合在一起。 本主题中的信息说明如何更改配置,以使消息一致显示 5 个字母的消息前缀。 缺省行为未更改,将对依赖于 4 个字母消息前缀的客户的影响降至最低。

下面是 trace.log 文件中使用缺省消息标识的条目样本。 注意,消息标识是 PMON0001A。
[1/26/05 10:17:12:529 EST] 0000000a PMIImpl       A   PMON0001A: PMI is enabled
跟着是使用新消息标识的同一个条目的样本。 注意,消息标识是 CWPMI0001A。 所有新的 WebSphere Application Server 消息标识都以 "CW" 开头。
[1/26/05 10:17:12:529 EST] 0000000a PMIImpl       A   CWPMI0001A: PMI is enabled.

有关此任务

如果正在使用的日志记录工具使用的是标准格式,那么可能要更改缺省的配置设置来适当地格式化日志记录输出。 如果希望输出格式在各个应用程序服务器都相同,那么需要为单元中的每一个 Java 虚拟机 (JVM) 更改配置。

过程

  • 要配置日志记录文件,让它们为每个进程都使用较新的、5 个字母的错误消息前缀,请通过 wsadmin 实用程序使用下列命令:
    • 使用 Jacl:
      set cfgJvmList [$AdminConfig list JavaVirtualMachine] 
      set cfgJvm [lindex $cfgJvmList JavaVirtualMachine] 
      $AdminConfig create Property $cfgJvm {{name com.ibm.websphere.logging.messageId.version} {value 6} {required false}} 
      $AdminConfig save 
    • 使用 Jython:
      ls = java.lang.System.getProperty("line.separator")
      cfgJvmList = AdminConfig.list("JavaVirtualMachine").split(ls)
      print cfgJvmList
      cfgJvm = cfgJvmList[JavaVirtualMachine] 
      AdminConfig.create('Property', cfgJvm, [['name', 'com.ibm.websphere.logging.messageId.version'], ['value', '6'], 
      ['required', 'false']]) 
      AdminConfig.save()

      其中 JavaVirtualMachine 是想要使用的进程的编号。

      指定进程后,所列示的第一个进程是 0,第二个进程是 1,依次类推。 为了保持输出格式一致,请为单元中的每一个 JVM 进行更改。

      重要信息: 重新启动应用程序服务器以使更改生效。
  • 要更改配置以使日志文件在 startServer.logstopServer.log 文件中包含更新的 5–letter 消息前缀,请修改 startServerstopServer 脚本中的install_root/bin目录。
    [Windows]将下面一行代码添加到脚本的 :WRITE_PROPERTIES_FILE 部分中:
    >> %TMPJAVAPROPFILE% echo com.ibm.websphere.logging.messageId.version=6
    [Linux][AIX][HP-UX][IBM i][Solaris]在这些脚本中,将以下代码附加到现有 D_ARGS 参数的末尾:
    $DEBUG -Dcom.ibm.websphere.logging.messageId.version=6 

结果

写入日志文件中的消息标识现在和新标准一致了。