service.get

Описание

integer/array service.get(параметры объекта)

Метод позволяет получать услуги по заданным параметры.

Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.

Параметры

(object) Параметры, определяющие желаемый вывод.

Метод поддерживает следующие параметры.

Параметр Type Описание
serviceids ID/array Возвращать только сервисы с указанными ID.
parentids ID/array Возвращать только сервисы, связанные с указанными родительскими сервисами.
deep_parentids flag Возвращать все прямые и косвенные дочерние сервисы. Используется вместе с parentids.
childids ID/array Возвращать только сервисы, связанные с указанными дочерними сервисами.
evaltype integer Метод вычисления тегов.

Возможные значения:
0 - (по умолчанию) And/Or;
2 - Or.
tags object/array Возвращать только сервисы с указанными тегами.
Формат: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Пустой массив возвращает все сервисы.

Возможные значения operator:
0 - (по умолчанию) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
problem_tags object/array Возвращать только сервисы с указанными тегами проблем.
Формат: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Пустой массив возвращает все сервисы.

Возможные значения operator:
0 - (по умолчанию) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
without_problem_tags flag Возвращать только сервисы без тегов проблем.
slaids ID/array Возвращать только сервисы, связанные с указанными SLA.
selectChildren query Возвращать свойство children с дочерними сервисами.

Поддерживает count.
selectParents query Возвращать свойство parents с родительскими сервисами.

Поддерживает count.
selectTags query Возвращать свойство tags с тегами сервиса.

Поддерживает count.
selectProblemEvents query Возвращать свойство problem_events с массивом объектов событий проблем.

Объект события проблемы имеет следующие свойства:
eventid - (ID) ID события;
severity - (string) Текущая важность события;
name - (string) Имя восстановленного события.

Поддерживает count.
selectProblemTags query Возвращать свойство problem_tags с тегами проблем.

Поддерживает count.
selectStatusRules query Возвращать свойство status_rules с правилами статуса.

Поддерживает count.
selectStatusTimeline object/array Возвращать свойство status_timeline, содержащее изменения состояния сервиса за указанные периоды.

Формат [{"period_from": "<period_from>", "period_to": "<period_to>"}, ...]period_from является начальной датой периода (включительно; целочисленная временная метка), а period_to — конечной датой периода (не включительно; целочисленная временная метка), который вас интересует.

Возвращает массив записей, содержащих свойство start_value и массив alarms с изменениями состояния в пределах указанных периодов.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: serviceid, name, status, sortorder, created_at.
countOutput boolean Эти параметры описаны в справочном комментарии.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Возвращаемые значения

(целое число/массив) Возвращает либо:

  • · массив объектов;
  • · количество извлеченных объектов, если использовался параметр countOutput.

Примеры

Получение всех услуг

Получите все данные обо всех услугах и их зависимостях.

Запрос:

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

Ответ:

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

Источник

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