脚本 object

以下 objects 直接与 script API 相关。

脚本

脚本 object 具有以下属性。

属性 数据类型 描述
scriptid ID 脚本的ID。

属性行为:
- 只读
- 对于 update 操作是必需的
name string 脚本的名称。

属性行为:
- 对于 create 操作是必需的
type integer 脚本类型。

如果 scope 设置为 "action operation",可能的值有:
0 - 脚本;
1 - IPMI;
2 - SSH;
3 - TELNET;
5 - Webhook。

如果 scope 设置为 "manual 主机 action" 或 "manual event action",可能的值有:
6 - URL。

属性行为:
- 对于 create 操作是必需的
command string 要运行的命令。

属性行为:
- 如果 type 设置为 "Script", "IPMI", "SSH", "TELNET" 或 "Webhook",则为必需的
scope integer 脚本作用域。

可能的值:
1 - action operation;
2 - manual 主机 action;
4 - manual event action。

属性行为:
- 对于 create 操作是必需的
execute_on integer 在哪里run脚本。

可能的值:
0 - 在Zabbix agent上run;
1 - 在Zabbix server上run。仅在Zabbix server上启用了全局脚本执行时才支持
2 - (默认) 在Zabbix server或proxy上run。

属性行为:
- 如果 type 设置为 "Script",则支持
menu_path string 用斜杠分隔的文件夹,当点击主机或事件时,在前端形成类似菜单的导航。

属性行为:
- 如果 scope 设置为 "manual 主机 action" 或 "manual event action",则支持
authtype integer SSH脚本类型的认证方法。

可能的值:
0 - 密码;
1 - 公钥。

属性行为:
- 如果 type 设置为 "SSH",则支持
username string 用于认证的用户名。

属性行为:
- 如果 type 设置为 "SSH" 或 "TELNET",则为必需的
password string 用于SSH脚本(密码认证)和TELNET脚本的密码。

属性行为:
- 如果 type 设置为 "SSH" 且 authtype 设置为 "password",或者 type 设置为 "TELNET",则支持
publickey string 用于SSH脚本(公钥认证)的公钥file的名称。

属性行为:
- 如果 type 设置为 "SSH" 且 authtype 设置为 "public key",则为必需的
privatekey string 用于SSH脚本(公钥认证)的私钥file的名称。

属性行为:
- 如果 type 设置为 "SSH" 且 authtype 设置为 "public key",则为必需的
port string SSH和TELNET脚本使用的端口号。

属性行为:
- 如果 type 设置为 "SSH" 或 "TELNET",则支持
groupid ID 脚本可以被run的主机组的ID。

如果设置为"0",脚本将在所有主机组上可用。

默认值:0。
usrgrpid ID 将被允许run脚本的用户组的ID。

如果设置为"0",脚本将对所有用户组可用。

默认值:0。

属性行为:
- 如果 scope 设置为 "manual 主机 action" 或 "manual event action",则支持
host_access integer run脚本所需的主机权限。

可能的值:
2 - (默认) 读取;
3 - 写入。

属性行为:
- 如果 scope 设置为 "manual 主机 action" 或 "manual event action",则支持
confirmation string 确认弹窗文本。
当尝试从Zabbix前端run脚本时,将出现弹窗。

属性行为:
- 如果 scope 设置为 "manual 主机 action" 或 "manual event action",则支持
timeout string Webhook脚本执行超时时间(以秒为单位)。支持时间后缀(例如,30s,1m)。

可能的值:1-60s。

默认值:30s。

属性行为:
- 如果 type 设置为 "Webhook",则为必需的
parameters array webhook参数的array。

属性行为:
- 如果 type 设置为 "Webhook",则支持
description string 脚本的描述。
url string 用户定义的URL。

属性行为:
- 如果 type 设置为 "URL",则为必需的
new_window integer 在新窗口中打开URL。

可能的值:
0 - 否;
1 - (默认) 是。

属性行为:
- 如果 type 设置为 "URL",则支持
manualinput integer 指示脚本是否接受用户提供的输入。

可能的值:
0 - (默认) 禁用;
1 - 启用;

属性行为:
- 如果 scope 设置为 "manual 主机 action" 或 "manual event action",则支持
manualinput_prompt string 手动输入提示文本。

属性行为:
- 如果 manualinput 设置为 "Enabled",则为必需的
manualinput_validator string 用于验证用户提供的输入的字符string字段。该string由正则表达式或逗号分隔的值集合组成。

属性行为:
- 如果 manualinput 设置为 "Enabled",则为必需的
manualinput_validator_type integer 确定预期的用户输入类型。

可能的值:
0 - (默认) string。表示manualinput_validator应被视为正则表达式;
1 - 列表。表示manualinput_validator应被视为逗号分隔的可能输入值列表。

属性行为:
- 如果 manualinput 设置为 "Enabled",则支持
manualinput_default_value string 自动填充用户输入的默认值。

属性行为:
- 如果 manualinput_validator_type 设置为 "string",则支持

Webhook参数

调用webhook脚本时传递给它的参数具有以下属性。

属性 数据类型 描述
name string 参数名称。

属性行为:
- 必填
value string 参数值。支持macros

调试

已执行的webhook脚本的调试信息。调试object具有以下属性。

属性 数据类型 描述
logs array array的日志条目
ms string 脚本执行持续时间(毫秒)。

日志条目

日志条目 object 具有以下属性。

属性 数据类型 描述
level integer 日志级别。
ms string 自脚本 run 以来经过的时间(毫秒),然后才添加日志条目。
message string 日志消息。