template.update

Opis

object template.update(object/array templates)

Ta metoda umożliwia aktualizację istniejących szablonó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 szablonu do zaktualizowania.

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

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

Parametr Typ Opis
groups object/array Grupy szablonów zastępujące bieżące grupy szablonów, do których należą szablony.

Dla grup szablonów musi być zdefiniowana tylko właściwość groupid.
tags object/array Tagi szablonu zastępujące bieżące tagi szablonu.
macros object/array Makra użytkownika zastępujące bieżące makra użytkownika w podanych szablonach.
templates object/array Szablony zastępujące aktualnie podlinkowane szablony. Szablony, które nie zostaną przekazane, zostaną jedynie odlinkowane.

Dla szablonów musi być zdefiniowana tylko właściwość templateid.
templates_clear object/array Szablony do odlinkowania i wyczyszczenia z podanych szablonów.

Dla szablonów musi być zdefiniowana tylko właściwość templateid.

Zwracane wartości

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

Przykłady

Zmiana standardowych właściwości szablonu

Zmień nazwę techniczną szablonu na „Linux by Zabbix agent Custom”, nazwę widoczną na „My template” oraz zaktualizuj opis szablonu.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "host": "Linux by Zabbix agent Custom",
        "name": "My template",
        "description": "This is a custom Linux template."
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Aktualizowanie grup szablonów

Zastąp wszystkie grupy szablonów dla danego szablonu inną grupą.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "groups": [
            {
                "groupid": "24"
            } 
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Aktualizowanie wielu grup szablonów

Zastąp wszystkie grupy szablonów dla wielu szablonów innymi grupami.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": [
        {
            "templateid": "10086",
            "groups": [
                {
                    "groupid": "24"
                }
            ]
        },
        {
            "templateid": "10087",
            "groups": [
                {
                    "groupid": "1"
                },
                {
                    "groupid": "12"
                }
            ]
        },
        {
            "templateid": "10088",
            "groups": [
                {
                    "groupid": "1"
                },
                {
                    "groupid": "12"
                }
            ]
        }
    ],
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086",
            "10087",
            "10088"
        ]
    },
    "id": 1
}

Aktualizowanie tagów szablonu

Zastąp wszystkie tagi szablonu innym tagiem.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "tags": [
            {
                "tag": "host-name",
                "value": "{HOST.NAME}"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Aktualizowanie makr szablonu

Zastąp wszystkie makra szablonu innymi.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "macros": [
            {
                "macro": "{$MY_MACRO}",
                "value": "new_value"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Aktualizowanie wielu makr szablonu

Zastąp wszystkie makra użytkownika podanym makrem użytkownika w wielu szablonach.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": [
            {
                "templateid": "10087",
                "macros": [
                    {
                        "macro": "{$AGENT.TIMEOUT}",
                        "value": "5m",
                        "description": "Limit czasu, po którym agent jest uznawany za niedostępny. Działa tylko dla agentów osiągalnych z serwera/proxy Zabbix (tryb pasywny)."
                    }
                ]
            },
            {
                "templateid": "10088",
                "macros": [
                    {
                        "macro": "{$AGENT.TIMEOUT}",
                        "value": "5m",
                        "description": "Limit czasu, po którym agent jest uznawany za niedostępny. Działa tylko dla agentów osiągalnych z serwera/proxy Zabbix (tryb pasywny)."
                    }
                ]
            }
        ],
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10087",
            "10088"
        ]
    },
    "id": 1
}

Aktualizacja podłączonych szablonów szablonu

Odłącz (bez czyszczenia) wszystkie szablony od podanego szablonu i podłącz do niego inny.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "templates": [
            {
                "templateid": "10001"
            }
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Czyszczenie wielu podłączonych szablonów szablonu

Odłącz i wyczyść określony podłączony szablon z podanych szablonów.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": [
        {
            "templateid": "10087",
            "templates_clear": [
                {
                    "templateid": "10001"
                }
            ]
        },
        {
            "templateid": "10088",
            "templates_clear": [
                {
                    "templateid": "10001"
                }
            ]
        }
    ],
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10087",
            "10088"
        ]
    },
    "id": 1
}

Źródło

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