我正在尝试通过 gRPC 将 OpenCensus 跨度发送到使用 python 的 OpenCensus 收集器,如下所示:
from opencensus.proto.agent.trace.v1.trace_service_pb2 import ExportTraceServiceRequest
from opencensus.proto.agent.trace.v1.trace_service_pb2_grpc import TraceServiceStub
import grpc
def export(spans, endpoint):
channel = grpc.insecure_channel(endpoint)
client = TraceServiceStub(channel=channel)
rq = ExportTraceServiceRequest(spans = spans)
responses = client.Export(rq)
print(list(responses))
该spans参数包含一个类型列表opencensus.proto.trace.v1.trace_pb2.Span。我希望这会将列表中的所有跨度导出到正在监听的 opencensus 收集器endpoint。但是,我没有看到任何数据到达并且响应对象包含
<_MultiThreadedRendezvous of RPC that terminated with:
status = StatusCode.UNKNOWN
details = "Exception iterating requests!"
debug_error_string = "None"
>