动作 object

以下objects与actionAPI直接相关。

动作

操作 object 具有以下属性.

属性 数据类型 描述
actionid ID 操作的ID.

属性行为:
- 只读
- 进行 update 操作时必填
esc_period string 默认操作步骤持续时间. 必须至少为60秒. 接受秒数、带后缀的时间单位或用户宏.

属性行为:
- 当 eventsource 设置为"触发器创建的事件"、"内部事件"或"服务状态 update 创建的事件"时支持
eventsource integer 操作将处理的事件类型.

参考 event source property 获取支持的事件类型列表.

属性行为:
- 常量
- 进行 create 操作时必填
name string 操作的名称.

属性行为:
- 进行 create 操作时必填
status integer 操作是否启用或禁用.

可能的值:
0 - (默认) 启用;
1 - 禁用.
pause_symptoms integer 当事件是症状事件时是否暂停升级.

可能的值:
0 - 不暂停症状问题的升级;
1 - (默认) 暂停症状问题的升级.

属性行为:
- 当 eventsource 设置为"触发器创建的事件"时支持
pause_suppressed integer 在维护期间是否暂停升级.

可能的值:
0 - 不暂停升级;
1 - (默认) 暂停升级.

属性行为:
- 当 eventsource 设置为"触发器创建的事件"时支持
notify_if_canceled integer 当升级取消时是否通知.

可能的值:
0 - 升级取消时不通知;
1 - (默认) 升级取消时通知.

属性行为:
- 当 eventsource 设置为"触发器创建的事件"时支持

Action 操作

动作操作object定义了当动作执行时将执行的操作。它具有以下属性。

属性 数据类型 描述
operationtype integer 操作类型。

可能的值:
0 - 发送消息;
1 - 全局脚本;
2 - 添加主机;
3 - 移除主机;
4 - 添加到主机组;
5 - 从主机组移除;
6 - 链接模板;
7 - 取消链接模板;
8 - 启用主机;
9 - 禁用主机;
10 - 设置主机资产清单模式;
13 - 添加主机标签;
14 - 移除主机标签。

如果动作objecteventsource设置为"触发器创建的事件"或"服务状态update创建的事件"时的可能值:
0 - "发送消息";
1 - "全局脚本"。

如果动作objecteventsource设置为"内部事件"时的可能值:
0 - "发送消息"。

属性行为:
- 必填
esc_period string 升级步骤的持续时间(秒)。必须大于60秒。接受秒数、带后缀的时间单位或用户宏。如果设置为0或0s,将使用默认动作升级周期。

默认值: 0s。

属性行为:
- 支持 如果动作objecteventsource设置为"触发器创建的事件"、"内部事件"或"服务状态update创建的事件"
esc_step_from integer 开始升级的步骤。

默认值: 1。

属性行为:
- 支持 如果动作objecteventsource设置为"触发器创建的事件"、"内部事件"或"服务状态update创建的事件"
esc_step_to integer 结束升级的步骤。

默认值: 1。

属性行为:
- 支持 如果动作objecteventsource设置为"触发器创建的事件"、"内部事件"或"服务状态update创建的事件"
evaltype integer 操作条件评估方法。

可能的值:
0 - (默认) AND/OR;
1 - AND;
2 - OR。
opcommand object 要execute的全局脚本。

全局脚本必须定义scriptid属性。

属性行为:
- 必填 如果operationtype设置为"全局脚本"
opcommand_grp array 要run全局脚本的主机组。

主机组必须定义groupid属性。

属性行为:
- 必填 如果operationtype设置为"全局脚本"且opcommand_hst未设置
opcommand_hst array 要run全局脚本的主机。

主机必须定义hostid属性。

属性行为:
- 必填 如果operationtype设置为"全局脚本"且opcommand_grp未设置
opconditions array 用于触发器动作的操作条件。

操作条件object是action-操作条件
opgroup array 要添加主机的主机组。

主机组必须定义groupid属性。

属性行为:
- 必填 如果operationtype设置为"添加到主机组"或"从主机组移除"
opmessage object 包含操作发送消息数据的object。

操作消息object是action-操作消息

属性行为:
- 必填 如果operationtype设置为"发送消息"
opmessage_grp array 要发送消息的用户组。

用户组必须定义usrgrpid属性。

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_usr未设置
opmessage_usr array 要发送消息的用户。

用户必须定义userid属性。

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_grp未设置
optemplate array 要链接到主机的模板。

模板必须定义templateid属性。

属性行为:
- 必填 如果operationtype设置为"链接模板"或"取消链接模板"
opinventory object 设置主机的资产清单模式。

资产清单必须定义inventory_mode属性。

属性行为:
- 必填 如果operationtype设置为"设置主机资产清单模式"
optag array 要添加或移除的主机标签。

标签必须定义tag属性。
value属性是可选的。

属性行为:
- 支持 如果operationtype设置为"添加主机标签"或"移除主机标签"。

Action 操作消息

操作消息object包含有关该操作将发送消息的数据. 它具有以下属性.

属性 数据类型 描述
default_msg integer 是否使用默认动作消息文本和主题.

可能值:
0 - 使用操作中的数据;
1 - (默认) 使用媒介类型中的数据.
mediatypeid ID 用于发送消息的媒介类型ID.

属性行为:
- 支持 如果动作操作object, 动作恢复操作object, 或动作update操作objectoperationtype设置为"发送消息", 或者如果动作update操作objectoperationtype设置为"通知所有相关人员"
message string 操作消息文本.

属性行为:
- 支持 如果default_msg设置为"使用操作中的数据"
subject string 操作消息主题.

属性行为:
- 支持 如果default_msg设置为"使用操作中的数据"

Action 操作条件

操作条件object定义了执行当前操作必须满足的条件。它具有以下属性。

属性 数据类型 描述
conditiontype integer 条件类型。

可能取值:
14 - 事件已确认。

属性行为:
- 必填
value string 用于比较的值。

属性行为:
- 必填
operator integer 条件运算符。

可能取值:
0 - (默认) =

每种操作条件类型支持的运算符和值如下。

条件 条件名称 支持的运算符 预期值
14 Event acknowledged = 事件是否已确认。

可能取值:
0 - 未确认;
1 - 已确认。

Action 恢复操作

动作恢复操作object定义了当问题解决时将执行的操作。 恢复操作适用于触发器、内部和服务动作。 它具有以下属性。

属性 数据类型 描述
operationtype integer 操作类型。

如果动作objecteventsource设置为"由触发器创建的事件"或"服务状态update创建的事件"时的可能值:
0 - 发送消息;
1 - 全局脚本;
11 - 通知所有相关人员。

如果动作objecteventsource设置为"内部事件"时的可能值:
0 - 发送消息;
11 - 通知所有相关人员。

属性行为:
- 必填
opcommand object 要execute的全局脚本。

全局脚本必须定义scriptid属性。

属性行为:
- 必填 如果operationtype设置为"全局脚本"
opcommand_grp array 要run全局脚本的主机组。

主机组必须定义groupid属性。

属性行为:
- 必填 如果动作objecteventsource设置为"由触发器创建的事件",且operationtype设置为"全局脚本",且opcommand_hst未设置
opcommand_hst array 要run全局脚本的主机。

主机必须定义hostid属性。

属性行为:
- 必填 如果动作objecteventsource设置为"由触发器创建的事件",且operationtype设置为"全局脚本",且opcommand_grp未设置
opmessage object 包含恢复操作发送的消息数据的object。

操作消息object是action-操作消息

属性行为:
- 必填 如果operationtype设置为"发送消息"
opmessage_grp array 要发送消息的用户组。

用户组必须定义usrgrpid属性。

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_usr未设置
opmessage_usr array 要发送消息的用户。

用户必须定义userid属性。

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_grp未设置

Action 更新操作

操作update操作object定义了在问题更新时将执行的操作 (评论、确认、严重性更改或手动关闭). 更新操作适用于触发器和服务动作. 它具有以下属性.

属性 数据类型 描述
operationtype integer 操作类型.

可能的值:
0 - 发送消息;
1 - 全局脚本;
12 - 通知所有相关人员.

属性行为:
- 必填
opcommand object 要execute的全局脚本.

全局脚本必须定义scriptid属性.

属性行为:
- 必填 如果operationtype设置为"全局脚本"
opcommand_grp array 要run全局脚本的主机组.

主机组必须定义groupid属性.

属性行为:
- 必填 如果操作objecteventsource设置为"触发器创建的事件",且operationtype设置为"全局脚本",且opcommand_hst未设置
opcommand_hst array 要run全局脚本的主机.

主机必须定义hostid属性.

属性行为:
- 必填 如果操作objecteventsource设置为"触发器创建的事件",且operationtype设置为"全局脚本",且opcommand_grp未设置
opmessage object 包含update操作发送的消息数据的object.

操作消息object是action-操作消息.
opmessage_grp array 要发送消息的用户组.

用户组必须定义usrgrpid属性.

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_usr未设置
opmessage_usr array 要发送消息的用户.

用户必须定义userid属性.

属性行为:
- 必填 如果operationtype设置为"发送消息"且opmessage_grp未设置

操作过滤器

动作过滤器object定义了一组必须满足的条件才能执行配置的动作操作。它具有以下属性。

属性 数据类型 描述
conditions array 用于过滤结果的过滤器条件集合。条件将按其公式中的放置顺序排序。

属性行为:
- 必填
evaltype integer 过滤器条件评估方法。

可能的值:
0 - 与/或;
1 - 与;
2 - 或;
3 - 自定义表达式。

属性行为:
- 必填
eval_formula string 用于评估过滤器条件的生成表达式。该表达式包含通过formulaid引用特定过滤器条件的ID。对于具有自定义表达式的过滤器,eval_formula的值等于formula的值。

属性行为:
- 只读
formula string 用于评估具有自定义表达式的过滤器条件的用户定义表达式。该表达式必须包含通过formulaid引用特定过滤器条件的ID。表达式中使用的ID必须与过滤器条件中定义的完全匹配:不能有任何条件未被使用或遗漏。

属性行为:
- 必填 如果evaltype设置为"自定义表达式"

Action 过滤条件

操作过滤器条件object定义了特定条件 必须在执行操作前进行检查。

属性 数据类型 描述
conditiontype integer 条件类型.

动作objecteventsource设置为"由触发器创建的事件"时的可能取值:
0 - 主机组;
1 - 主机;
2 - 触发器;
3 - 事件名称;
4 - 触发器严重性;
6 - 时间段;
13 - 主机模板;
16 - 问题被抑制;
25 - 事件标签;
26 - 事件标签值.

动作objecteventsource设置为"由发现规则创建的事件"时的可能取值:
7 - 主机IP;
8 - 发现的服务类型;
9 - 发现的服务端口;
10 - 发现状态;
11 - 运行时间或停机时长;
12 - 接收值;
18 - 发现规则;
19 - 发现检查;
20 - proxy;
21 - 发现object.

动作objecteventsource设置为"由主动agent自动注册创建的事件"时的可能取值:
20 - proxy;
22 - 主机名;
24 - 主机元数据.

动作objecteventsource设置为"内部事件"时的可能取值:
0 - 主机组;
1 - 主机;
13 - 主机模板;
23 - 事件类型;
25 - 事件标签;
26 - 事件标签值.

动作objecteventsource设置为"服务状态update创建的事件"时的可能取值:
25 - 事件标签;
26 - 事件标签值;
27 - 服务;
28 - 服务名称.

属性行为:
- 必填
value string 用于比较的值。

属性行为:
- 必填
value2 string 用于比较的次要值.

属性行为:
- 必填 如果动作 objecteventsource设置为"由触发器创建的事件", conditiontype设置为触发器动作的任何可能值, 且条件类型(见下文)为"26"
- 必填 如果动作 objecteventsource设置为"内部事件", conditiontype设置为内部动作的任何可能值, 且条件类型(见下文)为"26"
- 必填 如果动作 objecteventsource设置为"服务状态update上创建的事件", conditiontype设置为服务动作的任何可能值, 且条件类型(见下文)为"26"
formulaid string 用于在自定义表达式中引用该条件的任意唯一标识符。仅允许包含大写字母。修改过滤条件时必须由用户定义该ID,但在后续请求时系统会重新生成新ID。
operator integer 条件运算符.

可选值:
0 - (默认) 等于;
1 - 不等于;
2 - 包含;
3 - 不包含;
4 - 在范围内;
5 - 大于或等于;
6 - 小于或等于;
7 - 不在范围内;
8 - 匹配;
9 - 不匹配;
10 - 是;
11 - 否.

为了更好地理解如何在不同情况下使用过滤器 表达式类型,请参阅示例 action.getaction.create 方法 页面

每个条件支持以下运算符和值 类型.

条件 条件名称 支持的运算符 预期值
0 Host group equals,
does not equal
主机组 ID.
1 Host equals,
does not equal
主机 ID.
2 Trigger equals,
does not equal
触发器ID.
3 Event name contains,
does not contain
事件名称.
4 Trigger severity equals,
does not equal,
is greater than or equals,
is less than or equals
触发器严重级别。参考trigger severity property获取支持的触发器严重级别列表。
5 Trigger value equals 触发器值。参考trigger value property获取支持的触发器值列表。
6 Time period in, not in 事件触发时间(以time period格式记录)。
7 Host IP equals,
does not equal
要检查的一个或多个IP范围,以逗号分隔。有关支持的IP范围格式的更多信息,请参阅network discovery configuration部分。
8 Discovered service type equals,
does not equal
发现服务的类型。服务类型与用于检测服务的发现检查类型相匹配。有关支持类型的列表,请参阅discovery check type property
9 Discovered service port equals,
does not equal
一个或多个端口范围,以逗号分隔。
10 Discovery status equals 已发现object的状态.

可能的值:
0 - 主机或服务运行中;
1 - 主机或服务停止;
2 - 主机或服务已发现;
3 - 主机或服务丢失.
11 Uptime or downtime duration is greater than or equals,
is less than or equals
表示已发现的object保持当前状态时长的秒数。
12 Received values equals,
does not equal,
is greater than or equals,
is less than or equals,
contains,
does not contain
执行Zabbix agent、SNMPv1、SNMPv2或SNMPv3发现检查时返回的值。
13 Host template equals,
does not equal
关联模板ID.
16 Problem is suppressed Yes, No 无需设置值: 使用"Yes"运算符表示必须抑制问题, "No"表示不抑制.
18 Discovery rule equals,
does not equal
发现规则的ID.
19 Discovery check equals,
does not equal
发现检查的ID.
20 Proxy equals,
does not equal
proxy的ID.
21 Discovery object equals 触发发现事件的object类型.

可能取值:
1 - 发现的主机;
2 - 发现的服务.
22 Host name contains,
does not contain,
matches,
does not match
主机名.
在自动注册条件中,对于操作符匹配不匹配支持使用正则表达式。
23 Event type equals 特定内部事件.

可能取值:
0 - 监控项处于"不支持"状态;
1 - 监控项处于"正常"状态;
2 - LLD规则处于"不支持"状态;
3 - LLD规则处于"正常"状态;
4 - 触发器处于"未知"状态;
5 - 触发器处于"正常"状态.
24 Host metadata contains,
does not contain,
matches,
does not match
自动注册主机的元数据.
对于操作符matchesdoes not match支持使用正则表达式.
25 Tag equals,
does not equal,
contains,
does not contain
事件标签.
26 Tag value equals,
does not equal,
contains,
does not contain
事件标签值.
27 Service equals,
does not equal
服务ID.
28 Service name equals,
does not equal
服务名称.