service.get

Descrizione

integer/array service.get(object parameters)

Il metodo consente di recuperare i servizi in base ai parametri specificati.

Questo metodo è disponibile per utenti di qualsiasi tipo. Le autorizzazioni per richiamare il metodo possono essere revocate nelle impostazioni dei ruoli utente. Per ulteriori informazioni, vedere Ruoli utente.

Parametri

(object) Parametri che definiscono l'output desiderato.

Il metodo supporta i seguenti parametri.

Parametro Type Descrizione
serviceids ID/array Restituisce solo i servizi con gli ID specificati.
parentids ID/array Restituisce solo i servizi collegati ai servizi padre specificati.
deep_parentids flag Restituisce tutti i servizi figli diretti e indiretti. Usato insieme a parentids.
childids ID/array Restituisce solo i servizi collegati ai servizi figli specificati.
evaltype integer Metodo di valutazione dei tag.

Valori possibili:
0 - (predefinito) And/Or;
2 - Or.
tags object/array Restituisce solo i servizi con i tag specificati.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un array vuoto restituisce tutti i servizi.

Valori possibili di operator:
0 - (predefinito) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
problem_tags object/array Restituisce solo i servizi con i tag problema specificati.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un array vuoto restituisce tutti i servizi.

Valori possibili di operator:
0 - (predefinito) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
without_problem_tags flag Restituisce solo i servizi senza tag problema.
slaids ID/array Restituisce solo i servizi collegati agli SLA specificati.
selectChildren query Restituisce una proprietà children con i servizi figli.

Supporta count.
selectParents query Restituisce una proprietà parents con i servizi padre.

Supporta count.
selectTags query Restituisce una proprietà tags con i tag del servizio.

Supporta count.
selectProblemEvents query Restituisce una proprietà problem_events con un array di oggetti evento problema.

L'oggetto evento problema ha le seguenti proprietà:
eventid - (ID) ID evento;
severity - (string) severità corrente dell'evento;
name - (string) nome dell'evento risolto.

Supporta count.
selectProblemTags query Restituisce una proprietà problem_tags con i tag problema.

Supporta count.
selectStatusRules query Restituisce una proprietà status_rules con le regole di stato.

Supporta count.
selectStatusTimeline object/array Restituisce una proprietà status_timeline contenente i cambiamenti di stato del servizio per i periodi specificati.

Formato [{"period_from": "<period_from>", "period_to": "<period_to>"}, ...] - dove period_from è una data di inizio (inclusiva; timestamp intero) e period_to è una data di fine (esclusiva; timestamp intero) per il periodo di interesse.

Restituisce un array di voci contenenti una proprietà start_value e un array alarms per i cambiamenti di stato all'interno dei periodi specificati.
sortfield string/array Ordina il risultato in base alle proprietà specificate.

Valori possibili: serviceid, name, status, sortorder, created_at.
countOutput boolean Questi parametri sono descritti nel commento di riferimento.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valori restituiti

(integer/array) Restituisce o:

  • una matrice di oggetti;
  • il conteggio degli oggetti recuperati, se il parametro countOutput è stato usato.

Esempi

Recupero di tutti i servizi

Recupera tutti i dati relativi a tutti i servizi e alle loro dipendenze.

Richiesta:

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

Risposta:

{
    "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
}

Fonte

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