Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

处理器:累积

IBA 探针中使用的累加处理器在输出上为每个具有相同属性的输入创建一个数字或离散状态时间序列;每次输入更改时,它都会获取其时间戳和值,并将它们附加到相应的输出序列中。如果设置了总持续时间 (total_duration),并且输出时间序列的长度大于持续时间,则会从时间序列中删除旧样本,直到不再如此。如果设置了最大样本数 (max_samples),并且输出时间序列的长度(以样本数表示)大于 max_samples,则会从时序中删除旧样本,直到不再如此。

参数 说明
输入类型 表(数字或离散状态)
输出类型 表(数字或离散状态,累积=True)
最大样本数 (max_samples) 限制最大样本数或计算结果为样本数的表达式(默认值:1024)
总持续时间 (total_duration) 按样本的总持续时间限制样本数。(以秒为单位)或计算结果为秒数的表达式(默认值:0)
图形查询 (graph_query)

图形上的一个或多个查询指定为字符串,或此类查询的列表。(字符串将在将来的版本中弃用。多个查询应提供表达式字段引用的所有命名节点(包括additional_properties)。图形查询在“操作”图形上执行。可以使用具有相应索引的“query_result”变量访问查询结果。例如,如果查询名称为“ps”的属性集节点,则结果将显示为“query_result[0][”ps“]”。

在收集器处理器 (*_collector, ) if_counter中,它用于选择一组节点进行进一步处理(例如,所有叶设备,或叶设备和主干设备之间的所有接口)

在其他处理器中,它用于常规参数化,并且仅支持作为查询列表。

graph_query: "node("system", role="leaf", name="system").
              out("hosted_interfaces").
              node("interface", name="iface").out("link").
              node("link", role="spine_leaf")"
graph_query: ["node("system", role="leaf", name="system")",
              "node("system", role="spine", name="system")"]

包含graph_query配置参数的非收集器处理器可以参数化,以使用图中任意节点(如属性集节点)中的数据。属性集允许您参数化各个业务部门的宏观级别 SLA。在下面的示例中,匹配graph_query类型property_set为带有标签probe_propset的节点。它是使用特殊query_result变量访问的,其中 Index 0 表示它是查询结果中的第一个节点。如果查询返回N了节点,则可以使用从 到 开头0N-1的索引来访问这些节点。 ps 是查询中引用的实际节点;其余的取决于节点的结构。强制转换是必需的int(),因为节点的值property_set是字符串。此处假定属性集节点具有标签probe_propset,并且该值accumulate_duration已创建。

graph_query: [node("property_set", label="probe_propset", name="ps")]
duration: int(query_result[0]["ps"].values["accumulate_duration"])

另一个示例是探测器可以验证合规性要求;合规性值可能会随时间而变化和/或可由多个探测器使用。此外,探测可以验证设备上的 NOS 版本。在这种情况下,属性集可用于定义当前 NOS 版本要求。如果明天发生变化:更改属性设置值,而不是进入探测阶段。

启用流式处理 (enable_streaming) 使输出级的示例流式传输(如果启用)。默认为 False 的可选布尔值。如果设置为 True,则此处理器的所有输出级都将在通用 protobuf 架构中进行流式传输。

示例:累积

假设配置

假设以下输入在时间 t=1

我们在时间 t=1 时有以下输出

假设以下输入在时间 t=2

我们在时间 t=2 时有以下输出

假设以下输入在时间 t=3

我们在时间 t=3 时有以下输出

假设以下输入在时间 t=4

我们在时间 t=4 时有以下输出

如果表达式用于max_samples或total_duration,则会为每个输入项计算表达式,并为每个输出项添加相应的键。

示例输入:

输出