第四十章 使用^%SYS.MONLBL检查例程性能 - 逐行监控选项
如果在监视器运行时调用 ^%SYS.MONLBL
,将有以下菜单选项:
Line-by-Line Monitor 1.) Stop Monitor 2.) Pause Monitor / Resume Monitor 3.) Clear Counters 4.) Report - Detail 5.) Report - Summary 6.) Report - Delimited (CSV) Output 7.) Report - Procedure Level Enter the number of your choice:
前三个选项是不言自明的:
Stop Monitor
— 停止所有^%SYS.MONLBL
监控;取消分配计数器内存并删除收集的数据Pause Monitor
— 暂停收集并维护所有收集的数据。这在查看收集的数据时可能很有用,以确保计数不会随着报告的显示而改变。此选项仅在监视器正在运行时出现。
Resume Monitor
— 暂停后恢复收集。此选项仅在暂停监视器时出现。Clear Counters
— 清除所有收集的数据,但继续监视和收集新数据。
Report Line-by-line Statistics
部分更详细地解释了四个报告选项。
Report Line-by-line Statistics
当选择报告已收集的指标的统计信息(选项 4-7
)时,需要提供有关例程如何报告统计信息的信息。
有四种类型的报告可供选择:
Detail
— 为所选例程中的每一行生成所选指标的报告。该报告累积并显示每个性能列的总计。Summary
— 为每个选定例程生成一份摘要信息报告,包括覆盖范围和时间。该报告按覆盖百分比对例程进行排序Delimited (CSV) Output
— 生成与详细报告相同的报告信息,但将其显示为逗号分隔的输出,以便于将其导入到电子表格中。Procedure Level
— 在所选例程内的子例程级别生成所选指标的报告。 IRIS 允许在各个子例程、过程和函数级别分析使用情况。可以快速查看哪些子程序运行时间最长,从而分析和提高性能。
根据选择的报告类型,可以选择显示信息的方式:
- 如果选择详细报告或摘要报告,还可以选择是否要包括对在选择的每个例程中执行的行的覆盖率分析。例如:
Enter the number of your choice: 4 Include Coverage Analysis summary (Y/N)? y
- 接下来,对于除摘要报告之外的所有例程,从具有可用统计信息的受监视例程列表中选择一个或多个例程;为所有可用例程输入星号 (
*
)。例如:
The following routines have been executed during the run, and have detail statistics available for them. 1) JRNDUMP 2) JRNOPTS 3) JRNSTART 4) JRNSWTCH 5) JRNUTIL 6) JRNUTIL2 Enter list of routines, or * for all Routine number (*=All)? * - All
- 如果正在输入例程名称,请在输入最后一个例程后,再次按
Enter
结束列表。例如:
Enter list of routines, or * for all Routine number (*=All)? 1 - JRNDUMP Routine number (*=All)? 2 - JRNOPTS Routine number (*=All)? 5 - JRNUTIL Routine number (*=All)? FileName:
- 可以为输出输入文件名或完整目录路径。也可以不输入任何内容,然后按
Enter
以在终端上显示报告。
如果输入文件名而不是路径,%SYS.MONLBL
会在当前命名空间的全局默认数据库的目录中创建文件。例如,如果在 USER
命名空间中运行 %SYS.MONLBL
:
FileName: monlbl_JRN_dtl.txt
在 install-dir\mgr\user
中为报告创建一个名为 monlbl_JRN_dtl.txt
的文件。
- 按
Enter
以选择的格式开始报告您正在收集的指标。
逐行监控报告示例部分显示了每个报告选项的示例。