以下objects与action
API直接相关。
动作 object 具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
actionid | string | (只读) 动作的ID。 |
esc_period (required) |
string | 默认操作步骤持续时间。必须至少为60秒。接受秒数、带后缀的时间单位和用户宏。 注意,升级仅支持触发器、内部和服务动作,并且仅在正常操作中支持。 |
eventsource (required) |
integer | (常量) 动作将处理的事件类型。 有关支持的事件类型列表,请参阅事件。 |
name (required) |
string | 动作的名称。 |
status | integer | 动作是否启用或禁用。 可能的值: 0 - (默认) 启用; 1 - 禁用。 |
pause_suppressed | integer | 是否在维护期间暂停升级。 可能的值: 0 - 不暂停升级; 1 - (默认) 暂停升级。 注意,此参数仅对触发器动作有效。 |
notify_if_canceled | integer | 是否在升级取消时通知。 可能的值: 0 - 升级取消时不通知; 1 - (默认) 升级取消时通知。 注意,此参数仅对触发器动作有效。 |
注意,对于某些方法(update、delete),必需/可选参数的组合是不同的。
操作object定义了将要执行的动作 当动作执行时。它具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
operationid | string | (只读) 动作操作的ID。 |
operationtype (required) |
integer | 操作类型. 可选值: 0 - 发送消息; 1 - 全局脚本; 2 - 添加主机; 3 - 移除主机; 4 - 添加到主机组; 5 - 从主机组移除; 6 - 链接到模板; 7 - 从模板取消链接; 8 - 启用主机; 9 - 禁用主机; 10 - 设置主机资产清单模式. 注意: 对于触发器和服务动作仅支持类型'0'和'1',内部动作仅支持'0'。发现和自动注册动作支持所有类型。 |
actionid | string | (只读) 操作所属动作的ID。 |
esc_period | string | 升级步骤的持续时间(以秒为单位)。必须大于60秒。接受秒数、带后缀的时间单位及用户宏。若设置为0或0s,将使用默认动作升级周期。 默认值:0s。 注意:升级功能仅支持触发器动作、内部动作和服务动作,且仅在正常操作模式下生效。 |
esc_step_from | integer | 升级起始步骤。 默认值:1。 注意升级仅支持触发器、内部和服务类操作,且仅在正常运营模式下生效。 |
esc_step_to | integer | 升级终止步骤. 默认值: 1. 注意: 升级仅支持触发器、内部和服务类型的告警动作,且仅在正常运营模式下生效. |
evaltype | integer | 操作条件评估方法. 可选值: 0 - (默认) AND / OR; 1 - AND; 2 - OR. |
opcommand | object | object 包含通过操作获取的全局脚本 run 数据. 每个 object 具有以下属性之一: scriptid - (string) 脚本的ID.全局脚本操作必需项. |
opcommand_grp | array | 将主机组关联到run全局脚本上. 每个object具有以下属性: opcommand_grpid - (string, 只读) object的ID;operationid - (string, 只读) 操作ID;groupid - (string) 主机组的ID.当 opcommand_hst 未设置时,全局脚本操作必需此参数. |
opcommand_hst | array | 将全局脚本run到主机。 每个object具有以下属性: opcommand_hstid - (string, 只读) object的ID;operationid - (string, 只读) 操作ID;hostid - (string) 主机的ID; 若设为0则命令会在当前主机上run.当 opcommand_grp 未设置时,全局脚本操作必需此参数。 |
opconditions | array | 触发器操作使用的运行条件。 操作条件object为action-操作条件。 |
opgroup | array | 要添加主机的主机组。 每个object具有以下属性: operationid - (string, 只读) 操作ID;groupid - (string) 主机组ID。该字段为"添加到主机组"和"从主机组移除"操作所必需。 |
opmessage | object | object 包含操作发送消息的相关数据。 操作消息 object 是 action-操作消息。 消息操作必需字段。 |
opmessage_grp | array | 接收消息的用户组. 每个object包含以下属性: operationid - (string, 只读) 操作ID;usrgrpid - (string) 用户组ID.当未设置 opmessage_usr 时,消息操作必须指定此参数. |
opmessage_usr | array | 接收消息的用户列表。 每个object包含以下属性: operationid - (string, 只读) 操作ID;userid - (string) 用户ID。当 opmessage_grp 未设置时,消息操作必须提供此参数。 |
optemplate | array | 要链接主机的模板. 每个object具有以下属性: operationid - (string, 只读) 操作的ID;templateid - (string) 模板的ID.对于"链接到模板"和"从模板取消链接"操作是必需的. |
opinventory | object | 库存模式设置为 主机。 object 具有以下属性: operationid - (string, 只读) 操作ID;inventory_mode - (string) 库存模式。该操作用于"设置 主机 库存模式"。 |
操作消息object包含有关该操作将发送消息的数据。
属性 | 数据类型 | 描述 |
---|---|---|
default_msg | integer | 是否使用默认动作消息文本和主题。 可能值: 0 - 使用操作中的数据; 1 - (默认) 使用媒介类型中的数据。 |
mediatypeid | string | 用于发送消息的媒介类型ID。 |
message | string | 操作消息文本。 |
subject | string | 操作消息主题。 |
动作操作条件object定义了执行当前操作必须满足的条件。它具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
opconditionid | string | (只读) 动作操作条件的ID |
conditiontype (required) |
integer | 条件类型。 可能的值: 14 - 事件已确认。 |
value (required) |
string | 要比较的值。 |
operationid | string | (只读) 操作的ID。 |
operator | integer | 条件运算符。 可能的值: 0 - (默认) =。 |
每种操作条件类型支持以下运算符和值。
条件 | 条件名称 | 支持的运算符 | 期望值 |
---|---|---|---|
14 | Event acknowledged | = | 事件是否已确认。 可能的值: 0 - 未确认; 1 - 已确认。 |
动作恢复操作object定义了当问题被解决时将执行的操作。恢复操作可用于触发器、内部和服务动作。它具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
operationid | string | (只读) 动作操作的ID。 |
operationtype (required) |
integer | 操作类型。 触发器和服务动作的可能值: 0 - 发送消息; 1 - 全局脚本; 11 - 通知所有相关人员。 内部动作的可能值: 0 - 发送消息; 11 - 通知所有相关人员。 |
actionid | string | (只读) 恢复操作所属的动作ID。 |
opcommand | object | object包含操作执行的全局动作类型脚本run的数据。 每个object具有以下属性: scriptid - (string) 动作类型脚本的ID。全局脚本操作必需。 |
opcommand_grp | array | 主机组用于run全局脚本。 每个object具有以下属性: opcommand_grpid - (string, 只读) object的ID;operationid - (string, 只读) 操作的ID;groupid - (string) 主机组的ID。如果未设置 opcommand_hst ,全局脚本操作必需。 |
opcommand_hst | array | 主机用于run全局脚本。 每个object具有以下属性: opcommand_hstid - (string, 只读) object的ID;operationid - (string, 只读) 操作的ID;hostid - (string) 主机的ID; 如果设置为0,命令将在当前主机上run。如果未设置 opcommand_grp ,全局脚本操作必需。 |
opmessage | object | object包含恢复操作发送的消息数据。 操作消息object是action-操作消息。 消息操作必需。 |
opmessage_grp | array | 发送消息的用户组。 每个object具有以下属性: operationid - (string, 只读) 操作的ID;usrgrpid - (string) 用户组的ID。如果未设置 opmessage_usr ,消息操作必需。 |
opmessage_usr | array | 发送消息的用户。 每个object具有以下属性: operationid - (string, 只读) 操作的ID;userid - (string) 用户的ID。如果未设置 opmessage_grp ,消息操作必需。 |
操作 update 定义了一个将执行的 object 操作 当问题被更新(评论、确认)时执行 严重性变更或手动关闭)。可执行更新操作 用于触发器和服务动作。它具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
operationid | string | (只读) 动作操作的ID。 |
operationtype (required) |
integer | 操作类型. 触发器与服务动作的可能取值: 0 - 发送消息; 1 - 全局脚本; 12 - 通知所有相关人员. |
opcommand | object | object 包含通过操作获取的全局动作类型脚本run的数据. 每个object具有以下属性之一: scriptid - (string) 动作类型脚本的ID.全局脚本操作必需项. |
opcommand_grp | array | 将主机组关联至run全局脚本. 每个object具有以下属性: groupid - (string) 主机组的ID.若未设置 opcommand_hst ,则全局脚本操作必需此参数. |
opcommand_hst | array | 主机 到 run 全局脚本。 每个 object 具有以下属性: hostid - (string) 主机 的ID;若设为0则该命令将在当前 主机 上 run。当未设置 opcommand_grp 时,全局脚本操作必需此参数。 |
opmessage | object | object 包含由update操作发送的消息数据. 操作消息object为action-操作消息. |
opmessage_grp | array | 接收消息的用户组. 每个object包含以下属性: usrgrpid - (string) 用户组ID.仅当 opmessage_usr 未设置时,send message 操作必需此参数.send update message 操作将忽略此参数. |
opmessage_usr | array | 接收消息的用户. 每个object包含以下属性: userid - (string) 用户ID.仅当 opmessage_grp 未设置时,send message 操作需要此字段.send update message 操作会忽略此字段. |
操作过滤器object定义了一组必须满足的条件才能执行配置的操作。它具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
conditions (required) |
array | 用于过滤结果的过滤条件集合。 |
evaltype (required) |
integer | 过滤条件评估方法。 可能的值: 0 - 与/或; 1 - 与; 2 - 或; 3 - 自定义表达式。 |
eval_formula | string | (只读) 用于评估过滤条件的生成表达式。该表达式包含通过formulaid 引用特定过滤条件的ID。对于具有自定义表达式的过滤器,eval_formula 的值等于formula 的值。 |
formula | string | 用户定义的表达式,用于评估具有自定义表达式的过滤器的条件。该表达式必须包含通过formulaid 引用特定过滤条件的ID。表达式中使用的ID必须与过滤条件中定义的ID完全匹配:不能有任何条件未被使用或遗漏。自定义表达式过滤器必需。 |
动作过滤器条件object定义了在执行动作操作前必须检查的特定条件。
属性 | 数据类型 | 描述 |
---|---|---|
conditionid | string | (只读) 动作条件的ID。 |
conditiontype (required) |
integer | 条件类型。 触发器动作的可能值: 0 - 主机组; 1 - 主机; 2 - 触发器; 3 - 事件名称; 4 - 触发器严重性; 6 - 时间段; 13 - 主机模板; 16 - 问题被抑制; 25 - 事件标签; 26 - 事件标签值。 发现动作的可能值: 7 - 主机IP; 8 - 发现的服务类型; 9 - 发现的服务端口; 10 - 发现状态; 11 - 运行时间或停机时间; 12 - 接收到的值; 18 - 发现规则; 19 - 发现检查; 20 - proxy; 21 - 发现object。 自动注册动作的可能值: 20 - proxy; 22 - 主机名; 24 - 主机元数据。 内部动作的可能值: 0 - 主机组; 1 - 主机; 13 - 主机模板; 23 - 事件类型; 25 - 事件标签; 26 - 事件标签值。 服务动作的可能值: 25 - 事件标签; 26 - 事件标签值; 27 - 服务; 28 - 服务名称。 |
value (required) |
string | 要比较的值。 |
value2 |
string | 要比较的次要值。当条件类型为26时,触发器、内部和服务动作需要此值。 |
actionid | string | (只读) 条件所属的动作ID。 |
formulaid | string | 用于从自定义表达式中引用条件的任意唯一ID。只能包含大写字母。修改过滤条件时必须由用户定义ID,但在后续请求时会重新生成。 |
operator | integer | 条件运算符。 可能值: 0 - (默认) 等于; 1 - 不等于; 2 - 包含; 3 - 不包含; 4 - 在...中; 5 - 大于或等于; 6 - 小于或等于; 7 - 不在...中; 8 - 匹配; 9 - 不匹配; 10 - 是; 11 - 否。 |
要更好地理解如何将过滤器与各种表达式类型结合使用,请参阅 action.get和 action.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 |
触发器严重性。参考触发器获取支持的触发器严重性列表。 |
5 | Trigger value | equals | 触发器值。参考触发器获取支持的触发器值列表。 |
6 | Time period | in, not in | 事件触发时间,格式为time period。 |
7 | Host IP | equals, does not equal |
一个或多个以逗号分隔的IP范围。参考network discovery configuration部分获取支持的IP范围格式的更多信息。 |
8 | Discovered service type | equals, does not equal |
发现的服务类型。服务类型与用于检测服务的发现检查类型匹配。参考发现检查获取支持的类型列表。 |
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 | 不需要值: 使用"是"运算符表示问题必须被抑制,"否"表示不被抑制。 |
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 |
自动注册主机的元数据。 运算符匹配和不匹配支持使用正则表达式。 |
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 |
服务名称。 |