apmtrace.get

Описание

integer/array apmtrace.get(object parameters)

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

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

Параметры

(object) Параметры, определяющие требуемый результат.

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

Параметр Тип Описание
time_from timestamp Возвращать только трассировки, корневой спан которых начался в указанное время или позже.

Поведение параметра:
- обязательный
time_till timestamp Возвращать только трассировки, корневой спан которых начался до указанного времени.

Поведение параметра:
- обязательный
traceids string/array Возвращать только трассировки с указанными идентификаторами.
resource_attributes object/array Возвращать только трассировки, корневой спан которых имеет указанные атрибуты ресурса.
Формат: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].
Пустой массив возвращает все трассировки.

Возможные значения оператора:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
resource_attributes_evaltype integer Метод оценки условий в resource_attributes.

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

Возможные значения оператора:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
span_attributes_evaltype integer Метод оценки условий в span_attributes.

Возможные значения:
0 - (по умолчанию) И/ИЛИ;
2 - ИЛИ.
min_duration integer Возвращать только трассировки, у которых duration корневого спана больше или равно указанному значению в наносекундах.
max_duration integer Возвращать только трассировки, у которых duration корневого спана меньше указанного значения в наносекундах.
filter object Возвращать только результаты, которые точно соответствуют указанному фильтру.

Принимает объект, в котором ключами являются имена свойств, а значениями - либо отдельное значение, либо массив значений для сопоставления.

Поддерживаемые свойства: traceid, spanid, trace_state, span_name, span_kind, service_name, scope_name, scope_version, status_code, status_message.
search object Возвращать результаты, соответствующие указанному шаблону (без учета регистра).

Принимает объект, в котором ключами являются имена свойств, а значениями - строки для поиска. Если дополнительные параметры не указаны, выполняется поиск LIKE "%…%".

Поддерживаемые свойства: trace_state, span_name, service_name, scope_name, scope_version, status_message.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: timestamp, traceid, spanid, trace_state, span_name, span_kind, service_name, scope_name, scope_version, duration, status_code, status_message.
offset integer Количество записей, которые необходимо пропустить перед возвратом результата.
countOutput boolean Эти параметры описаны в справочном комментарии.
excludeSearch boolean
limit integer
output query
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

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

(integer/array) Возвращает одно из следующего:

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

Примеры

Получение медленных трассировок

Получите две самые медленные трассировки сервиса zabbix-nginx. Выполните поиск трассировок с 10:00 до 11:00 1 октября 2026 года (UTC) и включите только те, выполнение которых заняло 1 секунду или больше.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "apmtrace.get",
    "params": {
        "output": ["timestamp", "traceid", "span_name", "service_name", "duration", "status_code", "span_count", "error_count"],
        "time_from": 1790848800,
        "time_till": 1790852400,
        "filter": {
            "service_name": "zabbix-nginx"
        },
        "min_duration": 1000000000,
        "sortfield": "duration",
        "sortorder": "DESC",
        "limit": 2
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "timestamp": "1790849274910226417",
            "traceid": "8a4f1c7e2b9d4e6fa0c3b5d7e9f1a2c4",
            "span_name": "POST /zabbix.php",
            "service_name": "zabbix-nginx",
            "duration": "30412907815",
            "status_code": "Error",
            "span_count": "49",
            "error_count": "2"
        },
        {
            "timestamp": "1790850512338104952",
            "traceid": "dee625f33cb0994e86c5cd4640e3b09c",
            "span_name": "POST /zabbix.php",
            "service_name": "zabbix-nginx",
            "duration": "1104826531",
            "status_code": "Unset",
            "span_count": "27",
            "error_count": "0"
        }
    ],
    "id": 1
}

См. также

Источник

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