apmspan.get
Описание
integer/array apmspan.get(object parameters)
Метод позволяет получать спаны в соответствии с указанными параметрами.
Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках роли пользователя. Дополнительную информацию см. в разделе Роли пользователей.
Параметры
(object) Параметры, определяющие требуемый результат.
Метод поддерживает следующие параметры.
| Параметр | Тип | Описание |
|---|---|---|
| time_from | timestamp | Возвращать только интервалы, начавшиеся в указанное время или позже. Поведение параметра: - обязательный |
| time_till | timestamp | Возвращать только интервалы, начавшиеся до указанного времени. Поведение параметра: - обязательный |
| traceids | string/array | Возвращать только интервалы, относящиеся к указанным трассировкам. |
| spanids | string/array | Возвращать только интервалы с указанными идентификаторами. |
| parent_spanids | 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 | Возвращать только интервалы, длительность которых больше или равна указанному значению в наносекундах. |
| max_duration | integer | Возвращать только интервалы, длительность которых меньше указанного значения в наносекундах. |
| filter | object | Возвращать только результаты, которые точно соответствуют указанному фильтру. Принимает объект, в котором ключами являются имена свойств, а значениями - отдельное значение или массив значений для сопоставления. Поддерживаемые свойства: traceid, spanid, parent_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, parent_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.
Примеры
Получение иерархии спанов трассировки
Получите первые четыре спана трассировки "dee625f33cb0994e86c5cd4640e3b09c", отсортированные по времени начала.
Свойство parent_spanid показывает взаимосвязь спанов: у корневого спана нет родительского спана, а каждый другой спан ссылается на спан, который его запустил.
{
"jsonrpc": "2.0",
"method": "apmspan.get",
"params": {
"output": ["spanid", "parent_spanid", "service_name", "span_name", "duration", "status_code"],
"time_from": 1790848800,
"time_till": 1790852400,
"traceids": "dee625f33cb0994e86c5cd4640e3b09c",
"sortfield": "timestamp",
"sortorder": "ASC",
"limit": 4
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"spanid": "7c1a9e2f4b6d8a03",
"parent_spanid": "",
"service_name": "zabbix-nginx",
"span_name": "POST /zabbix.php",
"duration": "1104826531",
"status_code": "Unset"
},
{
"spanid": "3f8b2c6d1e9a7054",
"parent_spanid": "7c1a9e2f4b6d8a03",
"service_name": "zabbix-frontend",
"span_name": "POST /zabbix.php",
"duration": "1098230418",
"status_code": "Unset"
},
{
"spanid": "b3390ad41931ed08",
"parent_spanid": "3f8b2c6d1e9a7054",
"service_name": "zabbix-frontend",
"span_name": "mysqli::real_connect",
"duration": "36671360",
"status_code": "Ok"
},
{
"spanid": "e41f7a2c9d5b3086",
"parent_spanid": "3f8b2c6d1e9a7054",
"service_name": "zabbix-frontend",
"span_name": "mysqli_query",
"duration": "19704118",
"status_code": "Ok"
}
],
"id": 1
}
См. также
Источник
CApmSpan::get() в файле ui/include/classes/api/services/CApmSpan.php.