查询动作
说明
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.