查询动作
说明
integer/array action.get(object **parameters**)
该方法允许根据给定的参数检索动作。
参数
(object) 定义期望输出的参数。
该方法支持以下参数。
| 参数 | 类型 | 说明 |
|---|---|---|
| actionids | string/array | 只返回给定 ID 的动作。 |
| groupids | string/array | 只返回在操作条件下使用给定主机组的动作。 |
| hostids | string/array | 只返回在操作条件下使用给定主机的动作。 |
| triggerids | string/array | 只返回在操作条件下使用给定触发器的动作。 |
| mediatypeids | string/array | 只返回使用给定媒体类型发送消息的动作。 |
| usrgrpids | string/array | 仅返回配置为向给定用户组发送消息的动作。 |
| userids | string/array | 仅返回配置为向给定用户发送消息的动作。 |
| scriptids | string/array | 只返回配置为运行给定脚本的动作。 |
| selectFilter | query | 返回 过滤 属性中的动作筛选器。 |
| selectOperations | query | 返回动作属性中操作属性。 |
| selectRecoveryOperations | query | 在 恢复操作 属性中返回动作恢复操作。 |
| selectAcknowledgeOperations | query | 在 确认操作 属性中返回动作确认操作。 |
| sortfield | string/array | 根据给定的属性排序结果。 可能的值是: actionid, name and status. |
| countOutput | boolean | 这些参数对于所有 get 方法都是常见的。在 reference commentary. |
| editable | boolean | |
| excludeSearch | boolean | |
| filter | object | |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| search | object | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean | |
返回值
(integer/array) 也返回:
对象数组;
如果使用了
curtOutlook参数,则检索对象的计数。
范例
检索触发动作
检索所有配置的触发器操作以及操作条件和操作。
请求:
{"jsonrpc": "2.0","method": "action.get","params": {"output": "extend","selectOperations": "extend","selectRecoveryOperations": "extend","selectAcknowledgeOperations": "extend","selectFilter": "extend","filter": {"eventsource": 0}},"auth": "038e1d7b1735c6a5436ee9eae095879e","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": ""},"acknowledgeOperations": [{"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": {"type": "0","scriptid": "0","execute_on": "0","port": "","authtype": "0","username": "","password": "","publickey": "","privatekey": "","command": "notify.sh"},"opcommand_hst": [{"hostid": "0"}],"opcommand_grp": []}],"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"}]}],"recoveryOperations": [{"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"}}]}],"id": 1}
检索发现动作
检索所有配置的发现动作以及操作条件和操作。筛选器使用 and 评估类型,因此 formula 属性为空,自动生成 eval_formula 。
请求:
{"jsonrpc": "2.0","method": "action.get","params": {"output": "extend","selectOperations": "extend","selectRecoveryOperations": "extend","selectFilter": "extend","filter": {"eventsource": 1}},"auth": "038e1d7b1735c6a5436ee9eae095879e","id": 1}
响应:
{"jsonrpc": "2.0","result": [{"actionid": "2","name": "Auto discovery. Linux servers.","eventsource": "1","status": "1","esc_period": "0s","def_shortdata": "","def_longdata": "","r_shortdata": "","r_longdata": "","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": [{"operationid": "1","templateid": "10001"}]},{"operationid": "2","actionid": "2","operationtype": "4","esc_period": "0s","esc_step_from": "1","esc_step_to": "1","evaltype": "0","opconditions": [],"opgroup": [{"operationid": "2","groupid": "2"}]}],"recoveryOperations": [{"operationid": "585","actionid": "2","operationtype": "11","evaltype": "0","opconditions": [],"opmessage": {"operationid": "585","default_msg": "1","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"}}],"acknowledgeOperations": [{"operationid": "585","operationtype": "12","evaltype": "0","opmessage": {"default_msg": "1","subject": "Acknowledged: {TRIGGER.NAME}","message": "{USER.FULLNAME} acknowledged problem at {ACK.DATE} {ACK.TIME} with the following message:\r\n{ACK.MESSAGE}\r\n\r\nCurrent problem status is {EVENT.STATUS}","mediatypeid": "0"}},{"operationid": "586","operationtype": "0","evaltype": "0","opmessage": {"default_msg": "1","subject": "Acknowledged: {TRIGGER.NAME}","message": "{USER.FULLNAME} acknowledged problem at {ACK.DATE} {ACK.TIME} with the following message:\r\n{ACK.MESSAGE}\r\n\r\nCurrent problem status is {EVENT.STATUS}","mediatypeid": "0"},"opmessage_grp": [{"usrgrpid": "7"}],"opmessage_usr": []},{"operationid": "587","operationtype": "1","evaltype": "0","opcommand": {"type": "0","scriptid": "0","execute_on": "0","port": "","authtype": "0","username": "","password": "","publickey": "","privatekey": "","command": "notify.sh"},"opcommand_hst": [{"hostid": "0"}],"opcommand_grp": []}]}],"id": 1}
参见
来源
CAction::get() in frontends/php/include/classes/api/services/CAction.php.
