Package io.opentelemetry.sdk.logs
Class MultiLogRecordProcessor
java.lang.Object
io.opentelemetry.sdk.logs.MultiLogRecordProcessor
- All Implemented Interfaces:
LogRecordProcessor
,Closeable
,AutoCloseable
Implementation of
LogRecordProcessor
that forwards all logs to a list of LogRecordProcessor
s.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AtomicBoolean
private final List
<LogRecordProcessor> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
MultiLogRecordProcessor
(List<LogRecordProcessor> logRecordProcessorsList) -
Method Summary
Modifier and TypeMethodDescription(package private) static LogRecordProcessor
create
(List<LogRecordProcessor> logRecordProcessorsList) Create a newMultiLogRecordProcessor
.Process all log records that have not yet been processed.void
onEmit
(Context context, ReadWriteLogRecord logRecord) Called when aLogger
LogRecordBuilder.emit()
s a log record.shutdown()
Shutdown the log processor.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.opentelemetry.sdk.logs.LogRecordProcessor
close
-
Field Details
-
logRecordProcessors
-
isShutdown
-
-
Constructor Details
-
MultiLogRecordProcessor
-
-
Method Details
-
create
Create a newMultiLogRecordProcessor
.- Parameters:
logRecordProcessorsList
- list of log processors to forward logs to- Returns:
- a multi log processor instance
-
onEmit
Description copied from interface:LogRecordProcessor
Called when aLogger
LogRecordBuilder.emit()
s a log record.- Specified by:
onEmit
in interfaceLogRecordProcessor
- Parameters:
context
- the context set viaLogRecordBuilder.setContext(Context)
, orContext.current()
if not explicitly setlogRecord
- the log record
-
shutdown
Description copied from interface:LogRecordProcessor
Shutdown the log processor.- Specified by:
shutdown
in interfaceLogRecordProcessor
- Returns:
- result
-
forceFlush
Description copied from interface:LogRecordProcessor
Process all log records that have not yet been processed.- Specified by:
forceFlush
in interfaceLogRecordProcessor
- Returns:
- result
-