Package io.opentelemetry.sdk.logs
Class SdkLoggerProviderBuilder
java.lang.Object
io.opentelemetry.sdk.logs.SdkLoggerProviderBuilder
Builder class for
SdkLoggerProvider instances.- Since:
- 1.27.0
-
Method Summary
Modifier and TypeMethodDescriptionaddLogRecordProcessor(LogRecordProcessor processor) Add a log processor.addLogRecordProcessorFirst(LogRecordProcessor processor) Add a log processor as first.addResource(io.opentelemetry.sdk.resources.Resource resource) Merge aResourcewith the current.build()Create aSdkLoggerProviderinstance.setClock(io.opentelemetry.sdk.common.Clock clock) Assign aClock.setLogLimits(Supplier<LogLimits> logLimitsSupplier) setResource(io.opentelemetry.sdk.resources.Resource resource) Assign aResourceto be attached to allLogRecordDatacreated byLoggers obtained from theSdkLoggerProvider.
-
Method Details
-
setResource
Assign aResourceto be attached to allLogRecordDatacreated byLoggers obtained from theSdkLoggerProvider.- Parameters:
resource- the resource- Returns:
- this
-
addResource
Merge aResourcewith the current.- Parameters:
resource-Resourceto merge with current.- Since:
- 1.29.0
-
setLogLimits
Assign aSupplierofLogLimits.LogLimitswill be retrieved each time aLogger.logRecordBuilder()is called.The
logLimitsSuppliermust be thread-safe and return immediately (no remote calls, as contention free as possible).- Parameters:
logLimitsSupplier- the supplier that will be used to retrieve theLogLimitsfor everyLogRecordBuilder.- Returns:
- this
-
addLogRecordProcessor
Add a log processor.LogRecordProcessor.onEmit(Context, ReadWriteLogRecord)will be called each time a log is emitted byLoggerinstances obtained from theSdkLoggerProvider.- Parameters:
processor- the log processor- Returns:
- this
-
addLogRecordProcessorFirst
Add a log processor as first.LogRecordProcessor.onEmit(Context, ReadWriteLogRecord)will be called each time a log is emitted byLoggerinstances obtained from theSdkLoggerProvider.Compared to
addLogRecordProcessor(LogRecordProcessor), this method adds the processor to the beginning of the processor pipeline. So theprocessorgiven will be executed before than the other processors already added.- Parameters:
processor- the log processor- Returns:
- this
- Since:
- 1.50.0
-
setClock
Assign aClock.- Parameters:
clock- The clock to use for all temporal needs.- Returns:
- this
-
build
Create aSdkLoggerProviderinstance.- Returns:
- an instance configured with the provided options
-