本页内容
apmspan.get
描述
integer/array apmspan.get(object parameters)
此方法允许根据给定的参数检索 span。
任何类型的用户都可以使用此方法。 可以在用户角色设置中撤销调用此方法的权限。 有关更多信息,请参阅用户角色。
参数
(object) 定义所需输出的参数。
该方法支持以下参数。
| 参数 | 类型 | 描述 |
|---|---|---|
| time_from | timestamp | 仅返回在给定时间或之后开始的跨度。 参数行为: - 必需 |
| time_till | timestamp | 仅返回在给定时间之前开始的跨度。 参数行为: - 必需 |
| traceids | string/array | 仅返回属于给定跟踪的跨度。 |
| spanids | string/array | 仅返回具有给定 ID 的跨度。 |
| parent_spanids | string/array | 仅返回具有给定父跨度的跨度。 |
| resource_attributes | object/array | 仅返回具有给定资源属性的跨度。 格式: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...]。空数组将返回所有跨度。 可能的 operator 值: 0 - (默认) 包含; 1 - 等于; 2 - 不包含; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
| resource_attributes_evaltype | integer | resource_attributes 中条件的评估方法。可能的值: 0 - (默认) And/Or; 2 - Or。 |
| span_attributes | object/array | 仅返回具有给定跨度属性的跨度。 格式: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...]。空数组将返回所有跨度。 可能的 operator 值: 0 - (默认) 包含; 1 - 等于; 2 - 不包含; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
| span_attributes_evaltype | integer | span_attributes 中条件的评估方法。可能的值: 0 - (默认) And/Or; 2 - Or。 |
| 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参数,则返回检索到的对象数量。
示例
获取跟踪的 span 层次结构
获取跟踪 "dee625f33cb0994e86c5cd4640e3b09c" 的前四个 span,并按开始时间排序。
parent_spanid 属性显示了各个 span 之间的关系:根 span 没有父级,而其他每个 span 都引用启动它的 span。
请求:
{
"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
}
另请参阅
源代码
ui/include/classes/api/services/CApmSpan.php 中的 CApmSpan::get()。