Package io.opentelemetry.sdk.logs
Class SdkLoggerProvider
- java.lang.Object
-
- io.opentelemetry.sdk.logs.SdkLoggerProvider
-
- All Implemented Interfaces:
LoggerProvider
,java.io.Closeable
,java.lang.AutoCloseable
public final class SdkLoggerProvider extends java.lang.Object implements LoggerProvider, java.io.Closeable
SDK implementation forLoggerProvider
.- Since:
- 1.27.0
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.String
DEFAULT_LOGGER_NAME
private boolean
isNoopLogRecordProcessor
private static java.util.logging.Logger
LOGGER
private ComponentRegistry<SdkLogger>
loggerComponentRegistry
private ScopeConfigurator<LoggerConfig>
loggerConfigurator
private LoggerSharedState
sharedState
-
Constructor Summary
Constructors Constructor Description SdkLoggerProvider(Resource resource, java.util.function.Supplier<LogLimits> logLimitsSupplier, java.util.List<LogRecordProcessor> processors, Clock clock, ScopeConfigurator<LoggerConfig> loggerConfigurator)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SdkLoggerProviderBuilder
builder()
Returns a newSdkLoggerProviderBuilder
forSdkLoggerProvider
.void
close()
CompletableResultCode
forceFlush()
Request the active log processor to process all logs that have not yet been processed.Logger
get(java.lang.String instrumentationScopeName)
Gets or creates a named Logger instance.private LoggerConfig
getLoggerConfig(InstrumentationScopeInfo instrumentationScopeInfo)
private static java.lang.String
instrumentationNameOrDefault(java.lang.String instrumentationScopeName)
LoggerBuilder
loggerBuilder(java.lang.String instrumentationScopeName)
Creates a LoggerBuilder for a named Logger instance.CompletableResultCode
shutdown()
Attempt to shut down the active log processor.java.lang.String
toString()
-
-
-
Field Detail
-
DEFAULT_LOGGER_NAME
static final java.lang.String DEFAULT_LOGGER_NAME
- See Also:
- Constant Field Values
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
sharedState
private final LoggerSharedState sharedState
-
loggerComponentRegistry
private final ComponentRegistry<SdkLogger> loggerComponentRegistry
-
loggerConfigurator
private final ScopeConfigurator<LoggerConfig> loggerConfigurator
-
isNoopLogRecordProcessor
private final boolean isNoopLogRecordProcessor
-
-
Constructor Detail
-
SdkLoggerProvider
SdkLoggerProvider(Resource resource, java.util.function.Supplier<LogLimits> logLimitsSupplier, java.util.List<LogRecordProcessor> processors, Clock clock, ScopeConfigurator<LoggerConfig> loggerConfigurator)
-
-
Method Detail
-
builder
public static SdkLoggerProviderBuilder builder()
Returns a newSdkLoggerProviderBuilder
forSdkLoggerProvider
.- Returns:
- a new builder instance
-
getLoggerConfig
private LoggerConfig getLoggerConfig(InstrumentationScopeInfo instrumentationScopeInfo)
-
get
public Logger get(java.lang.String instrumentationScopeName)
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
public LoggerBuilder loggerBuilder(java.lang.String instrumentationScopeName)
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
private static java.lang.String instrumentationNameOrDefault(@Nullable java.lang.String instrumentationScopeName)
-
forceFlush
public CompletableResultCode 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
public CompletableResultCode 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 interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-