host.update

Opis

object host.update(object/array hosts)

Ta metoda umożliwia aktualizację istniejących 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 User roles.

Parametry

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

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

Należy jednak pamiętać, że aktualizacja technicznej nazwy hosta spowoduje również aktualizację widocznej nazwy hosta (jeśli nie została podana osobno) na wartość technicznej nazwy hosta.

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

Parameter Type Description
groups object/array Grupy hostów zastępujące bieżące grupy hostów, do których należy host.
Wszystkie grupy hostów, które nie zostały wymienione w żądaniu, zostaną odłączone.

Grupy hostów muszą mieć zdefiniowaną wyłącznie właściwość groupid.
interfaces object/array Interfejsy hosta zastępujące bieżące interfejsy hosta.
Wszystkie interfejsy, które nie zostały wymienione w żądaniu, zostaną usunięte.
tags object/array Tagi hosta zastępujące bieżące tagi hosta.
Wszystkie tagi, które nie zostały wymienione w żądaniu, zostaną usunięte.
inventory object Właściwości inwentarza hosta.
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.
templates object/array Szablony zastępujące aktualnie podłączone szablony.
Wszystkie szablony, które nie zostały wymienione w żądaniu, zostaną jedynie odłączone.

Szablony muszą mieć zdefiniowaną wyłącznie właściwość templateid.
templates_clear object/array Szablony do odłączenia i wyczyszczenia z hosta.

Szablony muszą mieć zdefiniowaną wyłącznie właściwość templateid.

Zwracane wartości

(object) Zwraca obiekt zawierający identyfikatory zaktualizowanych hostów we właściwości hostids.

Przykłady

Włączanie monitorowania hosta

Włącz monitorowanie hosta, czyli ustaw jego status na „0”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10126",
        "status": 0
    },
    "id": 1
}

Odpowiedź:

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

Włączanie wielu hostów

Włącz monitorowanie dwóch hostów, tj. ustaw ich status na „0”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": [
        {
            "hostid": "10127",
            "status": 0
        },
        {
            "hostid": "10128",
            "status": 0
        }
    ],
    "id": 1
}

Odpowiedź:

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

Odłączanie szablonów

Odłącz i wyczyść dwa szablony z hosta.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10126",
        "templates_clear": [
            {
                "templateid": "10124"
            },
            {
                "templateid": "10125"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

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

Aktualizowanie makr hosta

Zastąp wszystkie makra hosta dwoma nowymi.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10126",
        "macros": [
            {
                "macro": "{$PASS}",
                "value": "password"
            },
            {
                "macro": "{$DISC}",
                "value": "sda",
                "description": "Updated description"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

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

Aktualizowanie inwentarza hosta

Zmień tryb inwentarza i dodaj lokalizację

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10387",
        "inventory_mode": 0,
        "inventory": {
            "location": "Latvia, Riga"
        }
    },
    "id": 1
}

Odpowiedź:

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

Aktualizowanie tagów hosta

Zastąp wszystkie tagi hosta nowym tagiem.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10387",
        "tags": {
            "tag": "os",
            "value": "rhel-7"
        }
    },
    "id": 1
}

Odpowiedź:

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

Aktualizowanie makr wykrytego hosta

Przekształć makro utworzone przez regułę wykrywania z trybu „automatic” na „manual” i zmień jego wartość na „new-value”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10387",
        "macros": {
            "hostmacroid": "5541",
            "value": "new-value",
            "automatic": "0"
        }
    },
    "id": 1
}

Odpowiedź:

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

Aktualizacja szyfrowania hosta

Zaktualizuj host „10590”, aby używał wyłącznie szyfrowania PSK dla połączeń z hosta do serwera Zabbix, oraz zmień tożsamość PSK i klucz PSK. Zwróć uwagę, że host musi być wstępnie skonfigurowany do używania PSK.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10590",
        "tls_connect": 1,
        "tls_accept": 2,
        "tls_psk_identity": "PSK 002",
        "tls_psk": "e560cb0d918d26d31b4f642181f5f570ad89a390931102e5391d08327ba434e9"
    },
    "id": 1
}

Odpowiedź:

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

Zobacz także

Źródło

CHost::update() w ui/include/classes/api/services/CHost.php.