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 typów użytkowników Admin i Super admin. Uprawnienia do wywołania tej metody mogą zostać cofnięte w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.

Parametry

(object/array) Właściwości prototypu hosta do zaktualizowania.

Właściwość hostid musi być zdefiniowana dla każdego prototypu hosta, wszystkie pozostałe właściwości są opcjonalne. Zaktualizowane zostaną tylko przekazane właściwości, wszystkie pozostałe pozostaną bez zmian.

Oprócz standardowych właściwości prototypu hosta, metoda akceptuje następujące parametry.

Parametr Typ Opis
groupLinks array Dowiązania grup zastępujące bieżące dowiązania grup w prototypie hosta.

Zachowanie parametru:
- tylko do odczytu dla obiektów dziedziczonych
groupPrototypes array Prototypy grup zastępujące istniejące prototypy grup w prototypie hosta.

Wszystkie prototypy grup, które nie zostały wymienione w żądaniu, zostaną usunięte.

Zachowanie parametru:
- tylko do odczytu dla obiektów dziedziczonych
macros object/array Makra użytkownika zastępujące bieżące makra użytkownika.
Wszystkie makra, które nie zostały wymienione w żądaniu, zostaną usunięte.
tags object/array Tagi prototypu hosta zastępujące bieżące tagi.
Wszystkie tagi, które nie zostały wymienione w żądaniu, zostaną usunięte.

Zachowanie parametru:
- tylko do odczytu dla obiektów dziedziczonych
interfaces object/array Niestandardowe interfejsy prototypu hosta zastępujące bieżące interfejsy.
Obiekt niestandardowego interfejsu powinien zawierać wszystkie swoje parametry.
Wszystkie interfejsy, które nie zostały wymienione w żądaniu, zostaną usunięte.

Zachowanie parametru:
- obsługiwane, jeśli custom_interfaces obiektu Host prototype object jest ustawione na "use host prototypes custom interfaces"
- tylko do odczytu dla obiektów dziedziczonych
templates object/array Szablony zastępujące aktualnie podlinkowane szablony.

Szablony muszą mieć zdefiniowaną tylko 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”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "hostprototype.update",
    "params": {
        "hostid": "10092",
        "status": 1
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10092"
        ]
    },
    "id": 1
}

Aktualizowanie tagów prototypu hosta

Zastąp tagi prototypu hosta nowymi.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "hostprototype.update",
    "params": {
        "hostid": "10092",
        "tags": [
            {
                "tag": "datacenter",
                "value": "{#DATACENTER.NAME}"
            },
            {
                "tag": "instance-type",
                "value": "{#INSTANCE_TYPE}"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10092"
        ]
    },
    "id": 1
}

Aktualizowanie niestandardowych interfejsów prototypu hosta

Zastąp dziedziczone interfejsy niestandardowymi interfejsami prototypu hosta.

Żądanie:

{
    "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}"
                }
            }
        ]
    },
    "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.