in opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py [0:0]
def _extract_status(status: trace_api.Status) -> Optional[status_pb2.Status]:
"""Convert a OTel Status to protobuf Status."""
if status.status_code is StatusCode.UNSET:
status_proto = None
elif status.status_code is StatusCode.OK:
status_proto = status_pb2.Status(code=code_pb2.OK)
elif status.status_code is StatusCode.ERROR:
status_proto = status_pb2.Status(
code=code_pb2.UNKNOWN, message=status.description or ""
)
# future added value
else:
logger.info(
"Couldn't handle OTel status code %s, assuming error",
status.status_code,
)
status_proto = status_pb2.Status(
code=code_pb2.UNKNOWN, message=status.description or ""
)
return status_proto