源和报告器的组件标识
公共基本事件中的组件标识字段用于指示系统中遇到事件(sourceComponentId)所描述情况的组件,以及发出事件(reporterComponentId)的组件。
这两个组件通常是同一组件,在此情况下仅提供
sourceComponentID。下面是在要公共基本事件中使用这两个元素时的一些注释和情况:
- sourceComponentID 始终用于标识遇到事件所描述情况的组件。
- reporterComponentID 用于标识实际上产生和发出事件的组件。此元素通常只在组件发出的事件中使用,而此组件监视另一个组件并提供关于此组件的操作信息。监视组件(例如,Tivoli® 代理程序或硬件设备驱动程序)由 reporterComponentID 标识,而受监视组件(例如,受监视的服务器或硬件设备)由 sourceComponentID 标识。
可能会误用 reporterComponentID 来标识为组件提供事件转换或管理服务的组件,例如,标识将组件捕获的事件转换成公共基本事件格式的适配器。事件转换功能被认为是组件的扩展,而不会单独标识。
源组件 | 报告器组件 | 描述 |
---|---|---|
location locationType | 组件位置 | 标识组件的位置。 |
component componentIdType | 组件名 | 标识组件的资产名,以及组件类型。 |
subcomponent | 子组件名称 | 标识组件的特定部分或子组件,如软件模块或硬件部分。 |
application | 业务应用程序名称 | 标识业务应用程序或进程,组件是它的一部分并为它提供服务。 |
instanceId | 操作实例 | 标识组件的操作实例,即组件的实际运行实例。 |
processId threadId | 操作实例 | 在软件操作系统的上下文(即,产生事件时运行的操作系统进程和线程)中标识组件的操作实例。 |
executionEnvironment | 操作实例 组件位置 | 通过标识主管组件操作实例的环境名称(如软件应用程序的操作系统名、Java™ 2 平台企业修订版 (J2EE) 应用程序的应用程序服务器名或硬件部件的硬件服务器类型),提供关于组件或其位置的操作实例的其他信息。 |
公共基本事件规范 [CBE101] 提供关于这些字段必需格式的信息,而 Common Base Event Developer’s Guide [CBEBASE] 提供一般用法准则。本节将提供关于如何格式化和使用问题确定事件的其中一些字段的其他信息,这些信息可用于阐述和扩展其他文档中提供的信息。
- Component
- 问题确定事件中的组件字段用于标识与事件关联的易管理资产。易管理资产是开放供解释的,但较好的工作定义是,易管理资产表示可单独获得或开发、部署、管理和维护的硬件或软件组件。典型组件名的示例为:
- IBM® eServer™ xSeries x330 型
- IBM WebSphere® Application Server V5.1(5.1 是版本号)
- 内部开发的组件软件应用程序的名称
- subComponent
- 问题确定事件中的子组件字段标识与事件关联的组件的特定部分。子组件名通常不是可管理的内容,但是,在对组件的内部缺陷进行诊断时,子组件名能够提供内部诊断信息,即“哪部分有问题?”典型子组件及其名称的示例是:
- 服务器系统中的 Intel Pentium 处理器(Intel Pentium IV 处理器)
- Web 应用程序服务器中的企业 bean 容器(企业 bean 容器)
- 操作系统中的任务管理器(Linux 内核任务管理器)
- Java 类和方法的名称(myclass.mycompany.com 或 myclass.mycompany.com.methodname)。
- componentIdType
- componentIdType 字段是公共基本事件规范所必需的,但为问题确定事件提供最小值。对于大多数问题确定事件,鼓励使用应用程序字段而不使用 componentIdType 字段中提供的值。componentIdType 字段标识组件的类型;应用程序由应用程序字段标识。
- application
- application 字段列示为公共基本事件规范中的可选值,但只要此值可用就应在问题确定事件中提供。此字段不是问题确定事件的必需字段的唯一原因在于,某些情况下发出组件可能不知道完整业务应用程序。
- instanceId
- instanceId 字段列示为公共基本事件规范中的可选值,但只要此值可用就应在问题确定事件中提供。
当标识软件组件时应始终提供实例标识,并标识组件的操作实例(例如,与事件实际相关联的已安装软件映像的操作实例)。当这些组件支持操作实例的概念时,为硬件组件提供此值。
提供的值的格式由组件定义,但必须是分析系统可用来(人工或程序)标识已标识组件的特定运行实例的值。示例包括:- IBM WebSphere Application Server 的单元、节点和服务器名称
- Java 企业 bean 的已部署 EAR 文件名
- 硬件处理器的序列号
- processId
- processId 字段列示为公共基本事件规范中的可选值,但只要此值可用且适用就应在问题确定事件中提供。始终为软件生成的事件提供它,并且标识与组件中标识的组件相关联的操作系统进程。将线程标识的格式与操作系统(或其他运行环境,如 Java 虚拟机)的格式相匹配。此字段通常不适用或不会用于硬件(例如,固件)发出的事件。
- threadId
- threadId 字段列示为公共基本事件规范中的可选值,但只要此值可用且适用就应在问题确定事件中提供。始终为软件生成的事件提供它,并且标识检测到或已发出事件时活动的操作系统线程。此建议值得注意的异常是一些操作系统或运行环境不支持线程。将线程标识的格式与操作系统(或其他运行环境,如 Java 虚拟机)的格式相匹配。此字段通常不适用或不会用于硬件(例如,固件)发出的事件。
- executionEnvironment
- 组件是本机软件应用程序时的操作系统名称。
- 组件是 Java 2 Platform, Standard Edition (J2SE) 应用程序时的操作系统/Java 虚拟机名称。
- 组件是 servlet 时的 Web 服务器名称。
- 组件是 portlet 时的门户网站服务器名。
- 组件是企业 bean 时的应用程序服务器名称。