diff --git a/proto/api_v2/query.proto b/proto/api_v2/query.proto index 7aef8ff..3b047f6 100644 --- a/proto/api_v2/query.proto +++ b/proto/api_v2/query.proto @@ -50,6 +50,10 @@ message GetTraceRequest { (gogoproto.stdtime) = true, (gogoproto.nullable) = false ]; + // Optional. If set to true, the response will not include any + // enrichments to the trace, such as clock skew adjustment. + // Instead, the trace will be returned exactly as stored. + bool raw_traces = 4; } message SpansResponseChunk { @@ -112,6 +116,10 @@ message TraceQueryParameters { (gogoproto.nullable) = false ]; int32 search_depth = 8; + // Optional. If set to true, the response will not include any + // enrichments to the trace, such as clock skew adjustment. + // Instead, the trace will be returned exactly as stored. + bool raw_traces = 9; } message FindTracesRequest { diff --git a/proto/api_v3/query_service.proto b/proto/api_v3/query_service.proto index d4b1bb8..517ac2e 100644 --- a/proto/api_v3/query_service.proto +++ b/proto/api_v3/query_service.proto @@ -33,6 +33,11 @@ message GetTraceRequest { // Optional. The end time to search trace ID. google.protobuf.Timestamp end_time = 3; + + // Optional. If set to true, the response will not include any + // enrichments to the trace, such as clock skew adjustment. + // Instead, the trace will be returned exactly as stored. + bool raw_traces = 4; } // Query parameters to find traces. Except for num_traces, all fields should be treated @@ -72,6 +77,11 @@ message TraceQueryParameters { // but not all implementations support such accuracy and for those // the larger depth value simply means more traces returned. int32 search_depth = 8; + + // Optional. If set to true, the response will not include any + // enrichments to the trace, such as clock skew adjustment. + // Instead, the trace will be returned exactly as stored. + bool raw_traces = 9; } // Request object to search traces. diff --git a/swagger/api_v3/query_service.swagger.json b/swagger/api_v3/query_service.swagger.json index b7829cd..4d400d8 100644 --- a/swagger/api_v3/query_service.swagger.json +++ b/swagger/api_v3/query_service.swagger.json @@ -132,6 +132,13 @@ "required": false, "type": "integer", "format": "int32" + }, + { + "name": "query.raw_traces", + "description": "Optional. If set to true, the response will not include any\nenrichments to the trace, such as clock skew adjustment.\nInstead, the trace will be returned exactly as stored.", + "in": "query", + "required": false, + "type": "boolean" } ], "tags": [ @@ -183,6 +190,13 @@ "required": false, "type": "string", "format": "date-time" + }, + { + "name": "raw_traces", + "description": "Optional. If set to true, the response will not include any\nenrichments to the trace, such as clock skew adjustment.\nInstead, the trace will be returned exactly as stored.", + "in": "query", + "required": false, + "type": "boolean" } ], "tags": [ @@ -354,6 +368,10 @@ "type": "integer", "format": "int32", "description": "Maximum depth of search. Depending on the backend storage\nimplementtaion this could be like a regular LIMIT clause in SQL,\nbut not all implementations support such accuracy and for those\nthe larger depth value simply means more traces returned." + }, + "raw_traces": { + "type": "boolean", + "description": "Optional. If set to true, the response will not include any\nenrichments to the trace, such as clock skew adjustment.\nInstead, the trace will be returned exactly as stored." } }, "description": "Query parameters to find traces. Except for num_traces, all fields should be treated\nas forming a conjunction, e.g., \"service_name='X' AND operation_name='Y' AND ...\".\nAll fields are matched against individual spans, not at the trace level.\nThe returned results contain traces where at least one span matches the conditions.\nWhen num_traces results in fewer traces returned, there is no required ordering.\n\nNote: num_traces should restrict the number of traces returned, but not all backends\ninterpret it this way. For instance, in Cassandra this limits the number of _spans_\nthat match the conditions, and the resulting number of traces can be less.\n\nNote: some storage implementations do not guarantee the correct implementation of all parameters."