Skip to content

IFullLogger interface

Defined in

Namespace: Splat Assembly: Splat.Logging.dll Full name: Splat.IFullLogger Modifiers: public abstract

Summary

The typed-argument overloads, kept apart from the rest of the type because the set is dictated by the logging contract: one overload per argument count, each forwarding the arguments on without boxing them.

Applies to

net10.0, net9.0, net8.0, net462, net481

Class hierarchy
classDiagram
class IFullLogger
class IAllocationFreeLogger {
    <>
}
IAllocationFreeLogger <|.. IFullLogger
class IAllocationFreeErrorLogger {
    <>
}
IAllocationFreeErrorLogger <|.. IFullLogger
class ILogger {
    <>
}
ILogger <|.. IFullLogger

Implements: IAllocationFreeLogger, IAllocationFreeErrorLogger, ILogger

Remarks

The IFullLogger interface extends IAllocationFreeLogger and is designed to support a wide range of logging scenarios, including structured logging, localization control, and efficient message generation. It provides overloads for logging messages with or without exceptions, with formatting arguments, and with deferred execution via delegates. Implementations should ensure that deferred message delegates are only evaluated if the corresponding log level is enabled, to avoid unnecessary computation. This interface is suitable for applications that require detailed and flexible logging capabilities across different log levels.

Methods

NameSummary
DebugEmits a debug log message. This will emit the public contents of the object provided to the log.
DebugExceptionEmits a debug log message. This will emit details about a exception. This type of logging is not able to be localized.
InfoEmits a info log message. This will emit the public contents of the object provided to the log.
InfoExceptionEmits a info log message. This will emit details about a exception. This type of logging is not able to be localized.
WarnEmits a warning log message. This will emit the public contents of the object provided to the log.
WarnExceptionEmits a warning log message. This will emit details about a exception. This type of logging is not able to be localized.
ErrorEmits a error log message. This will emit the public contents of the object provided to the log.
ErrorExceptionEmits a error log message. This will emit details about a exception. This type of logging is not able to be localized.
FatalEmits a fatal log message. This will emit the public contents of the object provided to the log.
FatalExceptionEmits a fatal log message. This will emit details about a exception. This type of logging is not able to be localized.