SW应用中对Trace的跟踪一直占有重要的地位,即可以用户指定的tag值,可以筛选出感兴趣的trace(跟踪链),用户可以通过跟踪链追踪各个Span的详细情况。 但是在使用SW OAP原生页面中会存在两个问题:
1) Trace数量太多了,需要反复搜索才能找到
2) 找到的Trace,往往代表一类业务,但原生的OAP无法提供Trace聚合图表,比如此类业务耗时的平均延时图
我们尝试用grafana+Graphql+SW解决,前文可参考 grafana结合Skywalking生成组合图表
首先我们用SW OAL提供的queryBasicTraces查询trace列表
query {totaltraces:
queryBasicTraces(
condition: {
serviceId: "$serviceId"
serviceInstanceId: ""
endpointId: "$endpointId"
traceState: ALL
traceId: ""
queryDuration: {start: "${__from:date:YYYY-MM-DD HHmm}",end: "${__to:date:YYYY-MM-DD HHmm}", step: MINUTE}
tags: $tags
queryOrder: BY_START_TIME
paging: {
needTotal: false
pageNum:1
pageSize: 100
}
}
){
traces{
traceIds
duration
endpointNames
start
}
}
}
serviceI

本文讨论了在SW应用中Trace跟踪的问题,如过多的Trace和缺乏聚合图表。作者通过Grafana和GraphQL解决这些问题,包括使用queryBasicTraces查询、tags筛选和时间序列转换。
最低0.47元/天 解锁文章
1587

被折叠的 条评论
为什么被折叠?



