integer/array discoveryrule.get(object parameters)
Ова метода омогућава преузимање LLD правила у складу са задатим параметрима.
Ова метода је доступна корисницима било ког типа. Дозволе за позивање методе могу бити одузете у подешавањима улога корисника. Погледајте User roles за више информација.
(object)
Параметри који дефинишу жељени излаз.
Метод подржава следеће параметре.
Parameter | Type | Description |
---|---|---|
itemids | ID/array | Врати само LLD правила са датим ID-ијевима. |
groupids | ID/array | Врати само LLD правила која припадају домаћинима из датих група. |
hostids | ID/array | Врати само LLD правила која припадају датим домаћинима. |
inherited | boolean | Ако је постављено на true врати само LLD правила наслеђена из шаблона. |
interfaceids | ID/array | Врати само LLD правила користе дате домаћин интерфејсе. |
monitored | boolean | Ако је постављено на true врати само омогућена LLD правила која припадају надгледаним домаћинима. |
templated | boolean | Ако је постављено на true враћа само LLD правила која припадају шаблонима. |
templateids | ID/array | Врати само LLD правила која припадају датим шаблонима. |
selectFilter | query | Врати својство filter са подацима филтера који користи LLD правило. |
selectGraphs | query | Враћа својство graphs са прототиповима графова који припадају LLD правилу.Подржава count . |
selectHostPrototypes | query | Врати својство hostPrototypes са прототиповима домаћина који припадају LLD правилу.Подржава count . |
selectHosts | query | Врати својство hosts са низом домаћина којима LLD правило припада. |
selectItems | query | Врати својство items са прототиповима ставки који припадају LLD правилу.Подржава count . |
selectTriggers | query | Врати својство triggers са прототиповима окидача који припадају LLD правилу.Подржава count . |
selectLLDMacroPaths | query | Врати својство lld_macro_paths са листом LLD макроа и путањама до вредности додељених сваком одговарајућем макроу. |
selectPreprocessing | query | Врати својство preprocessing са опцијама за претходну обраду LLD правила. |
selectOverrides | query | Врати својство lld_rule_overrides са листом филтера, услова и операција које се изводе на објектима прототипа. |
filter | object | Врати само оне резултате који се тачно подударају са датим филтером. Прихвата објекат, где су кључеви имена својстава, а вредности су или једна вредност или низ вредности за подударање. Не подржава својства text data type.Подржава додатна својства: host - техничко име домаћина коме припада правило LLD. |
limitSelects | integer | Ограничава број записа које враћају подизбори. Примјењује се на сљедеће подизборе: selectItems , selectGraphs , selectTriggers . |
sortfield | string/array | Сортирај резултат према датим својствима. Могуће вредности: itemid , name , key_ , delay , type , status . |
|countOutput|boolean|Ови параметри који су заједнички за све методе get
су детаљно описани у [reference commentary] (/manual/api/reference_commentary#common_get_method_parameters).| |editable|boolean|^| |excludeSearch|boolean|^| |limit|integer|^| |output|query|^| |preservekeys|boolean|^| |search|object|^| |searchByAny|boolean|^| |searchWildcardsEnabled|boolean|^| |sortorder|string/array|^| |startSearch|boolean|^|
(integer/array)
Враћа било:
countOutput
коришћен.Преузми сва правила откривања за одређени ID домаћина.
{
"jsonrpc": "2.0",
"method": "discoveryrule.get",
"params": {
"output": "extend",
"hostids": "10202"
},
"id": 1
}
Одговор:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "27425",
"type": "0",
"snmp_oid": "",
"hostid": "10202",
"name": "Network interface discovery",
"key_": "net.if.discovery",
"delay": "1h",
"status": "0",
"trapper_hosts": "",
"templateid": "22444",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"interfaceid": "119",
"description": "Discovery of network interfaces as defined in global regular expression \"Network interfaces for discovery\".",
"lifetime": "30d",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "",
"query_fields": [],
"posts": "",
"status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"state": "0",
"error": "",
"parameters": []
},
{
"itemid": "27426",
"type": "0",
"snmp_oid": "",
"hostid": "10202",
"name": "Mounted filesystem discovery",
"key_": "vfs.fs.discovery",
"delay": "1h",
"status": "0",
"trapper_hosts": "",
"templateid": "22450",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"interfaceid": "119",
"description": "Discovery of file systems of different types as defined in global regular expression \"File systems for discovery\".",
"lifetime": "30d",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "",
"query_fields": [],
"posts": "",
"status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"uuid": "","
lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"state": "0",
"error": "",
"parameters": []
}
],
"id": 1
}
Преузми назив LLD правила "24681" и његове услове филтера. Филтер користи тип евалуације "and", тако да је својство formula
празно, а eval_formula
се генерише аутоматски.
{
"jsonrpc": "2.0",
"method": "discoveryrule.get",
"params": {
"output": ["name"],
"selectFilter": "extend",
"itemids": ["24681"]
},
"id": 1
}
Одговор:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "24681",
"name": "Filtered LLD rule",
"filter": {
"evaltype": "1",
"formula": "",
"conditions": [
{
"macro": "{#MACRO1}",
"value": "@regex1",
"operator": "8",
"formulaid": "A"
},
{
"macro": "{#MACRO2}",
"value": "@regex2",
"operator": "9",
"formulaid": "B"
},
{
"macro": "{#MACRO3}",
"value": "",
"operator": "12",
"formulaid": "C"
},
{
"macro": "{#MACRO4}",
"value": "",
"operator": "13",
"formulaid": "D"
}
],
"eval_formula": "A and B and C and D"
}
}
],
"id": 1
}
Преузми LLD правило за домаћина према вредности поља URL правила. Подржано је само тачно подударање URL стринга дефинисаног за LLD правило.
{
"jsonrpc": "2.0",
"method": "discoveryrule.get",
"params": {
"hostids": "10257",
"filter": {
"type": 19,
"url": "http://127.0.0.1/discoverer.php"
}
},
"id": 1
}
Одговор:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "28336",
"type": "19",
"snmp_oid": "",
"hostid": "10257",
"name": "API HTTP agent",
"key_": "api_discovery_rule",
"delay": "5s",
"status": "0",
"trapper_hosts": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"interfaceid": "5",
"description": "",
"lifetime": "30d",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "http://127.0.0.1/discoverer.php",
"query_fields": [
{
"name": "mode",
"value": "json"},
{
"name": "elements",
"value": "2"
}
],
"posts": "","status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [
{
"name" : "X-Type",
"value": "api"
},
{
"name": "Authorization",
"value": "Bearer mF_A.B5f-2.1JcM"
}
],
"retrieve_mode": "0",
"request_method": "1",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"state": "0",
"error": "",
"parameters": []
}
],
"id": 1
}
Преузми једно LLD правило које има различита подешавања замене.
{
"jsonrpc": "2.0",
"method": "discoveryrule.get",
"params": {
"output": ["name"],
"itemids": "30980",
"selectOverrides": ["name", "step", "stop", "filter", "operations"]
},
"id": 1
}
Одговор:
{
"jsonrpc": "2.0",
"result": [
{
"name": "Discover database host",
"overrides": [
{
"name": "Discover MySQL host",
"step": "1",
"stop": "1",
"filter": {
"evaltype": "2",
"formula": "",
"conditions": [
{
"macro": "{#UNIT.NAME}",
"operator": "8",
"value": "^mysqld\\.service$",
"formulaid": "A"
},
{
"macro": "{#UNIT.NAME}",
"operator": "8",
"value": "^mariadb\\.service$",
"formulaid": "B"
}
],
"eval_formula": "A or B"
},
"operations": [
{
"operationobject": "3",
"operator": "2",
"value": "Database host",
"opstatus": {
"status": "0"
},
"optag": [
{
"tag": "database",
"value": "mysql"
}
],
"optemplate": [
{
"templateid": "10170"
}
]
}
]
},
{
"name": "Discover PostgreSQL host",
"step": "2",
"stop": "1",
"filter": {
"evaltype": "0",
"formula": "",
"conditions": [
{
"macro": "{#UNIT.NAME}",
"operator": "8",
"value": "^postgresql\\.service$",
"formulaid": "A"
}
],
"eval_formula": "A"
},
"operations": [
{
"operationobject": "3",
"operator": "2",
"value": "Database host",
"opstatus": {
"status": "0"
},
"optag": [
{
"tag": "database",
"value": "postgresql"
}
],
"optemplate": [
{
"templateid": "10263"
}
]
}
]
}
]
}
],
"id": 1
}
###Такође погледајте
-Graph prototype -Host -Item prototype -LLD rule filter -Trigger prototype
CDiscoveryRule::get() у ui/include/classes/api/services/CDiscoveryRule.php.