NVIDIA DeepStream SDK API Reference

9.2 Release
sdk::trace::SpanExporter Class Referenceabstract

Detailed Description

SpanExporter defines the interface that protocol-specific span exporters must implement.

Definition at line 24 of file includes/opentelemetry/sdk/trace/exporter.h.

Public Member Functions

 SpanExporter ()
 
virtual ~SpanExporter ()
 
virtual std::unique_ptr< Recordable > MakeRecordable () noexcept=0
 Create a span recordable. More...
 
virtual sdk::common::ExportResult Export (const nostd::span< std::unique_ptr< Recordable >> &spans) noexcept=0
 Exports a batch of span recordables. More...
 
virtual bool ForceFlush (std::chrono::microseconds timeout=(std::chrono::microseconds::max)()) noexcept=0
 Export all spans that have been exported. More...
 
virtual bool Shutdown (std::chrono::microseconds timeout=(std::chrono::microseconds::max)()) noexcept=0
 Shut down the exporter. More...
 
 SpanExporter ()
 
virtual ~SpanExporter ()
 
virtual std::unique_ptr< Recordable > MakeRecordable () noexcept=0
 Create a span recordable. More...
 
virtual sdk::common::ExportResult Export (const nostd::span< std::unique_ptr< Recordable >> &spans) noexcept=0
 Exports a batch of span recordables. More...
 
virtual bool ForceFlush (std::chrono::microseconds timeout=(std::chrono::microseconds::max)()) noexcept=0
 Export all spans that have been exported. More...
 
virtual bool Shutdown (std::chrono::microseconds timeout=(std::chrono::microseconds::max)()) noexcept=0
 Shut down the exporter. More...
 

Constructor & Destructor Documentation

◆ SpanExporter() [1/2]

sdk::trace::SpanExporter::SpanExporter ( )

◆ ~SpanExporter() [1/2]

virtual sdk::trace::SpanExporter::~SpanExporter ( )
virtual

◆ SpanExporter() [2/2]

sdk::trace::SpanExporter::SpanExporter ( )

◆ ~SpanExporter() [2/2]

virtual sdk::trace::SpanExporter::~SpanExporter ( )
virtual

Member Function Documentation

◆ Export() [1/2]

virtual sdk::common::ExportResult sdk::trace::SpanExporter::Export ( const nostd::span< std::unique_ptr< Recordable >> &  spans)
pure virtualnoexcept

Exports a batch of span recordables.

This method must not be called concurrently for the same exporter instance.

Parameters
spansa span of unique pointers to span recordables

◆ Export() [2/2]

virtual sdk::common::ExportResult sdk::trace::SpanExporter::Export ( const nostd::span< std::unique_ptr< Recordable >> &  spans)
pure virtualnoexcept

Exports a batch of span recordables.

This method must not be called concurrently for the same exporter instance.

Parameters
spansa span of unique pointers to span recordables

◆ ForceFlush() [1/2]

virtual bool sdk::trace::SpanExporter::ForceFlush ( std::chrono::microseconds  timeout = (std::chrono::microseconds::max)())
pure virtualnoexcept

Export all spans that have been exported.

Parameters
timeoutan optional timeout, the default timeout means that no timeout is applied.
Returns
return true when all data are exported, and false when timeout

◆ ForceFlush() [2/2]

virtual bool sdk::trace::SpanExporter::ForceFlush ( std::chrono::microseconds  timeout = (std::chrono::microseconds::max)())
pure virtualnoexcept

Export all spans that have been exported.

Parameters
timeoutan optional timeout, the default timeout means that no timeout is applied.
Returns
return true when all data are exported, and false when timeout

◆ MakeRecordable() [1/2]

virtual std::unique_ptr<Recordable> sdk::trace::SpanExporter::MakeRecordable ( )
pure virtualnoexcept

Create a span recordable.

This object will be used to record span data and will subsequently be passed to SpanExporter::Export. Vendors can implement custom recordables or use the default SpanData recordable provided by the SDK.

Returns
a newly initialized Recordable object

Note: This method must be callable from multiple threads.

◆ MakeRecordable() [2/2]

virtual std::unique_ptr<Recordable> sdk::trace::SpanExporter::MakeRecordable ( )
pure virtualnoexcept

Create a span recordable.

This object will be used to record span data and will subsequently be passed to SpanExporter::Export. Vendors can implement custom recordables or use the default SpanData recordable provided by the SDK.

Returns
a newly initialized Recordable object

Note: This method must be callable from multiple threads.

◆ Shutdown() [1/2]

virtual bool sdk::trace::SpanExporter::Shutdown ( std::chrono::microseconds  timeout = (std::chrono::microseconds::max)())
pure virtualnoexcept

Shut down the exporter.

Parameters
timeoutan optional timeout.
Returns
return the status of the operation.

◆ Shutdown() [2/2]

virtual bool sdk::trace::SpanExporter::Shutdown ( std::chrono::microseconds  timeout = (std::chrono::microseconds::max)())
pure virtualnoexcept

Shut down the exporter.

Parameters
timeoutan optional timeout.
Returns
return the status of the operation.

The documentation for this class was generated from the following file: