ORE Studio 0.0.4
Loading...
Searching...
No Matches
Public Member Functions | List of all members
log_exporter Class Referenceabstract

Interface for exporting telemetry log records. More...

#include <log_exporter.hpp>

Inheritance diagram for log_exporter:
Inheritance graph
Collaboration diagram for log_exporter:
Collaboration graph

Public Member Functions

virtual void export_record (domain::log_record record)=0
 Exports a single log record.
 
virtual void flush ()=0
 Flushes any buffered records.
 
virtual void shutdown ()=0
 Shuts down the exporter.
 

Detailed Description

Interface for exporting telemetry log records.

Implementations of this interface handle the actual export of log records to various backends (files, OpenTelemetry collectors, etc.).

The interface is designed to be simple and allow for different export strategies: synchronous, batched, or streaming.

Member Function Documentation

◆ export_record()

virtual void export_record ( domain::log_record  record)
pure virtual

Exports a single log record.

Implementations may buffer records for batch export or write immediately.

Parameters
recordThe log record to export.

Implemented in file_log_exporter, and hybrid_log_exporter.

◆ flush()

virtual void flush ( )
pure virtual

Flushes any buffered records.

Called to ensure all pending records are exported. Implementations that don't buffer may implement this as a no-op.

Implemented in file_log_exporter, and hybrid_log_exporter.

◆ shutdown()

virtual void shutdown ( )
pure virtual

Shuts down the exporter.

Called during application shutdown. Implementations should flush any pending records and release resources.

Implemented in file_log_exporter, and hybrid_log_exporter.