Package io.opentelemetry.sdk.logs.export
Class BatchLogRecordProcessor.Worker
- java.lang.Object
-
- io.opentelemetry.sdk.logs.export.BatchLogRecordProcessor.Worker
-
- All Implemented Interfaces:
java.lang.Runnable
- Enclosing class:
- BatchLogRecordProcessor
private static final class BatchLogRecordProcessor.Worker extends java.lang.Object implements java.lang.Runnable
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList<LogRecordData>
batch
private boolean
continueWork
private Attributes
droppedAttrs
private Attributes
exportedAttrs
private long
exporterTimeoutNanos
private java.util.concurrent.atomic.AtomicReference<CompletableResultCode>
flushRequested
private static java.util.logging.Logger
logger
private LogRecordExporter
logRecordExporter
private java.util.concurrent.atomic.AtomicInteger
logsNeeded
private int
maxExportBatchSize
private long
nextExportTime
private LongCounter
processedLogsCounter
private java.util.Queue<ReadWriteLogRecord>
queue
private long
scheduleDelayNanos
private java.util.concurrent.BlockingQueue<java.lang.Boolean>
signal
-
Constructor Summary
Constructors Modifier Constructor Description private
Worker(LogRecordExporter logRecordExporter, MeterProvider meterProvider, long scheduleDelayNanos, int maxExportBatchSize, long exporterTimeoutNanos, java.util.Queue<ReadWriteLogRecord> queue)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addLog(ReadWriteLogRecord logData)
private void
exportCurrentBatch()
private void
flush()
private CompletableResultCode
forceFlush()
void
run()
private CompletableResultCode
shutdown()
private void
updateNextExportTime()
-
-
-
Field Detail
-
logger
private static final java.util.logging.Logger logger
-
processedLogsCounter
private final LongCounter processedLogsCounter
-
droppedAttrs
private final Attributes droppedAttrs
-
exportedAttrs
private final Attributes exportedAttrs
-
logRecordExporter
private final LogRecordExporter logRecordExporter
-
scheduleDelayNanos
private final long scheduleDelayNanos
-
maxExportBatchSize
private final int maxExportBatchSize
-
exporterTimeoutNanos
private final long exporterTimeoutNanos
-
nextExportTime
private long nextExportTime
-
queue
private final java.util.Queue<ReadWriteLogRecord> queue
-
logsNeeded
private final java.util.concurrent.atomic.AtomicInteger logsNeeded
-
signal
private final java.util.concurrent.BlockingQueue<java.lang.Boolean> signal
-
flushRequested
private final java.util.concurrent.atomic.AtomicReference<CompletableResultCode> flushRequested
-
continueWork
private volatile boolean continueWork
-
batch
private final java.util.ArrayList<LogRecordData> batch
-
-
Constructor Detail
-
Worker
private Worker(LogRecordExporter logRecordExporter, MeterProvider meterProvider, long scheduleDelayNanos, int maxExportBatchSize, long exporterTimeoutNanos, java.util.Queue<ReadWriteLogRecord> queue)
-
-
Method Detail
-
addLog
private void addLog(ReadWriteLogRecord logData)
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
-
flush
private void flush()
-
updateNextExportTime
private void updateNextExportTime()
-
shutdown
private CompletableResultCode shutdown()
-
forceFlush
private CompletableResultCode forceFlush()
-
exportCurrentBatch
private void exportCurrentBatch()
-
-