integer/array action.get(object parameters)
该方法允许根据给定参数检索动作。
此方法可供任何类型的用户使用。调用该方法的权限可在用户角色设置中撤销。更多信息请参阅User roles。
(object)
定义所需输出的参数.
该方法支持以下参数.
参数 | 数据类型 | 描述 |
---|---|---|
actionids | ID/array | 仅返回具有指定ID的动作. |
groupids | ID/array | 仅返回在动作条件中使用指定主机组的动作. |
hostids | ID/array | 仅返回在动作条件中使用指定主机的动作. |
triggerids | ID/array | 仅返回在动作条件中使用指定触发器的动作. |
mediatypeids | ID/array | 仅返回使用指定媒介类型发送消息的动作. |
usrgrpids | ID/array | 仅返回配置为向指定用户组发送消息的动作. |
userids | ID/array | 仅返回配置为向指定用户发送消息的动作. |
scriptids | ID/array | 仅返回配置为run指定脚本的动作. |
selectFilter | query | 返回包含动作条件过滤器的filter 属性. |
selectOperations | query | 返回包含动作操作的operations 属性. |
selectRecoveryOperations | query | 返回包含动作恢复操作的recovery_operations 属性. |
selectUpdateOperations | query | 返回包含动作update操作的update_operations 属性. |
sortfield | string/array | 按给定属性对结果进行排序. 可能的值: actionid , name , status . |
countOutput | boolean | 这些参数在通用get方法参数中有描述. |
excludeSearch | boolean | |
filter | object | |
limit | integer | |
output | query | |
preservekeys | boolean | |
search | object | |
searchByAny | boolean | |
searchWildcardsEnabled | boolean | |
sortorder | string/array | |
startSearch | boolean |
(integer/array)
返回以下两种结果之一:
countOutput
参数时)获取所有已配置的触发器动作及其关联的动作条件和操作
执行请求:
{ "jsonrpc": "2.0", "method": "action.get", "params": { "output": "extend", "selectOperations": "extend", "selectRecoveryOperations": "extend", "selectUpdateOperations": "extend", "selectFilter": "extend", "filter": { "eventsource": 0 } }, "id": 1 }
响应:
{ "jsonrpc": "2.0", "result": [ { "actionid": "3", "name": "Report problems to Zabbix administrators", "eventsource": "0", "status": "1", "esc_period": "1h", "pause_suppressed": "1", "filter": { "evaltype": "0", "formula": "", "conditions": [], "eval_formula": "" }, "operations": [ { "operationid": "3", "actionid": "3", "operationtype": "0", "esc_period": "0", "esc_step_from": "1", "esc_step_to": "1", "evaltype": "0", "opconditions": [], "opmessage": [ { "default_msg": "1", "subject": "", "message": "", "mediatypeid" => "0" } ], "opmessage_grp": [ { "usrgrpid": "7" } ] } ], "recovery_operations": [ { "operationid": "7", "actionid": "3", "operationtype": "11", "evaltype": "0", "opconditions": [], "opmessage": { "default_msg": "0", "subject": "{TRIGGER.STATUS}: {TRIGGER.NAME}", "message": "Trigger: {TRIGGER.NAME}\r\nTrigger status: {TRIGGER.STATUS}\r\nTrigger severity: {TRIGGER.SEVERITY}\r\nTrigger URL: {TRIGGER.URL}\r\n\r\nItem values:\r\n\r\n1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}\r\n2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2}\r\n3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3}\r\n\r\nOriginal event ID: {EVENT.ID}", "mediatypeid": "0" } } ], "update_operations": [ { "operationid": "31", "operationtype": "12", "evaltype": "0", "opmessage": { "default_msg": "1", "subject": "", "message": "", "mediatypeid": "0" } }, { "operationid": "32", "operationtype": "0", "evaltype": "0", "opmessage": { "default_msg": "0", "subject": "Updated: {TRIGGER.NAME}", "message": "{USER.FULLNAME} updated problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME} with the following message:\r\n{EVENT.UPDATE.MESSAGE}\r\n\r\nCurrent problem status is {EVENT.STATUS}", "mediatypeid": "1" }, "opmessage_grp": [ { "usrgrpid": "7" } ], "opmessage_usr": [] }, { "operationid": "33", "operationtype": "1", "evaltype": "0", "opcommand": { "scriptid": "3" }, "opcommand_hst": [ { "hostid": "10084" } ], "opcommand_grp": [] } ] } ], "id": 1 }
检索所有已配置的发现动作及其关联的动作条件和操作。该过滤器采用"与"评估类型,因此formula
属性为空且eval_formula
是自动生成的。
执行请求:
{ "jsonrpc": "2.0", "method": "action.get", "params": { "output": "extend", "selectOperations": "extend", "selectFilter": "extend", "filter": { "eventsource": 1 } }, "id": 1 }
响应:
{ "jsonrpc": "2.0", "result": [ { "actionid": "2", "name": "Auto discovery. Linux servers.", "eventsource": "1", "status": "1", "esc_period": "0s", "pause_suppressed": "1", "filter": { "evaltype": "0", "formula": "", "conditions": [ { "conditiontype": "10", "operator": "0", "value": "0", "value2": "", "formulaid": "B" }, { "conditiontype": "8", "operator": "0", "value": "9", "value2": "", "formulaid": "C" }, { "conditiontype": "12", "operator": "2", "value": "Linux", "value2": "", "formulaid": "A" } ], "eval_formula": "A and B and C" }, "operations": [ { "operationid": "1", "actionid": "2", "operationtype": "6", "esc_period": "0s", "esc_step_from": "1", "esc_step_to": "1", "evaltype": "0", "opconditions": [], "optemplate": [ { "templateid": "10001" } ] }, { "operationid": "2", "actionid": "2", "operationtype": "4", "esc_period": "0s", "esc_step_from": "1", "esc_step_to": "1", "evaltype": "0", "opconditions": [], "opgroup": [ { "groupid": "2" } ] } ] } ], "id": 1 }
CAction::get() 位于 ui/include/classes/api/services/CAction.php 文件中。