service.get

Opis

integer/array service.get(object parameters)

Ta metoda umożliwia pobieranie usług zgodnie z podanymi parametrami.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywoływania tej metody mogą zostać cofnięte w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji User roles.

Parametry

(object) Parametry definiujące żądane dane wyjściowe.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
serviceids ID/array Zwracaj tylko usługi o podanych identyfikatorach.
parentids ID/array Zwracaj tylko usługi, które są powiązane z podanymi usługami nadrzędnymi.
deep_parentids flag Zwracaj wszystkie bezpośrednie i pośrednie usługi podrzędne. Używane razem z parentids.
childids ID/array Zwracaj tylko usługi, które są powiązane z podanymi usługami podrzędnymi.
evaltype integer Metoda oceny tagów.

Możliwe wartości:
0 - (domyślnie) And/Or;
2 - Or.
tags object/array Zwracaj tylko usługi z podanymi tagami.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie usługi.

Możliwe wartości operator:
0 - (domyślnie) Zawiera;
1 - Równa się;
2 - Nie zawiera;
3 - Nie równa się;
4 - Istnieje;
5 - Nie istnieje.
problem_tags object/array Zwracaj tylko usługi z podanymi tagami problemów.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie usługi.

Możliwe wartości operator:
0 - (domyślnie) Zawiera;
1 - Równa się;
2 - Nie zawiera;
3 - Nie równa się;
4 - Istnieje;
5 - Nie istnieje.
without_problem_tags flag Zwracaj tylko usługi bez tagów problemów.
slaids ID/array Zwracaj tylko usługi, które są powiązane z określonymi SLA.
selectChildren query Zwracaj właściwość children z usługami podrzędnymi.

Obsługuje count.
selectParents query Zwracaj właściwość parents z usługami nadrzędnymi.

Obsługuje count.
selectTags query Zwracaj właściwość tags z tagami usług.

Obsługuje count.
selectProblemEvents query Zwracaj właściwość problem_events z tablicą obiektów zdarzeń problemów.

Obiekt zdarzenia problemu ma następujące właściwości:
eventid - (ID) ID zdarzenia;
severity - (string) Bieżący poziom ważności zdarzenia;
name - (string) Nazwa rozwiązanego zdarzenia.

Obsługuje count.
selectProblemTags query Zwracaj właściwość problem_tags z tagami problemów.

Obsługuje count.
selectStatusRules query Zwracaj właściwość status_rules z regułami statusu.

Obsługuje count.
selectStatusTimeline object/array Zwracaj właściwość status_timeline zawierającą zmiany stanu usługi dla podanych okresów.

Format [{"period_from": "<period_from>", "period_to": "<period_to>"}, ...] - gdzie period_from jest datą początkową (włącznie; znacznik czasu integer), a period_to jest datą końcową (wyłącznie; znacznik czasu integer) dla interesującego Cię okresu.

Zwraca tablicę wpisów zawierających właściwość start_value oraz tablicę alarms dla zmian stanu w określonych okresach.
sortfield string/array Sortuj wynik według podanych właściwości.

Możliwe wartości: serviceid, name, status, sortorder, created_at.
countOutput boolean Te parametry są opisane w komentarzu referencyjnym.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Zwracane wartości

(integer/array) Zwraca:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli został użyty parametr countOutput.

Przykłady

Pobieranie wszystkich usług

Pobierz wszystkie dane o wszystkich usługach i ich zależnościach.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "service.get",
    "params": {
        "output": "extend",
        "selectChildren": "extend",
        "selectParents": ["serviceid", "name"]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "serviceid": "1",
            "name": "Zabbix cluster",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "8d77bd91b62347e4b79382912eb5df95",
            "created_at": "1761742392",
            "readonly": false,
            "parents": [],
            "children": [
                {
                    "serviceid": "2",
                    "name": "Zabbix server node 1",
                    "status": "-1",
                    "algorithm": "2",
                    "sortorder": "0",
                    "weight": "0",
                    "propagation_rule": "0",
                    "propagation_value": "0",
                    "description": "",
                    "uuid": "195911d26d7f4e218d6217079bcd5929",
                    "created_at": "1761742623",
                    "readonly": false
                },
                {
                    "serviceid": "3",
                    "name": "Zabbix server node 2",
                    "status": "-1",
                    "algorithm": "2",
                    "sortorder": "0",
                    "weight": "0",
                    "propagation_rule": "0",
                    "propagation_value": "0",
                    "description": "",
                    "uuid": "9fc659a30fe244f690dff25fc2a9db5c",
                    "created_at": "1761742654",
                    "readonly": false
                }
            ]
        },
        {
            "serviceid": "2",
            "name": "Zabbix server node 1",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "195911d26d7f4e218d6217079bcd5929",
            "created_at": "1761742623",
            "readonly": false,
            "parents": [
                {
                    "serviceid": "1",
                    "name": "Zabbix cluster"
                }
            ],
            "children": []
        },
        {
            "serviceid": "3",
            "name": "Zabbix server node 2",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "9fc659a30fe244f690dff25fc2a9db5c",
            "created_at": "1761742654",
            "readonly": false,
            "parents": [
                {
                    "serviceid": "1",
                    "name": "Zabbix cluster"
                }
            ],
            "children": []
        }
    ],
    "id": 1
}

Źródło

CService::get() w ui/include/classes/api/services/CService.php.