事件检测器处理器用于确定收到的事件记录是否满足某些条件,以及是否应打开一个事件。 事件将识别条件出现的位置以及条件的潜在持续时间。 例如,如果您正在使用数据源来报告车辆位置及其当前速度,则当车辆超过特定速率或车辆位置与感兴趣区域(地理围栏)相交时,处理器可用于打开事件。 当接收到被追踪车辆的位置和速度更新信息时,GeoEvent Server 将更新持续事件;当接收到的事件记录表明车辆不再超速行驶或不再处于地理围栏范围内时,该事件将关闭。
示例
以下是事件检测器处理器的用例:
- 该处理器可用于监控车队的超速状况。 当车辆超过一定速度时,系统可能会生成一个用来指示超速开始的时间和地点的事件。 可对处理器进行配置,从而将超速事件报告为时间点事件或在车辆不再超速时结束的累积(持续)事件。 后者可以提供有关超速事件持续时间的信息。
- 该处理器可用于监控现场的应急响应人员。 当救护车离开其指定的服务区域(地理围栏)时,系统可能会生成事件以指示其出发。 随后可以由调度中心或运营中心对这些事件进行处理。 也可使用相同的事件来通知其他应急响应人员覆盖范围存在空隙。
用法说明
使用事件检测器处理器时,请记住以下事项:
- 不应将事件检测与过滤的用例相混淆。 事件检测会主动维护内存中每个事件的状态,并将在事件通过时更改事件的方案。
- 处理器发送的事件记录的结构(或方案)与安装 GeoEvent Server 时创建的事件点 GeoEvent 定义相匹配。 事件点 GeoEvent 定义的方案如下表所示。
- 如果保留源字段参数设置为是,则方案将在保留原始事件字段的同时追加以下事件字段。 这个新的 GeoEvent 定义可能包含多个几何字段。 原始源事件字段名称将被修改,以避免与事件方案中的字段名称发生命名冲突。 GeoEvent Server 标签(尤其是 TRACK_ID、TIME_START 和 GEOMETRY 标签)将从源属性字段移至事件属性字段,如下所述。
字段名 | 描述 | 数据类型 |
---|---|---|
id | 处理器为每个新事件创建的唯一标识符 (GUID)。 | 字符串 |
name | 在配置处理器以描述由处理器创建的事件时选择的非唯一名称。 | 字符串 |
type | 事件的类型为时间点或累积。 | 字符串 |
status | 事件的状态为已开始、持续或已结束。 | 字符串 |
alertType | 事件的警报类型为通知、警告或紧急。 | 字符串 |
openCondition | 一种逻辑条件,在符合该条件时会触发新事件的创建或现有事件的更新。 | 字符串 |
closeCondition | 一种逻辑条件,在符合该条件时会触发现有事件的关闭。 如果忽略,则将关闭条件假定为开启条件的逻辑否定。 | 字符串 |
description | 处理器生成的事件状态、发生日期和时间、开始日期和时间或持续时间(以秒为单位)的描述。 | 字符串 |
timestamp | 事件开始或最后一次更新的日期和时间。 该值将以长整型表示(以新纪元毫秒为单位)。 TIME_START 标签将应用于此字段。 | 日期 |
definitionName | 与事件记录(系统在接收到该事件记录时创建了事件)相关联的 GeoEvent 定义的名称。 | 字符串 |
definitionOwner | 与事件记录(系统在接收到该事件记录时创建了事件)相关联的 GeoEvent 定义的所有者。 | 字符串 |
trackId | 用于唯一标识可跟踪资产的值。 发送到事件检测器处理器的事件记录必须具有标记为追踪 ID 的字段。 TRACK_ID 标签将应用于从处理器发出的事件的此字段。 | 字符串 |
geometry | 与处理器的事件输出相关联的点、多点或折线几何。 GEOMETRY 标签将应用于此字段。 当输出几何类型为点时,不保留中间折点。 当所选输出几何类型为多点或折线时,连续事件的中间折点将包括在内。 | 几何 |
duration | 累积事件正在持续的毫秒数。 仅在接收到新观测点时更新此值。 时间点事件的持续时间将始终为零。 | 长整型 |
dismissed | 设置为 false 的标记表示事件未关闭。 字段计算器处理器可用于更改此属性值,但事件检测器处理器会将所有从处理器发出的事件的属性值清除为 false。 | 布尔 |
assignedTo | 此值用于指示为其分配了事件的用户或运算符。 字段计算器处理器可用于更改此属性值,但事件检测器处理器将由于处理器发出更新的事件而将属性值重置为空字符串。 | 字符串 |
note | 此值用于记录有关为其分配了事件的用户或运算符的信息。 字段计算器处理器可用于更改此属性值,但事件检测器处理器将由于处理器发出更新的事件而将属性值重置为空字符串。 | 字符串 |
- 事件检测器处理器使用指定的属性或空间条件来检测事件、生成新事件以及更新持续事件。 事件记录的追踪 ID 可以唯一地标识可跟踪资产、确定是否可以更新现有事件或确定是否应创建新事件。
- 类型为时间点的事件将立即关闭,且不会为任何一段时间输入已开始或持续状态。 时间点事件的持续时间将始终为零。
- 类型为累积的事件通常仅会在接收到满足关闭条件的事件记录时关闭。 如果在指定的一段时间内未接收到与该事件相关的事件记录,则可以通过管理方式关闭已开始或持续状态下的事件。 请参阅下方的过期时间(秒)参数。
- 如果主动管理的开放事件超过指定数量,则将通过管理方式关闭已开始或持续状态下的事件。 有关详细信息,请参阅管理全局设置中的开放事件的最大数量。
- 过期时间(秒)参数可指定通过管理的方式关闭与资产相关联的已开始或持续事件之前,处理器应等待多长时间来接收被追踪资产的更新。 如果在过期时间达到零之前未接收到来自被跟踪资产的更新,则即使未接收到满足关闭条件的事件记录,事件也将过期并转换为已结束状态。
- 将过期时间(秒)参数设置为 0 将禁用处理器的自动过期功能。 例如,如果事件管理器在其开放事件的缓存中存有空间,则开放事件将保持为已开始或持续状态。 但是,仅当接收到满足开启条件的后续事件记录,因此触发事件管理器更新事件时,才会更新事件的持续时间。
- 必须指定开启条件参数。 如果未指定,则可选关闭条件参数将默认为开启条件的逻辑非。
- 开启条件和关闭条件可以指定基于属性的条件和与地理围栏的空间关系。 类似于过滤器,如果与已接收的事件记录相关联的数据满足指定表达式,则处理器会将条件视为 True 并选择打开新事件、更新现有事件或关闭现有事件(在关闭条件评估为 True 时)。
- 关闭条件不必与开启条件在逻辑上相反。 例如,当飞机的高度低于特定阈值时可以打开事件,当观测到飞机位于特定地理围栏之内(例如到达机场停机位)时可以关闭事件(而不是要求飞机升至高于指定高度方可关闭事件)。
- 首次创建事件时,其状态将被设置为已开始。 当后续事件记录路由到满足开启条件的处理器时,已开始事件的状态将更改为持续。 在关闭之前,事件将一直处于持续状态,其关闭可能是因为接收到了满足关闭条件的事件记录,或是因为该事件已通过管理的方式关闭。 系统将为已关闭事件的状态分配值已结束。
- 每个由处理器生成的事件都有一个关联的几何。 几何的类型将在配置处理器时指定。 处理器通常配置为发送点几何,从而对发生在特定时间和特定地点的事件进行建模。 当处理事件类型为累积的事件时这一点也十分有用,可用于配置处理器以采集折点并输出更新的多点或折线几何。 如果保留源字段参数设置为是,则事件还将包括原始事件的几何字段。
参数
以下是事件检测器处理器的参数:
参数 | 描述 |
---|---|
名称 |
用于在 GeoEvent Manager 中引用的处理器的描述性名称。 |
处理器 |
指定所选的处理器。 |
事件名称 | 由处理器创建的事件的描述性名称。 处理器会将事件名称添加到事件记录的 name 字段。 此值不一定是唯一的。 例如,您可以配置处理器以检测超速车辆的事件。 系统将为观测到的每个超速车辆生成一个事件记录,其描述性名称可能是字符串值 Speeding Vehicle。 注:可以使用字段中的值来定义事件名称。 例如,如果事件记录中包含来自地理标记器处理器的字段 GeoTags,则可以将 ${GeoTags} 指定为事件名称。 该操作将为事件分配可能曾用于打开事件的地理围栏的名称。 |
开启条件 | 创建新事件或更新现有事件必须满足的开启条件。 可以使用属性或空间运算符来指定开启条件。 请参阅以下示例:
注:有关空间关系运算符以及如何构建用于开启条件和关闭条件的属性表达式和空间表达式的详细信息,请参阅过滤器简介。 |
关闭条件 | 用于关闭或结束事件的关闭条件。 可以使用空间或属性运算符来指定关闭条件。 如果未定义,则事件的关闭条件与开启条件在逻辑上相反。 请参阅以下示例:
注:有关空间关系运算符以及如何构建用于开启条件和关闭条件的属性表达式和空间表达式的详细信息,请参阅过滤器简介。 |
严重性 | 与事件类型关联的严重性级别。 事件仅限于单个严重性级别。 严重性级别将作为事件方案的一部分写入 alertType 字段。 可用的严重性级别包括通知、警告和紧急。 注:为了更改与事件关联的严重性级别,必须编辑处理器并且重新发布 GeoEvent 服务。 |
事件类型 | 处理器创建的事件类型。 可用事件类型包括累积和时间点。 事件类型将作为事件方案的一部分写入 type 字段。 默认设置为累积。
|
几何类型 | 处理器创建的事件几何类型。 事件记录的可用几何类型包括点、多点和折线。 默认设置为点。 处理器通常配置为将点几何与该处理器创建的事件相关联,从而对发生在特定时间和特定地点(点)的事件进行建模。 使用时间点配置处理器后,该处理器应该只输出点几何。 使用连续配置处理器后,该处理器可能会随着时间的变化采集多个点或位置,并将其用作折点以更新多点或折线。 |
过期时间(秒) | 事件在过期并被关闭之前,无需接收更新即可存在于已开始或持续状态下的时间量(以秒为单位)。 仅在过期时间达到零之前未接收到满足开启条件的事件记录时,处理器才会使事件过期。 事件可能会在未接收到满足关闭条件的事件记录时过期并过渡到已结束状态。 默认值为 300 秒。 注:您可以为过期时间(秒)参数指定零值 (0),以禁用事件的自动过期功能。 尽管使用此配置的事件不会过期,但事件的持续时间也不会更新,因为这需要处理器连续接收满足开启条件的事件记录流。 |
保留源字段 | 指定是否将原始源字段追加到传出事件点事件中。
|
输出 GeoEvent 定义后缀名称 |
如果保留源字段参数设置为是,将创建传入事件的 GeoEvent 定义的副本,并且此后缀将追加到原始 GeoEvent 定义的名称。 原始名称和此后缀将使用连字符 (-) 分隔。 |
注意事项和限制
使用事件检测器处理器时,需要牢记几点注意事项:
- 由事件检测器处理器监控的事件的持续时间应较短,该处理器不能用于检测或监控持续时间较长的事件。
- 如果保留源字段参数设置为否,则从处理器发出的事件记录与事件点 GeoEvent 定义相关联;处理器接收到的事件记录的方案或结构将被丢弃。
- 要使用入站事件记录的原始方案中的数据来丰富事件点事件记录,将保留源字段参数设置为是,并为新的 GeoEvent 定义名称提供后缀名称。
- 在某些使用情况下,尤其是将通知输出(例如发送电子邮件或发送文本消息输出)用于 GeoEvent 服务中时,您可能不会希望连续接到事件的持续状态通知。 事件的 status 字段只能具有以下三个值之一:已开始、持续或已结束。 如果您希望仅在事件开始或结束时接收通知,请考虑使用属性过滤器,该过滤器将丢弃从事件检测器处理器发送的 status 为持续的事件记录。
- 在设置过期时间(秒)参数时,请考虑事件记录的速度和更新频率。 如果满足开启条件的事件记录每 10 分钟到达一次,且使用默认的 5 分钟(300 秒)过期时间,则在收到更新之前,事件将定期设置为过期。 这将导致误报,因为事件将过期并从已开始过渡到已结束状态,而不会进入持续状态。 在这种情况下,事件记录的持续时间将始终为零,原因是在事件过期之前从未接收到满足开启条件的第二个事件记录。