第五十七章 历史监视器 - 汇总
汇总
Application Monitor
执行的 %Monitor.System.HistoryPerf
和 %Monitor.System.HistorySys
类也在每天结束时创建每小时和每天的摘要。摘要被定义为持久类 SYS.History.Hourly
和 SYS.History.Daily
;它们包括所有四个基类作为嵌入对象。
对于每个度量属性,系统可以计算每小时和全天的平均值、最大值(高水位线)、标准差、最小值、中值或总数。对于每个基类(SYS.History.PerformanceO
、SYS.History.WriteDaemon
、SYS.History.SystemUsage
或 SYS.History .Database
) 和每个汇总期间类,使用每个基类的 SetSummary()
方法。默认情况下,History Monitor
计算每小时和每日摘要的每个类的平均值、最大值和标准偏差。
注意:SYS.History.Performance
的计数器属性已标准化为这些计算的每秒速率(Total
除外)。
清除数据 创建摘要后,Application Monitor
会自动清除间隔和每小时数据库。间隔数据的默认值为七 (7
) 天,每小时数据的默认值为 60
天,但可以使用 SYS.History.PerfData
和SYS.History.Hourly
类中的 SetPurge()
方法进行更改. SYS.History.Daily
数据不会自动清除,但可以使用 SYS.History.Daily:Purge()
方法手动完成。
访问数据
由于数据库被定义为持久类,因此可以使用标准 SQL 或持久对象访问访问数据。在管理门户中使用 SQL 浏览器是查看创建的各种 SQL 模式/表(包括各个属性值)的一种快速简便的方法。
在 SYS.History
(SYS.History.PerfData
,SYS.History.SysData
,SYS.History.Hourly
,SYS. History.Daily
),可用于访问某个日期范围内的各个表格。
还为每个持久类提供了几种 Export()
方法,以便可以将各个表导出为 CSV
格式的文件,适用于 Microsoft Excel
等电子表格。特别是,SYS.History.PerfData:Export()
方法创建的文件格式与 ^mgstat
实用程序创建的文件非常相似。
添加用户定义的指标
可以将用户定义的指标添加到历史监视器(SYS.History
包):
- 创建一个或多个继承自
SYS.History.Adaptor
的类,并添加%Numeric
属性以定义指标。
注:用户编写的类必须在 %SYS
命名空间中,并且应该以“Z”
或“z”
开头,以防止与系统类命名冲突和升级过程中出现问题。
- 编写
Sample()
以实例化类并为每个属性提供周期值。在收集区间数据时调用此方法。 - 当编译类时,它会作为嵌入对象添加到
SYS.History
中的间隔持久类中。可以使用SYS.History.Adaptor
类中提供的INTERVAL
参数来选择收集时间和地点。这选择它添加到哪个间隔类以及哪个 %Monitor
类进行收集,如下表所示:
INTERVAL Selected | Interval Class Used | %Monitor Class Used |
“User” (default) | SYS.History.User | %Monitor.System.HistoryUser |
“UserPerf” | SYS.History.UserPerf | %Monitor.System.HistoryPerf |
“UserSys” | SYS.History.UserSys | %Monitor.System.HistorySys |
选择“UserPerf
”或“UserSys
”可与 SYS.History.PerfData
或 SYS.History.SysData
相同的时间间隔和相同的时间戳收集数据,这样可以更轻松地关联数据与系统数据。 “用户”让可以选择第三个(不相关的)时间间隔。
注意:SYS.History.Adaptor
类中有几个参数提供了如何收集和汇总属性的选项;
- 用户定义的类也作为嵌入对象添加到
SYS.History.UserHourly
和SYS.History.UserDaily
汇总类中。用户定义的指标会像系统指标一样汇总并自动清除。
重要提示:用户定义的度量类成为持久数据中的嵌入对象。数据收集开始后不应更改定义:删除对象会导致孤立数据;重新定义现有的类或属性可能会导致已存储的数据被误解。但是,由于模式演变功能,可以安全地添加新对象和属性。