Package io.opentelemetry.sdk.logs.export
Class MultiLogRecordExporter
- java.lang.Object
-
- io.opentelemetry.sdk.logs.export.MultiLogRecordExporter
-
- All Implemented Interfaces:
LogRecordExporter
,java.io.Closeable
,java.lang.AutoCloseable
final class MultiLogRecordExporter extends java.lang.Object implements LogRecordExporter
LogRecordExporter
that forwards all received logs to a list ofLogRecordExporter
.Can be used to export to multiple backends using the same
LogRecordExporter
like aSimpleLogRecordProcessor
or aBatchLogRecordProcessor
.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.logging.Logger
logger
private LogRecordExporter[]
logRecordExporters
-
Constructor Summary
Constructors Modifier Constructor Description private
MultiLogRecordExporter(LogRecordExporter[] logRecordExporters)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static LogRecordExporter
create(java.util.List<LogRecordExporter> logRecordExporters)
Constructs and returns an instance of this class.CompletableResultCode
export(java.util.Collection<LogRecordData> logs)
Exports the collections of givenLogRecordData
.CompletableResultCode
flush()
Flushes the data of all registeredLogRecordExporter
s.CompletableResultCode
shutdown()
Shutdown the log exporter.java.lang.String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.opentelemetry.sdk.logs.export.LogRecordExporter
close
-
-
-
-
Field Detail
-
logger
private static final java.util.logging.Logger logger
-
logRecordExporters
private final LogRecordExporter[] logRecordExporters
-
-
Constructor Detail
-
MultiLogRecordExporter
private MultiLogRecordExporter(LogRecordExporter[] logRecordExporters)
-
-
Method Detail
-
create
static LogRecordExporter create(java.util.List<LogRecordExporter> logRecordExporters)
Constructs and returns an instance of this class.- Parameters:
logRecordExporters
- the exporters logs should be sent to- Returns:
- the aggregate log exporter
-
export
public CompletableResultCode export(java.util.Collection<LogRecordData> logs)
Description copied from interface:LogRecordExporter
Exports the collections of givenLogRecordData
.- Specified by:
export
in interfaceLogRecordExporter
- Parameters:
logs
- the collection ofLogRecordData
to be exported- Returns:
- the result of the export, which is often an asynchronous operation
-
flush
public CompletableResultCode flush()
Flushes the data of all registeredLogRecordExporter
s.- Specified by:
flush
in interfaceLogRecordExporter
- Returns:
- the result of the operation
-
shutdown
public CompletableResultCode shutdown()
Description copied from interface:LogRecordExporter
Shutdown the log exporter. Called whenSdkLoggerProvider.shutdown()
is called when this exporter is registered to the provider viaBatchLogRecordProcessor
orSimpleLogRecordProcessor
.- Specified by:
shutdown
in interfaceLogRecordExporter
- Returns:
- a
CompletableResultCode
which is completed when shutdown completes
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-