You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2023/03/13 02:35:10 UTC

[skywalking-query-protocol] branch master updated: Support cross-thread trace profiling (#111)

This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git


The following commit(s) were added to refs/heads/master by this push:
     new a530c33  Support cross-thread trace profiling (#111)
a530c33 is described below

commit a530c33fac3f5890b5ba99f1f782e0eb32b646cd
Author: mrproliu <74...@qq.com>
AuthorDate: Mon Mar 13 10:35:05 2023 +0800

    Support cross-thread trace profiling (#111)
---
 profile.graphqls | 27 ++++++++++++++++++++++-----
 1 file changed, 22 insertions(+), 5 deletions(-)

diff --git a/profile.graphqls b/profile.graphqls
index 0744d27..4848177 100644
--- a/profile.graphqls
+++ b/profile.graphqls
@@ -116,6 +116,8 @@ type ProfileAnalyzation {
 type ProfiledSpan {
     spanId: Int!
     parentSpanId: Int!
+    segmentId: ID!
+    refs: [Ref!]!
     serviceCode: String!
     serviceInstanceName: ID!
     startTime: Long!
@@ -131,6 +133,8 @@ type ProfiledSpan {
     layer: String
     tags: [KeyValue!]!
     logs: [LogEntity!]!
+    # Status represents profiling data that covers the duration of the span.
+    profiled: Boolean!
 }
 
 type ProfiledSegment {
@@ -142,6 +146,21 @@ input ProfileAnalyzeTimeRange {
     end: Long!
 }
 
+type ProfiledTraceSegments {
+    traceId: String!
+    instanceId: ID!
+    instanceName: String!
+    endpointNames: [String!]!
+    duration: Int!
+    start: String!
+    spans: [ProfiledSpan!]!
+}
+
+input SegmentProfileAnalyzeQuery {
+    segmentId: String!
+    timeRange: ProfileAnalyzeTimeRange!
+}
+
 extend type Mutation {
     # crate new profile task
     createProfileTask(creationRequest: ProfileTaskCreationRequest): ProfileTaskCreationResult!
@@ -153,9 +172,7 @@ extend type Query {
     # query all task logs
     getProfileTaskLogs(taskID: String): [ProfileTaskLog!]!
     # query all task profiled segment list
-    getProfileTaskSegmentList(taskID: String): [BasicTrace!]!
-    # query profiled segment
-    getProfiledSegment(segmentId: String): ProfiledSegment
-    # analyze profiled segment, start and end time use timestamp(millisecond)
-    getProfileAnalyze(segmentId: String!, timeRanges: [ProfileAnalyzeTimeRange!]!): ProfileAnalyzation!
+    getProfileTaskSegments(taskID: ID!): [ProfiledTraceSegments!]!
+    # analyze multiple profiled segments, start and end time use timestamp(millisecond)
+    getSegmentsProfileAnalyze(queries: [SegmentProfileAnalyzeQuery!]!): ProfileAnalyzation!
 }