使用消息日志来诊断问题

WebSphere® Application Server 可以将系统消息写入几个通用日志,包括 JVM ,进程和 IBM® 服务日志,可以检查这些日志以确定问题。

准备工作

JVM 日志是通过重定向System.outSystem.errJVM 到独立日志文件的流。 WebSphere Application Server 将格式化消息写入System.out流。 此外,应用程序和其他代码可以使用print()println()由流定义的方法。 某些 Developer Kit 内置,例如,printStackTrace()方法Throwable类也可以写入这些流。 通常,System.outlog 用于监视正在运行的应用程序服务器的运行状况。 可以使用 System.out 日志和 System.err 日志进行问题确定。 System.err 日志包含异常堆栈跟踪信息,这在执行问题分析时很有用。

由于每个应用程序服务器都表示一个 JVM,所以每个应用程序服务器以及它的所有应用程序都有一组 JVM 日志。在缺省情况下,这些日志在以下目录中:
  • [AIX Solaris HP-UX Linux Windows]install_root/profiles/profile_name/logs/server_name
  • [IBM i]profile_root/logs/server_name

进程日志是通过重定向STDOUTSTDERR进程到独立日志文件的流。 本机代码 (包括 Java™ 虚拟机 (JVM) 本身) 将写入这些文件。 作为一般规则, WebSphere Application Server 不会写入这些文件。 但是,这些日志可能包含与本机代码中的问题相关的信息或者由 JVM 写入的诊断信息。

与 JVM 日志一样,每个应用程序服务器都有一组进程日志,因为每个 JVM 都是一个操作系统进程。

不推荐使用的功能部件: IBM 服务日志同时包含写入到以下内容的 WebSphere Application Server 消息:System.outstream 和一些特殊消息,这些消息包含通常不感兴趣的扩展服务信息,但在分析问题时可能很重要。 节点上的所有 WebSphere Application Server JVM (包括所有应用程序服务器) 都有一个服务日志。 IBM 服务日志以二进制格式维护,需要特殊工具进行查看。 此查看器(即记录和跟踪分析器)提供了其他诊断功能。 此外,二进制格式还提供了由 IBM 支持组织使用的功能。

除了这些通用日志外, WebSphere Application Server 还包含特定于特定组件或活动的其他专用日志。 例如,HTTP 服务器插件维护一个特殊日志。 这些日志通常并不引人注意,但在执行特定的问题确定过程时,我们可能会指示您检查这些日志中的一个或多个。 有关如何以及何时查看插件日志的详细信息,请参阅“不显示 Web 资源”主题的“通过应用程序服务器访问 Web 资源并绕过 HTTP Server”子节。

[AIX Solaris HP-UX Linux Windows]注: 系统日志 (SYSLOG) 仅在 WebSphere Application Server for z/OS®上受支持。 WebSphere Application Server 日志记录不利用操作系统日志, z/OS除外。

有关此任务

有时,可以通过检查 WebSphere Application Server的日志输出来诊断服务器和应用程序问题。

过程

确定要实现的日志类型:

示例

如何将 SYSPRINT 和 SYSOUT 输出定向到 HFS 文件。

如果您熟悉 UNIX 或 Windows 环境,那么可能不愿意使用 SDSF (或 IOF) 的工具来查看来自服务方的 SYSPRINT 和 SYSOUT 输出。 如果您宁愿在 Telnet 会话中使用熟悉的编辑器(例如 vi)查看输出,那么可以将 SYSPRINT 和 SYSOUT 输出重定向到 HFS 中的文件。