@CheckReturnValue
Package io.spine.logging.flogger
Flogger is a fluent API for writing log messages.
- See Also:
- Original Java code of Google Flogger
-
Interface Summary Interface Description FloggerApi<API extends FloggerApi<API>> The basic logging API.FloggerMetadataKey.KeyValueHandler Callback interface to handle additional contextualMetadatain log statements.FluentLogger2.Api The non-wildcard, fully specified, logging API for this logger.LazyArg<T> Functional interface for allowing lazily evaluated arguments to be supplied to Flogger.LoggingScopeProvider Provides a scope to a log statement via theLogContext.per(LoggingScopeProvider)method.LogSiteKey A tagging interface to mark implementations that are suitable for use as a key for looking up per log site persistent state. -
Class Summary Class Description AbstractLogger<API extends FloggerApi<API>> Base class for the fluent logger API.FloggerApi.NoOp<API extends FloggerApi<API>> An implementation ofFloggerApiwhich does nothing and discards all parameters.FloggerLogSite A value type which representing the location of a single log statement.FloggerLogSites Helper class to generate log sites for the current line of code.FloggerMetadataKey<T> Key for logging semi-structured metadata values.FluentLogger2 The default implementation ofAbstractLoggerwhich returns the basicFloggerApiand uses the default parser and system configured backend.LazyArgs Static utility methods for lazy argument evaluation in Flogger.LogContext<LOGGER extends AbstractLogger<API>,API extends FloggerApi<API>> The base context for a logging statement, which implements the base logging API.LogContext.Key The predefined metadata keys used by the default logging API.LoggingScope An opaque scope marker which can be attached to log sites to provide "per scope" behaviour for stateful logging operations (e.g.LogPerBucketingStrategy<T> Provides a strategy for "bucketing" a potentially unbounded set of log aggregation keys used by theLoggingApi.per(T, LogPerBucketingStrategy<T>)method.LogSiteMap<V> Provides per log site state for stateful fluent logging operations (e.g.RateLimitStatus Status for rate limiting operations, usable by rate limiters and available to subclasses ofLogContextto handle rate limiting consistently. -
Enum Summary Enum Description StackSize Enum values to be passed intoFloggerApi.withStackTrace(io.spine.logging.flogger.StackSize)to control the maximum number of stack trace elements created. -
Exception Summary Exception Description LogSiteStackTrace A synthetic exception which can be attached to log statements when additional stack trace information is required in log files or via tools such as ECatcher.