第三十九章 使用^%SYS.MONLBL检查例程性能 - 开始监控

简介: 第三十九章 使用^%SYS.MONLBL检查例程性能 - 开始监控

第三十九章 使用^%SYS.MONLBL检查例程性能 - 开始监控

开始监控

可以选择要监控的例程和流程以及要收集的指标。集合的这些特征会一直保留到停止监控为止。按以下顺序向例程提供监视收集信息:

  1. 例程名称 – 输入要监控的例程名称列表。只能选择可从当前命名空间访问的例程。输入例程名称时不要使用前导 ^;名称区分大小写。可以使用星号 (*) 通配符来选择多个例程。输入最后一个例程名称后按 Enter 两次以结束列表。
  2. Select Metrics to monitor – 输入选择的指标类型的数量。最小指标的默认值为 1
Select Metrics to monitor
  1) Monitor Minimal Metrics
  2) Monitor Lines (Coverage)
  3) Monitor Global Metrics
  4) Monitor All Metrics
  5) Customize Monitor Metrics
 
Enter the number of your choice: <1>

每个选项包含哪些指标的说明如下:

  • 最小指标 - 监控下表中描述的指标。
Metric - Description
Metric#: 34 - RtnLine 例程行执行次数
Metric#: 51 - Time 执行该行所花费的时钟时间
Metric#: 52 - TotalTime 该行的总时钟时间,包括该行调用的子例程所花费的时间

时间度量是时钟时间,以秒为单位进行测量。

注意:递归代码的总时间当一个例程包含递归代码时,回调到同一子例程的那一行的TotalTime计数器只记录最外层调用的时间,在大多数情况下,这应该是运行递归循环的实际时间。之前的IRIS版本积累了相同代码多次迭代的时间,报告时间可能看起来太大了。

  • Line - 监视一个例程行执行的次数(Metric#: 34 - RtnLine)。
  • Global metr - 监控几个全局指标(Metric# 1-26,34-36,51,52)。
  • All metrics - 监视所有可用指标。
  • Customize metrics — 允许创建要监视的指标的自定义列表。可以选择%Monitor支持的任何标准性能指标。系统包类。当被提示输入度量项目编号时,输入一个问号(?)以查看可用度量的列表。例如:

Enter the number of your choice: <1> 5
 
Enter metrics item number (press 'Enter' to terminate, ? for list)
 
Metric#: ?
1.) GloRef: global refs
2.) GloSet: global sets
.
.
.
34.) RtnLine: lines of ObjectScript
.
.
.
51.) Time: elapsed time on wall clock
52.) TotalTime: total time used (including sub-routines)
Metric#:

这个例子没有显示完整的列表;最好在运行例程时检索当前列表。有关检索列表的方法,请参阅逐行监视器编程接口部分。

注意:对于所有收集,总是收集例程行数和时间(最小度量)。

  1. 选择要监视的进程——输入菜单中显示的选择的数字。所有进程的默认值是1。
Select Processes to monitor
  1.) Monitor All Processes
  2.) Monitor Current Process Only
  3.) Enter list of PIDs
 
Enter the number of your choice: <1>

^%SYS.MONLBL 当前不提供列表或选择 PID 的方法;但是,可以使用 ^%SS 实用程序或管理门户的进程页面(系统操作 > 进程)来查找特定的进程 ID 号。


Enter the number of your choice: <1> 3
 
Enter PID (press 'Enter' to terminate)
 
PID: 1640
PID: 2452
PID:
 

输入最后一个进程 ID 后按两次 Enter 结束列表。

一旦提供了必要的信息,^%SYS.MONLBL 就会为每个例程的每一行的计数器分配一个特殊的共享内存部分,并通知选定的进程监视已激活。

注意:由于共享计数器可能会被多个进程同时更新和/或正在运行的进程可能不会在同一时刻开始计数,因此计数器的精度可能会略有下降,从而导致计数低于预期。


Monitor started.
 
Press RETURN to continue ...
 

启动逐行监视器后,例程会显示一个更广泛的菜单。逐行监控选项部分描述了此扩展菜单上的每个选项。

相关文章
|
2月前
|
网络协议 Linux 数据处理
系统库调用运行在内核模式
【10月更文挑战第29天】系统库调用是应用程序与操作系统内核之间的重要桥梁,部分关键的系统库调用会运行在内核模式下,以实现对受限资源的访问、保证系统的稳定性和安全性以及协调多任务和资源共享等功能。了解系统库调用与内核模式的关系,对于深入理解操作系统的工作原理和应用程序的运行机制具有重要意义。
47 3
|
8月前
|
程序员
第四十二章 使用^%SYS.MONLBL检查例程性能 - 逐行分隔输出报告
第四十二章 使用^%SYS.MONLBL检查例程性能 - 逐行分隔输出报告
42 0
|
8月前
|
安全 Linux 开发者
⭐⭐⭐⭐⭐Linux C/C++ 进程崩溃诊断以及有效数据收集:解锁代码问题快速定位与修复的方法
⭐⭐⭐⭐⭐Linux C/C++ 进程崩溃诊断以及有效数据收集:解锁代码问题快速定位与修复的方法
462 1
|
8月前
|
机器学习/深度学习 算法 Linux
xenomai内核解析--实时内存管理--xnheap
Xenomai是一个实时操作系统(RTOS)层,用于Linux,旨在提供确定性的任务调度和服务。其内存管理机制包括一个名为xnheap的内存池,确保内存分配和释放的时间确定性,以满足硬实时系统的严格需求。
209 0
xenomai内核解析--实时内存管理--xnheap
|
8月前
|
监控
第三十八章 使用^%SYS.MONLBL检查例程性能
第三十八章 使用^%SYS.MONLBL检查例程性能
36 0
|
8月前
|
监控 数据库
第四十章 使用^%SYS.MONLBL检查例程性能 - 逐行监控选项
第四十章 使用^%SYS.MONLBL检查例程性能 - 逐行监控选项
42 0
|
8月前
|
监控
第四十一章 使用^%SYS.MONLBL检查例程性能 - 逐行监控报告示例
第四十一章 使用^%SYS.MONLBL检查例程性能 - 逐行监控报告示例
50 0
|
网络安全
服务器初始化及内核调优脚本
服务器初始化及内核调优脚本
|
监控 NoSQL 算法
linux下定位异常消耗的线程实战分析
linux下定位异常消耗的线程实战分析
226 0
linux下定位异常消耗的线程实战分析
|
人工智能 监控 算法
西门子S7-200 SMART PID控制实例,如何配置PID向导、调用子程序?如何创建状态图表测试程序?如何自整定PID参数?
PID控制器是应用最广泛的闭环控制器,它根据给定值与被控变量实测值之间的偏差,按照PID算法计算出控制器的输出量控制执行机构进行调节,使被控量跟随给定量进行变化并使系统达到稳定,自动消除各种干扰对控制过程的影响,其中P、I、D分别指比例、积分、微分。
西门子S7-200 SMART PID控制实例,如何配置PID向导、调用子程序?如何创建状态图表测试程序?如何自整定PID参数?