Package io.opentelemetry.sdk.logs
Class SdkLogEmitterProviderBuilder
java.lang.Object
io.opentelemetry.sdk.logs.SdkLogEmitterProviderBuilder
Builder class for
SdkLogEmitterProvider instances.-
Method Summary
Modifier and TypeMethodDescriptionaddLogProcessor(LogProcessor processor) Add a log processor.build()Create aSdkLogEmitterProviderinstance.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 allLogDatacreated byLogEmitters obtained from theSdkLogEmitterProvider.
-
Method Details
-
setResource
Assign aResourceto be attached to allLogDatacreated byLogEmitters obtained from theSdkLogEmitterProvider.- Parameters:
resource- the resource- Returns:
- this
-
setLogLimits
Assign aSupplierofLogLimits.LogLimitswill be retrieved each time aLogEmitter.logBuilder()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 everyLogBuilder.- Returns:
- this
-
addLogProcessor
Add a log processor.LogProcessor.emit(LogData)will be called each time a log is emitted byLogEmitterinstances obtained from theSdkLogEmitterProvider.- Parameters:
processor- the log processor- Returns:
- this
-
setClock
Assign aClock. TheClockmay be used to determine "now" in the event that the epoch millis are not set directly.The
clockmust be thread-safe and return immediately (no remote calls, as contention free as possible).- Parameters:
clock- The clock to use for all temporal needs.- Returns:
- this
-
build
Create aSdkLogEmitterProviderinstance.- Returns:
- an instance configured with the provided options
-