第五十六章 历史监视器
History Monitor
维护性能和系统使用指标的历史数据库。其主要目的是:
- 提供性能基准并帮助分析性能问题。
- 帮助分析一段时间内的系统使用情况以进行容量规划。
该数据库在 SYS.History
类包中定义并保存在 %SYS
命名空间中。数据库结构的所有细节都在那里发布,并且可以通过 SQL
或正常的持久对象访问访问数据。 SYS.History
中的类文档还包含对所有可用的单个属性、方法和查询的描述。
数据通常分为性能(请参阅 SYS.History.Performance
)和系统使用情况(请参阅 SYS.History.SystemUsage
)数据。性能指标旨在以较短的时间间隔(默认情况下为 30
秒)进行采样,系统使用数据以较长的时间间隔(默认情况下为 5
分钟)进行采样。在每天开始时,将各个时间间隔样本作为平均值、最大值、最小值、标准偏差、中值和总计汇总到每小时和每天的表格中。可以选择为每个度量类保留哪些汇总函数(如果有)。间隔和每小时数据可能会在定义的天数(默认分别为七 (7
) 天和 60
天)后自动清除;每日摘要用于长期分析,可以手动清除。
基本指标
所有收集的指标都在 SYS.History
的四个 %SerialObject
类中定义。这些相同的类用作 Interval
、Hourly
和 Daily
数据库的基础,因此所有属性都定义为 %Numeric
类型以允许在摘要中使用小数值。
与性能相关的指标定义在:
SYS.History.Performance
— 此类中的属性是通用性能指标,如全局引用和例程调用。
注意:这些属性都是“计数器”类型,间隔数据以增量形式收集,代表上一个间隔内计数器的变化。当此数据汇总为每小时和每天的值时,数据将标准化为每秒速率
SYS.History.WriteDaemon
— 此类中的属性描述写入守护进程周期的性能。系统自动跟踪最近20
个写守护程序周期,历史监视器存储每个间隔内发生的周期的数据。通常,每个间隔内有多个周期。
系统使用指标定义在:
SYS.History.SystemUsage
— 此类中的属性跟踪系统的繁忙程度,但不会像性能数据那样快速或剧烈地变化,例如IRIS®
数据平台和许可证中的进程数信息。SYS.History.Database
— 此类跟踪每个本地数据库的数据库增长、文件大小和可用空间。
收集数据
要开始收集数据,必须执行以下操作:
- 使用
%SYS
命名空间中的系统监视器^%SYSMONMGR
实用程序在应用程序监视器(它是系统监视器)。默认情况下,这些类在%SYS
命名空间中注册。 - 在
%SYS
命名空间中重新启动系统监视器。
数据的详细区间集合定义在两个持久化类中:
SYS.History.PerfData
— 包括性能和写入守护程序类作为嵌入式对象。SYS.History.SysData
— 包括系统使用情况和数据库类。
必须在 Application Monitor
中激活相应的 %Monitor
类才能收集数据并构建历史数据:
%Monitor.System.HistoryPerf
— 收集SYS.History.PerfData
实例。%Monitor.System.HistorySys
— 收集SYS.History.SysData
实例。
当 IRIS
实例启动时,系统监视器(包括应用程序监视器)默认在 %SYS
命名空间中启动。但是,可以配置其他启动名称空间。 %Monitor
类默认仅在 %SYS
中提供,但可以使用 ^%SYSMONMGR
添加到其他已配置的启动命名空间。