您可以在 <ComponentReconciliation> 部分中为您的自定义度量标准系列定义调整算法。 调整算法用于支持受监视设备的配置更改。 设备对给定度量标准系列的支持情况可视为设备的配置。 例如,接口的数量以及接口的配置表示设备对接口度量标准系列的支持情况。 在对设备的接口进行更改时,Data Aggregator 必须更新对这些接口的表示,以帮助确保监视是最新的。 在此配置更新期间会应用调整算法。
为了支持某些度量标准系列,在 Data Aggregator 中创建了各个组件项。 这些组件项表示支持给定度量标准系列的设备配置。 以接口度量标准系列作为示例,Data Aggregator 创建端口组件项来表示设备的每个网络接口。
通过设备集合将监视配置文件应用于设备时,将进行组件项的初始发现和创建。 为了支持受监视设备上的更改,会根据需要进行后续的组件发现。 在进行后续组件发现之后,便会应用调整算法,以确定更新组件项的集合所需进行的更改。
当设备的配置发生更改时,有四种情况需要评估:
调整算法定义了可在现有组件项与新发现结果之间比较的一组属性。 通过对属性值进行比较来确定哪些新发现结果与现有的组件项匹配,哪些表示新组件或更改的组件。 此比较将产生以下结果:
您可以在调整算法中定义两种匹配类型:ExactMatch 和 BestofMatch。
指示发现结果必须与组件项的所有指定属性匹配。
示例:ExactMatch 调整算法
以下示例显示定义 ExactMatch 匹配类型的调整算法:
<ComponentReconciliation>
<MatchAlgorithmList>
<MatchAlgorithm>
<AlgorithmType>Exact</AlgorithmType>
<MatchAttributeList>
<MatchAttribute>
<Name>{http://im.ca.com/core}Item.Name</Name>
</MatchAttribute>
<MatchAttribute>
<Name>{http://im.ca.com/inventory}Process.Path</Name>
</MatchAttribute>
<MatchAttribute>
<Name>{http://im.ca.com/inventory}Process.Arguments</Name>
</MatchAttribute>
</MatchAttributeList>
</MatchAlgorithm>
</MatchAlgorithmList>
</ComponentReconciliation>
此算法表示发现结果必须匹配现有组件项的所有三个属性,以便完全匹配。 如果找不到完全匹配,以下条件会生成下列结果:
指定最少的属性数量,这些属性必须与现有组件项中的相同数量的属性匹配。 每个属性都包括一个“必需”键。 如果“必需”键设置为“true”,该属性必须是匹配的属性之一。
示例:BestofMatch 调整算法
以下示例显示定义 BestofMatch 匹配类型的调整算法:
<ComponentReconciliation>
<MatchAlgorithmList>
<MatchAlgorithm>
<AlgorithmType>BestOf</AlgorithmType>
<LeastMatchCount>2</LeastMatchCount>
<MatchAttributeList>
<MatchAttribute>
<Required>true</Required>
<Name>{http://im.ca.com/core}Item.Name</Name>
</MatchAttribute>
<MatchAttribute>
<Name>{http://demo/custom}Process.Path</Name>
</MatchAttribute>
<MatchAttribute>
<Name>{http://demo/custom}Process.Arguments</Name>
</MatchAttribute>
</MatchAttributeList>
</MatchAlgorithm>
</MatchAlgorithmList>
</ComponentReconciliation>
此算法指定以下要求:
注意:匹配的属性值之一必须是必需的属性。
在 BestOf 匹配算法包含在调整定义中时,会有以下结果:
注意:如果多个组件的匹配属性数相同,会随机选择匹配组件项。 因此,karaf 日志会记录一条关于此条件的警告。
可向调整算法中添加多个匹配算法。 添加了多个调整算法时,它们将匹配优先级。 MatchAlgorithmList 顶端的匹配算法有最高优先级。 底部的匹配类型优先级最低。
当调整算法中包括多个匹配类型时,会有以下结果:
例如:

由于算法 1 的优先级较高,因此发现结果 A 与组件 1 匹配。
例如:

由于算法 1 的优先级较高,因此发现结果 A 与组件 1 匹配。
例如:

在此示例中,发现结果 B 与组件 1 匹配的属性多于与组件 2 匹配的属性 2.发现结果 A 与组件 1 匹配,因为它使用优先级较高的算法来匹配。 因此,组件 1 的匹配会转至发现结果 A,发现结果 B 匹配组件 2. 2
注意:如果未定义调整算法,Data Aggregator 将使用 Item.Name 属性匹配组件。
|
版权所有 © 2014 CA Technologies。
保留所有权利。
|
|