>动作对象
下面是动作(action)
API 相关的对象。
动作
动作对象具有以下属性。
属性 | 类型 | 描述 |
---|---|---|
actionid | string | (readonly) 动作的 ID。 |
esc_period (required) | string | 默认操作步骤持续时间。必须大于 60 秒。接受秒,带后缀的时间单位和用户宏。 |
eventsource (required) | integer | (constant) 动作将处理的事件的类型。 参见 事件”源”属性 以获取支持的事件类型列表。 |
name (required) | string | 动作的名称。 |
def_longdata | string | 异常消息文本。 |
def_shortdata | string | 异常消息主题。 |
r_longdata | string | 恢复消息文本。 |
r_shortdata | string | 恢复消息主题。 |
ack_longdata | string | 确认操作消息文本。 |
ack_shortdata | string | 确认操作消息主题。 |
status | integer | 动作是启动还是禁用。 取值: 0 - (默认) 启用; 1 - 禁用。 |
pause_suppressed | integer | 是否在维护期间暂停升级。 可能的值: 0 - 不要暂停升级; 1 - (默认) 暂停升级。 |
动作操作
动作操作对象定义执行动作时执行的操作。它具有以下属性。
属性 | 类型 | 描述 |
---|---|---|
operationid | string | (readonly) 动作操作的 ID。 |
operationtype (required) | integer | 操作类型 可能的值: 0 - 发送消息; 1 - 远程命令; 2 - 添加主机; 3 - 删除主机; 4 - 添加到主机组; 5 - 从主机组删除; 6 - 链接到模板; 7 - 取消与模板的关联; 8 - 启用主机; 9 - 禁用主机; 10 - 设置主机库存模式。 |
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 | 包含操作所运行的命令的数据。 操作命令对象是 在下面有详细描述. 远程命令操作所需的。 |
opcommand_grp | array | 运行远程命令的主机组。 每个对象具有以下属性: opcommand_grpid - (string, readonly) 对象的 ID;operationid - (string) 操作 ID;groupid - (string) 主机组的 ID。如果没有设置 opcommand_hst ,则需要远程命令操作。 |
opcommand_hst | array | 主机上运行远程命令。 每个对象具有以下属性: opcommand_hstid - (string, readonly) 对象的 ID;operationid - (string) 操作 ID;hostid - (string) 主机 ID; 如果设置为 0,则命令将在当前主机上运行。如果没有设置 opcommand_grp ,则需要远程命令操作。 |
opconditions | array | 用于触发动作的操作条件 操作条件对象是 下面详细描述. |
opgroup | array | 用于添加主机的主机组。 每个对象都具有以下属性: operationid - (string) 操作 ID;groupid - (string) 主机组的 ID。添加到主机组 和 从主机组中删除 操作所必需的。 |
opmessage | object | 包含有关操作发送的消息的数据的对象。 操作消息对象是 在下面有详细描述. 消息操作必需。 |
opmessage_grp | array | 要发送消息的用户组。 每个对象都具有以下属性: operationid - (string) 操作 ID;usrgrpid - (string) 用户组的ID。如果未设置 opmessage_usr ,则消息操作必需。 |
opmessage_usr | array | 发送消息给的用户。 每个对象都具有以下属性: operationid - (string) 操作 ID;userid - (string) 用户的ID。如果未设置 opmessage_grp ,则消息操作必需。 |
optemplate | array | 用于将主机链接到的模板。 每个对象都具有以下属性: operationid - (string) 操作 ID;templateid - (string) 模板 ID.必须有 “绑定模板” 和 “解绑模板” 操作 |
opinventory | object | 库存模式设置主机。 每个对象都具有以下属性: operationid - (string) 操作 ID;inventory_mode - (string) Inventory mode.需要有 “Set host inventory mode” 操作。 |
动作操作命令
操作命令对象包含有关运行操作命令的数据。
属性 | 类型 | 说明 |
---|---|---|
operationid | string | (readonly) 操作 ID. |
command | string | 要运行的命令。 当类型为 (0,1,2,3) 时,此项是必须的 |
type (required) | integer | 操作命令的类型 可能的值: 0 - custom script; 1 - IPMI; 2 - SSH; 3 - Telnet; 4 - global script. |
authtype | integer | SSH 命令的认证方法。 可能的值: 0 - password; 1 - public key. Required for SSH commands. |
execute_on | integer | 将要执行自定义脚本操作命令的目标。 可能的值: 0 - Zabbix agent; 1 - Zabbix server; 2 - Zabbix server (proxy). 自定义脚本命令所需的。 |
password | string | 密码验证和 telnet 命令时用于 SSH 命令的密码。 |
port | string | 用于 SSH 和 telnet 命令的端口号。 |
privatekey | string | 使用公钥认证的 SSH 命令的私钥文件的名称。 具有密钥验证的 SSH 命令所必需的。 |
publickey | string | 用于SSH公钥和公钥认证的公钥名称。 具有密钥验证的 SSH 命令所必需的。 |
scriptid | string | 用于全局脚本命令的脚本 ID。 需要全局脚本命令。 |
username | string | 用于登录认证的用户名 使用 SSH 和 Telnet 命令时是必须的. |
动作操作消息
操作消息对象包含有关将由操作发送的消息的数据。
属性 | 类型 | 说明 |
---|---|---|
operationid | string | (readonly) 动作操作的 ID |
default_msg | integer | 是否使用默认动作消息文本和主题。 可能的值: 0 - (default) 使用操作中的消息文本和主题 1 - 使用动作中的消息文本和主题 |
mediatypeid | string | 将用于发送消息的媒体类型ID。 |
message | string | 操作消息文本。 |
subject | string | 操作消息主题。 |
动作操作条件
动作操作条件对象定义了一个必须满足的条件来执行当前操作。它具有以下属性。
属性 | 类型 | 说明 |
---|---|---|
opconditionid | string | (readonly) 动作操作条件的 ID |
conditiontype (required) | integer | 条件的类型。 可能的值: 14 - event acknowledged. |
value (required) | string | 与之比较的值。 |
operationid | string | (readonly) 动作操作的 ID |
operator | integer | 条件运算符 可能的值: 0 - (default) =. |
每个操作条件类型都支持以下运算符和值。
条件 | 条件名称 | 支持的运算 | 期望值 |
---|---|---|---|
14 | Event acknowledged | = | 件是否被确认。 可能的值: 0 - 没有确认; 1 - 已确认。 |
动作恢复操作
动作恢复操作对象定义将在解决问题时执行的操作。 可以对触发操作和内部操作执行恢复操作。 它具有以下属性。
属性 | 类型 | 描述 |
---|---|---|
operationid | string | (只读) 动作操作的 ID。 |
operationtype (必要) | integer | 操作的类型 触发动作的可能值: 0 - 发送信息; 1 - 远程命令; 11 - 通知所有参与者。 内部操作的可能值: 0 - 发送信息; 11 - 通知所有参与者。 |
actionid | string | 恢复操作所属的动作的ID。 |
opcommand | object | 对象,该对象包含有关恢复操作运行的命令的数据。 操作命令对象是 described in detail above. 必要 用于远程命令操作。 |
opcommand_grp | array | 运行远程命令的主机组。 每个对象具有以下属性: opcommand_grpid - (string, 只读) 对象的 ID;operationid - (string) 操作的 ID;groupid - (string) 主机组的 ID。必要 如果未设置“opcommand_hst”,则用于远程命令操作。 |
opcommand_hst | array | 主机运行远程命令。 每个对象具有以下属性: opcommand_hstid - (string, 只读) 对象的 ID;operationid - (string) 操作的 ID;hostid - (string) 主机的ID;如果设置为0,则命令将在当前主机上运行。必要 如果未设置“opcommand_grp”,则用于远程命令操作。 |
opmessage | object | 对象,该对象包含有关恢复操作发送的消息的数据。 操作消息对象是 described in detail above. 必要 用于消息操作。 |
opmessage_grp | array | 发送消息的用户组。 每个对象具有以下属性: operationid - (string) 操作的 ID;usrgrpid - (string) 用户组的ID。必要 如果未设置“opmessage_usr”,则用于消息操作。 |
opmessage_usr | array | 发送消息的用户。 每个对象具有以下属性: operationid - (string) 操作的 ID;userid - (string) 用户 ID.必要 如果未设置“opmessage_grp”,则用于消息操作。 |
动作更新操作
动作更新操作对象定义将更新问题时执行操作如(评论、确认、改变严重等级、手动关闭),可以对触发动作进行更新操作,它具有以下性质。
属性 | 类型 | 描述 |
---|---|---|
operationid | string | (readonly) (只读) 动作的 ID。 |
operationtype (required) | integer | 操作类型。 触发动作可选的值: 0 - 发送信息; 1 - 远程命令; 12 - 通知相关人. |
opcommand | object | 该对象包含关于更新操作运行的命令的数据。 远程命令的请求操作命令查看 动作详细操作命令 。 |
opcommand_grp | array | 包含运行远程命令的主机组对象的数组。 数组中的每个对象具有以下属性: groupid - (string) 主机组的ID. \如果 opcommand_hst 没有设置,执行远程命令操作的请求。 |
opcommand_hst | array | 包含运行远程命令的主机对象的数组。 数组中的每个对象具有以下属性: hostid - (string) 主机的ID; 如果设置为0,命令在本地主机运行。如果 opcommand_grp 没有设置,执行远程命令操作的请求。 |
opmessage | object | 该对象包含关于更新操作发送的消息的数据。 操作信息对象的 详细描述。 |
opmessage_grp | array | 发送消息的用户组. 数组中的每个对象具有以下属性: usrgrpid - (string) 用户ID。如果没有设置 opmessage_usr , 只send message 操作请求。忽略 send update message 操作. |
opmessage_usr | array | 发送消息的用户. 数组中的每个对象具有以下属性: userid - (string) 用户ID。如果没有设置 opmessage_usr , 只send message 操作请求。忽略 send update message 操作. |
动作过滤
action filter 对象定义执行配置的操作必须满足的一组条件。它具有以下属性。
属性 | 类型 | 描述 |
---|---|---|
conditions (必要) | array | 用于筛选结果的筛选条件集 |
evaltype (必要) | integer | 过滤条件评估方法。 可能值: 0 - and/or; 1 - and; 2 - or; 3 - 自定义表达式。 |
eval_formula | string | (只读) 用户定义的表达式,用于评估具有自定义表达式的过滤器的条件。 表达式必须包含通过其formulaid 引用特定过滤条件的ID。 表达式中使用的ID必须与过滤条件中定义的ID完全匹配:没有条件可以保持未使用或省略。必要 自定义表达式过滤器。 |
formula | string | 用户定义的表达式,用于使用自定义表达式计算过滤器的条件。表达式必须包含通过其“formulaid”引用特定筛选条件的id。表达式中使用的id必须与过滤器条件中定义的id完全匹配; |
动作过滤条件
动作过滤条件对象定义在运行操作动作之前必须检查的特定条件。
属性 | 类型 | 描述 |
---|---|---|
conditionid | string | (只读) 动作条件的ID。 |
conditiontype (必要) | integer | 条件类型。 触发操作的可能值: 0 - 主机组; 1 - 主机; 2 - 触发器; 3 - 触发器名称; 4 - 触发严重程度; 6 - 时间段; 13 - 主机模板; 15 - 应用; 16 - 维护状态; 25 - 事件标签; 26 - 事件标记值. 发现操作的可能值: 7 - 主机 IP; 8 - 发现服务类型; 9 - 发现服务端口; 10 - 发现状态; 11 - 正常运行时间或停机时间; 12 - 收到的价值; 18 - 发现规则; 19 - 发现检查; 20 - proxy; 21 - 发现对象. 自动注册操作的可能值: 20 - proxy; 22 - 主机名; 24 - 主机元数据. 内部操作的可能值: 0 - 主机组; 1 - 主机; 13 - 主机模板; 15 - 应用; 23 - 事件类型. |
value (必要) | string | 要与之比较的值。 |
value2 | string | 要与之比较的辅助值。条件类型为 26 时触发操作所必需的。 |
actionid | string | (只读) 条件所属操作的ID. |
formulaid | string | 用于自定义表达式引用条件的任意唯一ID。 只能包含大写字母。 用户在修改过滤条件时必须定义ID,但在以后请求时会重新生成。 |
operator | integer | 条件运算符。 可能的值: 0 - (default) =; 1 - <>; 2 - like; 3 - not like; 4 - in; 5 - >=; 6 - <=; 7 - not in. |
为了更好地理解如何使用具有各种类型表达式的过滤器, 看看例子 检索动作和创建动作方法。
每种条件类型都支持以下运算符和值。
条件 | 条件名称 | 支持操作 | 期望值 |
---|---|---|---|
0 | Host group | =, <> | 主机组 ID。 |
1 | Host | =, <> | 主机 ID。 |
2 | Trigger | =, <> | 触发器 ID。 |
3 | Trigger name | like, not like | 触发器名称。 |
4 | Trigger severity | =, <>, >=, <= | 触发严重性。 参考触发器级别属性获取支持的触发器级别列表 |
5 | Trigger value | = | 触发值。 参考 触发器值属性获取支持的触发器值列表. |
6 | Time period | in, not in | 事件被触发的时间,参考time period. |
7 | Host IP | =, <> | 要用逗号分隔的一个或多个IP范围。参考network discovery configuration参阅有关支持的IP范围格式的更多信息 |
8 | Discovered service type | =, <> | 发现服务的类型。 服务类型与用于检测服务的发现检查的类型相匹配。 参考discovery check “type” property 获取支持的类型列表。 |
9 | Discovered service port | =, <> | 一个或多个端口范围以逗号分隔。 |
10 | Discovery status | = | 发现对象的状态。 可能的值: 0 - 主机或服务启动; 1 - 主机或服务关闭; 2 - 发现主机或服务; 3 - 主机或服务失去连接。 |
11 | Uptime or downtime duration | >=, <= | 指示发现的对象处于当前状态的时间(秒)。 |
12 | Received values | =, <>, >=, <=, like, not like | 执行zabbix代理、snmpv1、snmpv2或snmpv3发现检查时返回的值。 |
13 | Host template | =, <> | 链接模板ID。 |
15 | Application | =, like, not like | 应用程序的名称。 |
16 | Maintenance status | in, not in | No value 必要: 使用“in”运算符意味着主机必须处于维护状态,“not in”-不处于维护状态。 |
18 | Discovery rule | =, <> | 发现规则的ID。 |
19 | Discovery check | =, <> | 发现检查的ID。 |
20 | Proxy | =, <> | 代理的ID。 |
21 | Discovery object | = | 触发发现事件的对象类型。 可能值: 1 - 发现主机; 2 - 发现服务。 |
22 | Host name | like, not like | 主机名。 |
23 | Event type | = | 特定内部事件。 可能值: 0 - 监控项处于“不支持”状态; 1 -监控项处于“正常”状态; 2 -LLD规则处于“不支持”状态; 3 - LLD规则处于“正常”状态; 4 - 触发器处于“未知”状态; 5 - 触发器处于“正常”状态。 |
24 | Host metadata | like, not like | 自动注册主机的元数据。 |
25 | Tag | =, <>, like, not like | 事件标记。 |
26 | Tag value | =, <>, like, not like | 事件标记值。 |