动作对象具有以下属性。

    动作操作对象定义当动作被执行时进行的操作。它具有以下属性:

    属性类型描述
    operationidstring(只读) 动作操作的 ID。
    operationtype
    (必要)
    integer操作类型

    可用的值:
    0 - 发送消息;
    1 - 远程命令;
    2 - 添加主机;
    3 - 删除主机;
    4 - 添加到主机组;
    5 - 从主机组删除;
    6 - 链接到模板;
    7 - 取消与模板的关联;
    8 - 启用主机;
    9 - 禁用主机;
    10 - 设置主机资产记录模式。
    actionidstring此操作所属的动作的 ID。
    escperiodstring以秒为单位的升级步骤的持续时间。必须大于 60 秒。接受秒,时间单位后缀和用户宏。如果设置为 0 或0s,则将使用默认的动作升级周期。

    默认: 0s.
    esc_step_frominteger步骤开始升级。

    默认: 1.
    esc_step_tointeger步骤结束升级。

    默认: 1.
    evaltypeinteger操作条件(opration condition)的评估方法。

    可用的值:
    0 - (默认) AND / OR;
    1 - AND;
    2 - OR.
    opcommandobject包含操作(operation)所运行的远程命令的数据的对象。

    操作命令(action operation command)对象的详情见<a href=”$43c0d4538473659f.md#action_operation_command动作操作-命令” class=”wikilink1” title=”zh:manual:api:reference:action:object”>下面的描述.

    对于远程命令的操作类型,该参数是必须的。
    opcommand_grparray包含运行远程命令的主机组对象的数组。

    数组中的每个对象具有以下属性:
    opcommand_grpid - (string, 只读) 对象的 ID;
    operationid - (string) 操作 ID;
    groupid - (string) 主机组的 ID。

    对于远程命令的操作类型,如果没有设置 opcommand_hst 参数,则该参数是必须的。
    opcommand_hstarray包含运行远程命令的主机对象的数组。

    数组中每个对象具有以下属性:
    opcommand_hstid - (string, 只读) 对象的 ID;
    operationid - (string) 操作 ID;
    hostid - (string) 主机 ID; 如果设置为 0,则命令将在当前主机上运行。

    对于远程命令的操作类型,如果没有设置 opcommand_grp 参数,则该参数是必须的。
    opconditionsarray包含用于动作源(action source)是触发器(trigger)的操作(operation)的操作条件(operation condition)对象的数组

    操作条件(operation condition)对象的详情见 .
    opgrouparray包含操作的主机组对象的数组。

    数组中每个对象都具有以下属性:
    operationid - (string) 操作ID;
    groupid - (string) 主机组的 ID。

    对于 添加到主机组从主机组中删除 的操作类型,该参数是必须的。
    opmessageobject包含有关操作发送的消息的数据的对象。

    操作消息对象的详情见 下面的描述.

    对于 发送消息 的操作类型,该参数是必须的。
    opmessage_grparray包含要发送消息的目标用户组对象的数组。

    数组中每个对象都具有以下属性:
    - (string) 操作 ID;
    usrgrpid - (string) 用户组的ID。

    对于 发送消息 的操作类型,如果未设置 opmessage_usr 参数,则该参数是必须的。
    opmessage_usrarray包含要发送消息的目标用户对象的数组。

    数组中每个对象都具有以下属性:
    operationid - (string) 操作 ID;
    userid - (string) 用户的ID。

    对于 发送消息 的操作类型,如果未设置 opmessage_grp 参数,则该参数是必须的。
    optemplatearray包含链接到模板/取消与模板关联的模板对象的数组。

    数组中每个对象都具有以下属性:
    operationid - (string) 操作 ID;
    templateid - (string) 模板 ID.

    对于 链接到模板取消与模板的关联 的操作类型,该参数是必须的
    opinventoryobject主机资产记录模式的对象。

    每个对象都具有以下属性:
    operationid - (string) 操作 ID;
    inventory_mode - (string) Inventory mode.

    对于 设置主机资产记录模式 的操作类型,该参数是必须的。

    Action operation command (动作操作-命令)

    操作命令对象包含有关运行操作命令的数据。

    属性类型说明
    operationidstring(只读) 操作 ID.
    commandstring要运行的命令。 当类型为 (0,1,2,3) 时,此项是必须的
    type
    (必要)
    integer操作命令的类型

    可用的值:
    0 - custom script;
    1 - IPMI;
    2 - SSH;
    3 - Telnet;
    4 - global script.
    authtypeintegerSSH 命令的认证方法。

    可用的值:
    0 - password;
    1 - public key.

    必要 for SSH commands.
    execute_oninteger将要执行自定义脚本操作命令的目标。

    可用的值:
    0 - Zabbix agent;
    1 - Zabbix server;
    2 - Zabbix server (proxy).

    自定义脚本命令所需的。
    passwordstring密码验证和 telnet 命令时用于 SSH 命令的密码。
    portstring用于 SSH 和 telnet 命令的端口号。
    privatekeystring使用公钥认证的 SSH 命令的私钥文件的名称。

    具有密钥验证的 SSH 命令所必需的。
    publickeystring用于SSH公钥和公钥认证的公钥名称。

    具有密钥验证的 SSH 命令所必需的。
    scriptidstring用于全局脚本命令的脚本 ID。

    需要全局脚本命令。
    usernamestring用于登录认证的用户名

    使用 SSH 和 Telnet 命令时是必须的.

    动作操作消息

    动作操作条件

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

    属性类型说明
    opconditionidstring(只读) 动作操作条件的 ID
    conditiontype
    (必要)
    integer条件的类型。

    可用的值:
    14 - event acknowledged.
    value
    (必要)
    string与之比较的值。
    operationidstring(只读) 动作操作的 ID
    operatorinteger条件运算符

    可用的值:
    0 - (default) =.

    每个操作条件类型都支持以下运算符和值。

    条件条件名称支持的运算期望值
    14Event acknowledged=件是否被确认。

    可用的值:
    0 - 没有确认;
    1 - 已确认。

    动作恢复操作对象定义将在解决问题时执行的操作。 可以对触发操作和内部操作执行恢复操作。 它具有以下属性。

    属性类型描述
    operationidstring(只读) 动作操作的 ID。
    operationtype
    (必要)
    integer操作类型。

    触发操作的可能值:
    0 - 发送消息;
    1 - 远程命令;
    12 - 通知所有相关人员.
    opcommandobject对象,该对象包含有关恢复操作运行的命令的数据。

    操作命令对象是 .

    必要 用于远程命令操作。
    opcommand_grparray运行远程命令的主机组。

    每个对象具有以下属性:
    groupid - (string) 主机组的ID。

    必要 如果未设置“opcommand_hst”,则用于远程命令操作。
    opcommand_hstarray主机运行远程命令。

    每个对象具有以下属性:
    hostid - (string) 主机的ID;如果设置为0,则命令将在当前主机上运行。

    必要 如果未设置“opcommand_grp”,则用于远程命令操作。
    opmessageobject对象,该对象包含有关恢复操作发送的消息的数据。

    操作消息对象是 described in detail above.
    opmessage_grparray发送消息的用户组。

    每个对象具有以下属性:
    usrgrpid - (string) ID of the user group.

    必要 如果opmessage_usr未设置,则仅用于send message操作。
    “发送确认消息”操作被忽略。
    opmessage_usrarray发送消息的用户。

    每个对象具有以下属性:
    userid - (string) 用户 ID.

    必要 如果opmessage_grp未设置,则仅用于send message操作。
    “发送确认消息”操作被忽略。

    action filter 对象定义执行配置的操作必须满足的一组条件。它具有以下属性。

    属性类型描述
    conditions
    (必要)
    array用于筛选结果的筛选条件集
    evaltype
    (必要)
    integer过滤条件评估方法。

    可能值:
    0 - and/or;
    1 - and;
    2 - or;
    3 - 自定义表达式。
    eval_formulastring(只读) 用户定义的表达式,用于评估具有自定义表达式的过滤器的条件。 表达式必须包含通过其formulaid引用特定过滤条件的ID。 表达式中使用的ID必须与过滤条件中定义的ID完全匹配:没有条件可以保持未使用或省略。

    必要 自定义表达式过滤器。

    动作过滤条件

    动作过滤条件对象定义在运行操作动作之前必须检查的特定条件。

    为了更好地理解如何使用具有各种类型表达式的过滤器, 看看例子 and action.create method pages.

    条件条件名称支持操作期望值
    0Host group=, <>主机组 ID。
    1Host=, <>主机 ID。
    2Trigger=, <>触发器 ID。
    3Trigger namelike, not like触发器名称。
    4Trigger severity=, <>, >=, <=触发严重性。 参考 for a list of supported trigger severities.
    5Trigger value=触发值。 参考 trigger “value” property for a list of supported trigger values.
    6Time periodin, not in事件被触发的时间 .
    7Host IP=, <>要用逗号分隔的一个或多个IP范围。 参考 network discovery configuration 参阅有关支持的IP范围格式的更多信息
    8Discovered service type=, <>发现服务的类型。 服务类型与用于检测服务的发现检查的类型相匹配。 参考 获取支持的类型列表。
    9Discovered service port=, <>一个或多个端口范围以逗号分隔。
    10Discovery status=发现对象的状态。

    可能的值:
    0 - 主机或服务启动;
    1 - 主机或服务关闭;
    2 - 发现主机或服务;
    3 - 主机或服务失去连接。
    11Uptime or downtime duration>=, <=指示发现的对象处于当前状态的时间(秒)。
    12Received values=, <>, >=, <=, like, not like执行zabbix代理、snmpv1、snmpv2或snmpv3发现检查时返回的值。
    13Host template=, <>链接模板ID。
    15Application=, like, not like应用程序的名称。
    16Maintenance statusin, not inNo value 必要: 使用“in”运算符意味着主机必须处于维护状态,“not in”-不处于维护状态。
    18Discovery rule=, <>发现规则的ID。
    19Discovery check=, <>发现检查的ID。
    20Proxy=, <>代理的ID。
    21Discovery object=触发发现事件的对象类型。

    可能值:
    1 - 发现主机;
    2 - 发现服务。
    22Host namelike, not like主机名。
    23Event type=特定内部事件。

    可能值:
    0 - 监控项处于“不支持”状态;
    1 -监控项处于“正常”状态;
    2 -LLD规则处于“不支持”状态;
    3 - LLD规则处于“正常”状态;
    4 - 触发器处于“未知”状态;
    5 - 触发器处于“正常”状态。
    24Host metadatalike, not likeMetadata of the auto-registered host.
    25Tag=, <>, like, not like事件标记。
    26Tag value=, <>, like, not like事件标记值。