hostprototype.update
Opis
object hostprototype.update(object/array hostPrototypes)
Ta metoda umożliwia aktualizację istniejących prototypów hostów.
Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin. Uprawnienia do wywołania metody można odebrać w ustawieniach ról użytkownika. Zobacz Role użytkownika po więcej informacji.
Parametry
(object/array) Właściwości prototypów hostów do aktualizacji.
Właściwość hostid musi być zdefiniowana dla każdego prototypu hosta, wszystkie inne
właściwości są opcjonalne. Tylko przekazane właściwości zostaną zaktualizowane, wszystkie
inne pozostaną niezmienione.
Dodatkowo do standardowych właściwości prototypu hosta, metoda akceptuje następujące parametry.
| Parametr | Typ | Opis |
|---|---|---|
| groupLinks | array | Powiązania grupy do zastąpienia bieżących powiązań grupy na prototypie hosta. |
| groupPrototypes | array | Prototypy grup do zastąpienia istniejących prototypów grup na prototypie hosta. |
| macros | object/array | Makra użytkownika do zastąpienia bieżących makr użytkownika. Wszystkie makra, które nie są wymienione w żądaniu, zostaną usunięte. |
| tags | object/array | Znaczniki prototypu hosta do zastąpienia bieżących znaczników. Wszystkie tagi, które nie są wymienione w żądaniu, zostaną usunięte. |
| interfaces | object/array | Indywidualne interfejsy prototypu hosta do zastąpienia bieżących interfejsów. Obiekt indywidualnego interfejsu powinien zawierać wszystkie swoje parametry. Wszystkie interfejsy, które nie są wymienione w żądaniu, zostaną usunięte. |
| templates | object/array | Szablony do zastąpienia aktualnie połączonych szablonów. Szablony muszą mieć zdefiniowaną właściwość templateid. |
Zwracane wartości
(object) Zwraca obiekt zawierający identyfikatory zaktualizowanych prototypów
hostów we właściwości hostids.
Przykłady
Wyłączanie prototypu hosta
Wyłącz prototyp hosta, czyli ustaw jego status na 1.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
Aktualizacja znaczników prototypu hosta
Zastąp tagi prototypu hosta nowymi.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"tags": [
{
"tag": "Datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "Instance type",
"value": "{#INSTANCE_TYPE}"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
Aktualizacja indywidualnych interfejsów prototypu hosta
Zastąp odziedziczone interfejsy indywidualnymi interfejsami prototypu hosta.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"custom_interfaces": "1",
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"details": {
"version": "2",
"bulk": "1",
"community": "{$SNMP_COMMUNITY}"
}
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
Zobacz także
Źródło
CHostPrototype::update() w ui/include/classes/api/services/CHostPrototype.php.