def export()

in opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py [0:0]


    def export(self, spans: Sequence[ReadableSpan]) -> SpanExportResult:
        """Export the spans to Cloud Trace.

        See: https://cloud.google.com/trace/docs/reference/v2/rest/v2/projects.traces/batchWrite

        Args:
            spans: Sequence of spans to export
        """
        try:
            self.client.batch_write_spans(
                request=BatchWriteSpansRequest(
                    name="projects/{}".format(self.project_id),
                    spans=self._translate_to_cloud_trace(spans),
                )
            )
        # pylint: disable=broad-except
        except Exception as ex:
            logger.error("Error while writing to Cloud Trace", exc_info=ex)
            return SpanExportResult.FAILURE

        return SpanExportResult.SUCCESS