Package io.opentelemetry.sdk.logs
Class SdkLoggerProvider
java.lang.Object
io.opentelemetry.sdk.logs.SdkLoggerProvider
- All Implemented Interfaces:
LoggerProvider
,Closeable
,AutoCloseable
SDK implementation for
LoggerProvider
.- Since:
- 1.27.0
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final String
private final boolean
private static final Logger
private final ComponentRegistry
<SdkLogger> private final ScopeConfigurator
<LoggerConfig> private final LoggerSharedState
-
Constructor Summary
ConstructorsConstructorDescriptionSdkLoggerProvider
(Resource resource, Supplier<LogLimits> logLimitsSupplier, List<LogRecordProcessor> processors, Clock clock, ScopeConfigurator<LoggerConfig> loggerConfigurator) -
Method Summary
Modifier and TypeMethodDescriptionstatic SdkLoggerProviderBuilder
builder()
Returns a newSdkLoggerProviderBuilder
forSdkLoggerProvider
.void
close()
Request the active log processor to process all logs that have not yet been processed.Gets or creates a named Logger instance.private LoggerConfig
getLoggerConfig
(InstrumentationScopeInfo instrumentationScopeInfo) private static String
instrumentationNameOrDefault
(String instrumentationScopeName) loggerBuilder
(String instrumentationScopeName) Creates a LoggerBuilder for a named Logger instance.shutdown()
Attempt to shut down the active log processor.toString()
-
Field Details
-
DEFAULT_LOGGER_NAME
- See Also:
-
LOGGER
-
loggerComponentRegistry
-
loggerConfigurator
-
isNoopLogRecordProcessor
private final boolean isNoopLogRecordProcessor
-
-
Constructor Details
-
SdkLoggerProvider
SdkLoggerProvider(Resource resource, Supplier<LogLimits> logLimitsSupplier, List<LogRecordProcessor> processors, Clock clock, ScopeConfigurator<LoggerConfig> loggerConfigurator)
-
-
Method Details
-
builder
Returns a newSdkLoggerProviderBuilder
forSdkLoggerProvider
.- Returns:
- a new builder instance
-
getLoggerConfig
-
get
Description copied from interface:LoggerProvider
Gets or creates a named Logger instance.- Specified by:
get
in interfaceLoggerProvider
- Parameters:
instrumentationScopeName
- A name uniquely identifying the instrumentation scope, such as the instrumentation library, package, or fully qualified class name. Must not be null.- Returns:
- a Logger instance.
-
loggerBuilder
Description copied from interface:LoggerProvider
Creates a LoggerBuilder for a named Logger instance.- Specified by:
loggerBuilder
in interfaceLoggerProvider
- Parameters:
instrumentationScopeName
- A name uniquely identifying the instrumentation scope, such as the instrumentation library, package, or fully qualified class name. Must not be null.- Returns:
- a LoggerBuilder instance.
-
instrumentationNameOrDefault
-
forceFlush
Request the active log processor to process all logs that have not yet been processed.- Returns:
- a
CompletableResultCode
which is completed when the flush is finished
-
shutdown
Attempt to shut down the active log processor.- Returns:
- a
CompletableResultCode
which is completed when the active log process has been shut down.
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
toString
-