动作对象

以下对象与动作 API 直接相关。

Action

action 对象具有以下属性。

Property Type Description
actionid ID action 的 ID。

属性行为
- 只读
- 更新操作中为 必需
esc_period string 默认操作步骤持续时间。必须至少为 60 秒。可接受秒数(例如 60300)、带有时间后缀的值(例如 30s1m2h)或用户宏。

属性行为
- 当 eventsource 设置为“由触发器创建的事件”、“内部事件”或“服务状态更新时创建的事件”时支持
eventsource integer action 将处理的事件类型。

支持的事件类型列表请参阅事件的 source 属性

属性行为
- 常量
- 创建操作中为 必需
name string action 的名称。

属性行为
- 创建操作中为 必需
status integer action 是否启用。

可能的值:
0 - (默认)启用;
1 - 禁用。
pause_symptoms integer 如果事件为症状事件,是否暂停升级。

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

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

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

属性行为
- 当 eventsource 设置为“由触发器创建的事件”时支持
notify_if_canceled integer 升级取消时是否发送通知。

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

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

操作

操作对象定义了在执行操作时将执行的操作。它具有以下属性。

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

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

如果 Action objecteventsource 设置为“由触发器创建的事件”或“服务状态更新时创建的事件”,则可能的值:
0 - “发送消息”;
1 - “全局脚本”。

如果 Action objecteventsource 设置为“内部事件”,则可能的值:
0 - “发送消息”。

属性行为
- 必需
esc_period string 升级步骤的持续时间,单位为秒。必须大于 60 秒。接受秒数(例如 60300)、带有时间后缀的值(例如 30s1m2h)或用户宏。如果设置为 0 或 0s,则使用默认的操作升级周期。

默认值:0s。

属性行为
- 当 Action objecteventsource 设置为“由触发器创建的事件”、“内部事件”或“服务状态更新时创建的事件”时,支持
esc_step_from integer 开始升级的步骤。

默认值:1。

属性行为
- 当 Action objecteventsource 设置为“由触发器创建的事件”、“内部事件”或“服务状态更新时创建的事件”时,支持
esc_step_to integer 结束升级的步骤。

默认值:1。

属性行为
- 当 Action objecteventsource 设置为“由触发器创建的事件”、“内部事件”或“服务状态更新时创建的事件”时,支持
evaltype integer 操作条件的评估方法

可能的值:
0 - (默认) And/Or;
1 - And;
2 - Or。
opcommand object 要执行的全局脚本。

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

属性行为
- 当 operationtype 设置为“全局脚本”时,必需
opcommand_grp array 要在其上运行全局脚本的主机组。

主机组必须定义 groupid 属性。

属性行为
- 当 operationtype 设置为“全局脚本”且未设置 opcommand_hst 时,必需
opcommand_hst array 要在其上运行全局脚本的主机。

主机必须定义 hostid 属性。

属性行为
- 当 operationtype 设置为“全局脚本”且未设置 opcommand_grp 时,必需
opconditions array 用于触发器操作的操作条件。

操作条件对象在下文中有详细说明。
opgroup array 要将主机添加到的主机组。

主机组必须定义 groupid 属性。

属性行为
- 当 operationtype 设置为“添加到主机组”或“从主机组中移除”时,必需
opmessage object 包含操作发送的消息数据的对象。

操作消息对象在下文中有详细说明。

属性行为
- 当 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 设置为“添加主机标签”或“移除主机标签”时,支持

操作消息

操作消息对象包含将由该操作发送的消息相关数据。它具有以下属性。

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

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

属性行为
- 如果 动作操作对象动作恢复操作对象动作更新操作对象operationtype 设置为“发送消息”,或者 动作更新操作对象operationtype 设置为“通知所有相关人员”,则为 supported
message string 操作消息文本。

属性行为
- 如果 default_msg 设置为“使用操作中的数据”,则为 supported
subject string 操作消息主题。

属性行为
- 如果 default_msg 设置为“使用操作中的数据”,则为 supported

操作条件

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

属性 Type 描述
conditiontype integer 条件类型。

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

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

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

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

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

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

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

动作恢复操作

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

属性 类型 说明
operationtype integer 操作类型。

如果 Action objecteventsource 设置为“由触发器创建的事件”或“在服务状态更新时创建的事件”,则可能的值为:
0 - 发送消息;
1 - 全局脚本;
11 - 通知所有相关人员。

如果 Action objecteventsource 设置为“内部事件”,则可能的值为:
0 - 发送消息;
11 - 通知所有相关人员。

属性行为
- 必需
opcommand object 要执行的全局脚本。

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

属性行为
- 如果 operationtype 设置为“全局脚本”,则为 必需
opcommand_grp array 要在其上运行全局脚本的主机组。

主机组必须定义 groupid 属性。

属性行为
- 如果 Action objecteventsource 设置为“由触发器创建的事件”,且 operationtype 设置为“全局脚本”,并且未设置 opcommand_hst,则为 必需
opcommand_hst array 要在其上运行全局脚本的主机。

主机必须定义 hostid 属性。

属性行为
- 如果 Action objecteventsource 设置为“由触发器创建的事件”,且 operationtype 设置为“全局脚本”,并且未设置 opcommand_grp,则为 必需
opmessage object 包含恢复操作所发送消息数据的对象。

操作消息对象已在上文详细说明

属性行为
- 如果 operationtype 设置为“发送消息”,则为 必需
opmessage_grp array 要向其发送消息的用户组。

用户组必须定义 usrgrpid 属性。

属性行为
- 如果 operationtype 设置为“发送消息”且未设置 opmessage_usr,则为 必需
opmessage_usr array 要向其发送消息的用户。

用户必须定义 userid 属性。

属性行为
- 如果 operationtype 设置为“发送消息”且未设置 opmessage_grp,则为 必需

操作更新操作

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

Property Type Description
operationtype integer 操作类型。

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

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

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

属性行为
- 如果 operationtype 设置为“全局脚本”,则为 必填
opcommand_grp array 要在其上运行全局脚本的主机组。

主机组必须定义 groupid 属性。

属性行为
- 如果 Action objecteventsource 设置为“由触发器创建的事件”,且 operationtype 设置为“全局脚本”,并且未设置 opcommand_hst,则为 必填
opcommand_hst array 要在其上运行全局脚本的主机。

主机必须定义 hostid 属性。

属性行为
- 如果 Action objecteventsource 设置为“由触发器创建的事件”,且 operationtype 设置为“全局脚本”,并且未设置 opcommand_grp,则为 必填
opmessage object 包含更新操作所发送消息数据的对象。

操作消息对象在上文中有详细说明
opmessage_grp array 要发送消息到的用户组。

用户组必须定义 usrgrpid 属性。

属性行为
- 如果 operationtype 设置为“发送消息”且未设置 opmessage_usr,则为 必填
opmessage_usr array 要发送消息到的用户。

用户必须定义 userid 属性。

属性行为
- 如果 operationtype 设置为“发送消息”且未设置 opmessage_grp,则为 必填

操作筛选器

操作筛选器对象定义了一组必须满足的条件,以执行已配置的操作。它具有以下属性。

Property Type Description
conditions array 用于筛选结果的筛选条件集合。条件将按照其在公式中的排列顺序进行排序。

属性行为:
- 必需
evaltype integer 筛选条件的求值方法

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

属性行为:
- 必需
eval_formula string 用于对筛选条件进行求值的生成表达式。该表达式包含通过其 formulaid 引用特定筛选条件的 ID。对于使用自定义表达式的筛选器,eval_formula 的值等于 formula 的值。

属性行为:
- 只读
formula string 用户定义的表达式,用于对使用自定义表达式的筛选器条件进行求值。该表达式必须包含通过其 formulaid 引用特定筛选条件的 ID。表达式中使用的 ID 必须与筛选条件中定义的 ID 完全匹配:不能有任何条件未被使用或省略。

属性行为:
- 如果 evaltype 设置为“自定义表达式”,则为 必需

操作筛选条件

操作筛选条件对象定义了在运行操作之前必须检查的特定条件。

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

如果 Action 对象eventsource 设置为“由触发器创建的事件”,可能的值为:
0 - 主机组;
1 - 主机;
2 - 触发器;
3 - 事件名称;
4 - 触发器严重性;
6 - 时间段;
13 - 主机模板;
16 - 问题已被抑制;
25 - 事件标签;
26 - 事件标签值。

如果 Action 对象eventsource 设置为“由发现规则创建的事件”,可能的值为:
7 - 主机 IP;
8 - 已发现服务类型;
9 - 已发现服务端口;
10 - 发现状态;
11 - 正常运行或停机持续时间;
12 - 接收值;
18 - 发现规则;
19 - 发现检查;
20 - proxy;
21 - 发现对象;
29 - proxy 组。

如果 Action 对象eventsource 设置为“由 active agent 自动注册创建的事件”,可能的值为:
20 - proxy;
22 - 主机名称;
24 - 主机元数据;
29 - proxy 组。

如果 Action 对象eventsource 设置为“内部事件”,可能的值为:
0 - 主机组;
1 - 主机;
13 - 主机模板;
23 - 事件类型;
25 - 事件标签;
26 - 事件标签值。

如果 Action 对象eventsource 设置为“服务状态更新时创建的事件”,可能的值为:
25 - 事件标签;
26 - 事件标签值;
27 - 服务;
28 - 服务名称。

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

属性行为
- 必需
value2 string 用于比较的次要值。

属性行为
- 当 Action 对象eventsource 设置为“由触发器创建的事件”、conditiontype 设置为触发器操作的任意可能值,且条件类型(见下文)为“26”时,必需
- 当 Action 对象eventsource 设置为“内部事件”、conditiontype 设置为内部操作的任意可能值,且条件类型(见下文)为“26”时,必需
- 当 Action 对象eventsource 设置为“服务状态更新时创建的事件”、conditiontype 设置为服务操作的任意可能值,且条件类型(见下文)为“26”时,必需
formulaid string 用于从自定义表达式中引用条件的任意唯一 ID。只能包含大写字母。修改筛选条件时,ID 必须由用户定义;但之后请求这些条件时,ID 将重新生成。
operator integer 条件运算符

可能的值:
0 - (默认) 等于;
1 - 不等于;
2 - 包含;
3 - 不包含;
4 - 属于;
5 - 大于或等于;
6 - 小于或等于;
7 - 不属于;
8 - 匹配;
9 - 不匹配;
10 - 是;
11 - 否。

要更好地了解如何将筛选器与各种类型的表达式结合使用,请参阅 action.getaction.create 方法页面中的示例。

以下运算符和值适用于每种条件类型。

条件 条件名称 支持的运算符 预期值
0 主机组 等于、
不等于
主机组 ID。
1 主机 等于、
不等于
主机 ID。
2 触发器 等于、
不等于
触发器 ID。
3 事件名称 包含、
不包含
事件名称。
4 触发器严重性 等于、
不等于、
大于或等于、
小于或等于
触发器严重性。有关支持的触发器严重性列表,请参阅触发器 severity 属性
5 触发器值 等于 触发器值。有关支持的触发器值列表,请参阅触发器 value 属性
6 时间段 属于、不属于 事件触发时所在的时间段
7 主机 IP 等于、
不等于
要检查的一个或多个 IP 范围,以逗号分隔。有关支持的 IP 范围格式的更多信息,请参阅网络发现配置部分。
8 已发现服务类型 等于、
不等于
已发现服务的类型。服务类型与用于检测该服务的发现检查类型相匹配。有关支持的类型列表,请参阅发现检查 type 属性
9 已发现服务端口 等于、
不等于
一个或多个端口范围,以逗号分隔。
10 发现状态 等于 已发现对象的状态。

可能的值:
0 - 主机或服务正常运行;
1 - 主机或服务停机;
2 - 已发现主机或服务;
3 - 主机或服务丢失。
11 正常运行或停机持续时间 大于或等于、
小于或等于
表示已发现对象处于当前状态的时长,单位为秒。
12 接收值 等于、
不等于、
大于或等于、
小于或等于、
包含、
不包含
执行 Zabbix agent、SNMPv1、SNMPv2 或 SNMPv3 发现检查时返回的值。
13 主机模板 等于、
不等于
已链接模板的 ID。
16 问题已被抑制 是、否 无需值:使用“是”运算符表示问题必须被抑制;“否”表示问题未被抑制。
18 发现规则 等于、
不等于
发现规则的 ID。
19 发现检查 等于、
不等于
发现检查的 ID。
20 proxy 等于、
不等于
proxy 的 ID。
21 发现对象 等于 触发发现事件的对象类型。

可能的值:
1 - 已发现主机;
2 - 已发现服务。
22 主机名称 包含、
不包含、
匹配、
不匹配
主机名称。
在自动注册条件中,运算符匹配不匹配支持使用正则表达式。
23 事件类型 等于 特定的内部事件。

可能的值:
0 - 监控项处于“不支持”状态;
1 - 监控项处于“正常”状态;
2 - LLD 规则处于“不支持”状态;
3 - LLD 规则处于“正常”状态;
4 - 触发器处于“未知”状态;
5 - 触发器处于“正常”状态。
24 主机元数据 包含、
不包含、
匹配、
不匹配
自动注册主机的元数据。
支持在运算符匹配不匹配中使用正则表达式。
25 标签 等于、
不等于、
包含、
不包含
事件标签。
26 标签值 等于、
不等于、
包含、
不包含
事件标签值。
27 服务 等于、
不等于
服务 ID。
28 服务名称 等于、
不等于
服务名称。
29 proxy 组 等于、
不等于
proxy 组的 ID。