收集工作单元事件数据并生成报告

可使用工作单元事件监视器来收集有关可用于退款的事务的数据。已收集事务事件数据在无格式事件表中为不可读格式。可使用此数据来创建可读文本报告。

开始之前

要收集工作单元事件监视数据,您必须具有 SYSADM 或 SYSCTRL 权限。

关于此任务

本任务提供有关收集特定工作负载的工作单元事件数据的指示信息。

如果将 mon_uow_pkglistmon_uow_execlist 配置参数都设置为 ON,那么还会收集程序包列表和执行列表信息。或者,您可以变更 ALTER WORKLOAD 语句,以收集工作负载的程序包列表和执行列表信息,而不考虑 mon_uow_pkglistmon_uow_execlist 配置参数的设置,如下所示:
  • 要获取程序包列表信息,请将 BASE 选项替换为 BASE INCLUDE PACKAGE LIST 选项。
  • 要获取执行列表信息,请将 BASE 选项替换为 BASE INCLUDE EXECUTABLE LIST 选项。
  • 要获取程序包列表和执行列表信息,请将 BASE 选项替换为 BASE INCLUDE PACKAGE LIST, EXECUTABLE LIST 选项。
工作单元事件监视器收集用于标识应用程序事务和相应 CPU 使用情况的信息。工作单元事件监视器针对事务事件收集的信息的示例如下所示:
  • CPU 使用总时间(TOTAL_CPU_TIME 监视元素)
  • 应用程序句柄(APPLICATION_HANDLE 监视元素)

限制

如果您不具有 SYSADM 或 SYSCTRL 权限,那么输入数据值不可查看。

过程

要收集有关工作单元事件的详细信息,请执行以下操作:

  1. 通过发出 CREATE EVENT MONITOR FOR UNIT OF WORK 语句来创建称为 UOWEVMON 的工作单元事件监视器,如以下示例所示:
    CREATE EVENT MONITOR UOWEVMON FOR UNIT OF WORK
       WRITE TO UNFORMATTED EVENT TABLE
  2. 通过发出以下语句来激活 UOWEVMON 工作单元事件监视器:
    SET EVENT MONITOR UOWEVMON STATE 1
  3. 通过发出带语句历史记录的 ALTER WORKLOAD 语句以在工作负载级别启用工作单元事件数据收集。
    例如,要收集 FINANCE 和 PAYROLL 应用程序的工作单元数据,请发出以下语句:
    ALTER WORKLOAD finance COLLECT UNIT OF WORK DATA BASE
    ALTER WORKLOAD payroll COLLECT UNIT OF WORK DATA BASE
  4. 要收集工作单元事务事件,请重新运行工作负载。
  5. 连接到数据库。
  6. 使用 XML 解析器工具 db2evmonfmt 来生成基于无格式事件表中收集的事件数据的纯文本报告,如以下示例所示:
    java db2evmonfmt -d db_name -ue table_name -ftext -u user_id -p password
  7. 分析该报告,确定应用程序使用的 CPU 时间量,以便相应地进行扣费。
  8. 如果要对 FINANCE 和 PAYROLL 应用程序关闭工作单元数据收集,请发出以下语句:
    ALTER WORKLOAD finance COLLECT UNIT OF WORK DATA NONE
    ALTER WORKLOAD payroll COLLECT UNIT OF WORK DATA NONE

示例

以下报告示例是通过使用 db2evmonfmt 工具转换工作单元事件监视器在无格式事件表中收集的数据来获取的:
-------------------------------------------------------
Event ID               : 1
Event Type             : UOW
Event Timestamp        : 2008-10-31-13.29.04.130849
Member of detection    : 0
-------------------------------------------------------

Database Level Details
----------------------
Member Activation Time     : 2008-10-31T13:28:48.538973
Coordinator Member         : 0

Connection Level Details
------------------------
Application ID             : *LOCAL.gstager.081031172848
Application Handle         : 20
Application Name           : db2bp
Session Authorization ID   : GSTAGER
System Authorization ID    : GSTAGER
Connection Timestamp       : 2008-10-31T13:28:48.538973
Client Process ID          : 28167
Client Platform            : 30
Client Product ID          : SQL09070
Client Hostname            : gilera
Client Port Number         : 30143

UOW Level Details
------------------------
Start Time                 : 2008-10-31T13:28:51.560138
Stop Time                  : 2008-10-31T13:29:04.130849
Completion Status          : COMMIT
UOW ID                     : 5
Workoad Occurrence ID      : 1
Workload Name              : SYSDEFAULTUSERWORKLOAD
Workoad ID                 : 1
Client userid              : 
Client Workstation Name    : 
Client Application Name    : 
Client Accounting String   : 
Local Transaction ID       : 00000000000000EB
Global Transaction ID      : 0000000000000000000000000000000000000000
Log Space Used             : 0

UOW Metrics
------------------------
TOTAL_CPU_TIME                 : 7459
TOTAL_WAIT_TIME                : 0
ACT_ABORTED_TOTAL              : 0
...