Documentation ¶
Index ¶
- Constants
- func Crit(msg string, ctx ...interface{})
- func Debug(msg string, ctx ...interface{})
- func DiscardHandler() slog.Handler
- func Error(msg string, ctx ...interface{})
- func FormatLogfmtUint64(n uint64) string
- func FormatSlogValue(v slog.Value, tmp []byte) (result []byte)
- func FromLegacyLevel(lvl int) slog.Level
- func Info(msg string, ctx ...interface{})
- func JSONHandler(wr io.Writer) slog.Handler
- func JSONHandlerWithLevel(wr io.Writer, level *slog.LevelVar) slog.Handler
- func LevelAlignedString(l slog.Level) string
- func LevelString(l slog.Level) string
- func LogfmtHandler(wr io.Writer) slog.Handler
- func LogfmtHandlerWithLevel(wr io.Writer, level *slog.LevelVar) slog.Handler
- func SetDefault(l Logger)
- func Trace(msg string, ctx ...interface{})
- func Warn(msg string, ctx ...interface{})
- type Logger
- type RootWithContext
- func (r *RootWithContext) Crit(msg string, ctx ...interface{})
- func (r *RootWithContext) Debug(msg string, ctx ...interface{})
- func (r *RootWithContext) Enabled(ctx context.Context, level slog.Level) bool
- func (r *RootWithContext) Error(msg string, ctx ...interface{})
- func (r *RootWithContext) Handler() slog.Handler
- func (r *RootWithContext) Info(msg string, ctx ...interface{})
- func (r *RootWithContext) Log(level slog.Level, msg string, ctx ...interface{})
- func (r *RootWithContext) New(ctx ...interface{}) Logger
- func (r *RootWithContext) Trace(msg string, ctx ...interface{})
- func (r *RootWithContext) Warn(msg string, ctx ...interface{})
- func (r *RootWithContext) With(ctx ...interface{}) Logger
- func (r *RootWithContext) Write(level slog.Level, msg string, ctx ...interface{})
- type TerminalHandler
- func (h *TerminalHandler) Enabled(_ context.Context, level slog.Level) bool
- func (h *TerminalHandler) Handle(_ context.Context, r slog.Record) error
- func (h *TerminalHandler) ResetFieldPadding()
- func (h *TerminalHandler) WithAttrs(attrs []slog.Attr) slog.Handler
- func (h *TerminalHandler) WithGroup(_ string) slog.Handler
- type TerminalStringer
Constants ¶
const ( LegacyLevelCrit = iota LegacyLevelError LegacyLevelWarn LegacyLevelInfo LegacyLevelDebug LegacyLevelTrace )
const ( LevelTrace slog.Level = -8 LevelDebug = slog.LevelDebug LevelInfo = slog.LevelInfo LevelWarn = slog.LevelWarn LevelError = slog.LevelError LevelCrit slog.Level = 12 // for backward-compatibility LvlTrace = LevelTrace LvlInfo = LevelInfo LvlDebug = LevelDebug )
Variables ¶
This section is empty.
Functions ¶
func Crit ¶
func Crit(msg string, ctx ...interface{})
Crit is a convenient alias for Root().Crit
Log a message at the crit level with context key/value pairs, and then exit.
Usage Examples ¶
log.Crit("msg") log.Crit("msg", "key1", val1) log.Crit("msg", "key1", val1, "key2", val2)
func Debug ¶
func Debug(msg string, ctx ...interface{})
Debug is a convenient alias for Root().Debug
Log a message at the debug level with context key/value pairs
Usage Examples ¶
log.Debug("msg") log.Debug("msg", "key1", val1) log.Debug("msg", "key1", val1, "key2", val2)
func Error ¶
func Error(msg string, ctx ...interface{})
Error is a convenient alias for Root().Error
Log a message at the error level with context key/value pairs
Usage Examples ¶
log.Error("msg") log.Error("msg", "key1", val1) log.Error("msg", "key1", val1, "key2", val2)
func FormatLogfmtUint64 ¶
FormatLogfmtUint64 formats n with thousand separators.
func FormatSlogValue ¶
FormatSlogValue formats a slog.Value for serialization to terminal.
func FromLegacyLevel ¶
convert from old Geth verbosity level constants to levels defined by slog
func Info ¶
func Info(msg string, ctx ...interface{})
Info is a convenient alias for Root().Info
Log a message at the info level with context key/value pairs
Usage Examples ¶
log.Info("msg") log.Info("msg", "key1", val1) log.Info("msg", "key1", val1, "key2", val2)
func JSONHandler ¶
JSONHandler returns a handler which prints records in JSON format.
func JSONHandlerWithLevel ¶
JSONHandlerWithLevel returns a handler which prints records in JSON format that are less than or equal to the specified verbosity level.
func LevelAlignedString ¶
LevelAlignedString returns a 5-character string containing the name of a Lvl.
func LevelString ¶
LevelString returns a string containing the name of a Lvl.
func LogfmtHandler ¶
LogfmtHandler returns a handler which prints records in logfmt format, an easy machine-parseable but human-readable format for key/value pairs.
For more details see: http://godoc.org/github.com/kr/logfmt
func LogfmtHandlerWithLevel ¶
LogfmtHandlerWithLevel returns the same handler as LogfmtHandler but it only outputs records which are less than or equal to the specified verbosity level.
Types ¶
type Logger ¶
type Logger interface { // With returns a new Logger that has this logger's attributes plus the given attributes With(ctx ...interface{}) Logger // With returns a new Logger that has this logger's attributes plus the given attributes. Identical to 'With'. New(ctx ...interface{}) Logger // Log logs a message at the specified level with context key/value pairs Log(level slog.Level, msg string, ctx ...interface{}) // Trace log a message at the trace level with context key/value pairs Trace(msg string, ctx ...interface{}) // Debug logs a message at the debug level with context key/value pairs Debug(msg string, ctx ...interface{}) // Info logs a message at the info level with context key/value pairs Info(msg string, ctx ...interface{}) // Warn logs a message at the warn level with context key/value pairs Warn(msg string, ctx ...interface{}) // Error logs a message at the error level with context key/value pairs Error(msg string, ctx ...interface{}) // Crit logs a message at the crit level with context key/value pairs, and exits Crit(msg string, ctx ...interface{}) // Write logs a message at the specified level Write(level slog.Level, msg string, attrs ...any) // Enabled reports whether l emits log records at the given context and level. Enabled(ctx context.Context, level slog.Level) bool // Handler returns the underlying handler of the inner logger. Handler() slog.Handler }
A Logger writes key/value pairs to a Handler
func WithContext ¶
func WithContext(ctx ...interface{}) Logger
WithContext returns a logger that uses Root with the provided context
type RootWithContext ¶
type RootWithContext struct {
// contains filtered or unexported fields
}
RootWithContext is a logger than can be initialized at a global scope
func (*RootWithContext) Crit ¶
func (r *RootWithContext) Crit(msg string, ctx ...interface{})
func (*RootWithContext) Debug ¶
func (r *RootWithContext) Debug(msg string, ctx ...interface{})
func (*RootWithContext) Error ¶
func (r *RootWithContext) Error(msg string, ctx ...interface{})
func (*RootWithContext) Handler ¶
func (r *RootWithContext) Handler() slog.Handler
func (*RootWithContext) Info ¶
func (r *RootWithContext) Info(msg string, ctx ...interface{})
func (*RootWithContext) Log ¶
func (r *RootWithContext) Log(level slog.Level, msg string, ctx ...interface{})
func (*RootWithContext) New ¶
func (r *RootWithContext) New(ctx ...interface{}) Logger
func (*RootWithContext) Trace ¶
func (r *RootWithContext) Trace(msg string, ctx ...interface{})
func (*RootWithContext) Warn ¶
func (r *RootWithContext) Warn(msg string, ctx ...interface{})
func (*RootWithContext) With ¶
func (r *RootWithContext) With(ctx ...interface{}) Logger
type TerminalHandler ¶
type TerminalHandler struct {
// contains filtered or unexported fields
}
func NewTerminalHandler ¶
func NewTerminalHandler(wr io.Writer, useColor bool) *TerminalHandler
NewTerminalHandler returns a handler which formats log records at all levels optimized for human readability on a terminal with color-coded level output and terser human friendly timestamp. This format should only be used for interactive programs or while developing.
[LEVEL] [TIME] MESSAGE key=value key=value ...
Example:
[DBUG] [May 16 20:58:45] remove route ns=haproxy addr=127.0.0.1:50002
func NewTerminalHandlerWithLevel ¶
NewTerminalHandlerWithLevel returns the same handler as NewTerminalHandler but only outputs records which are less than or equal to the specified verbosity level.
func (*TerminalHandler) ResetFieldPadding ¶
func (h *TerminalHandler) ResetFieldPadding()
ResetFieldPadding zeroes the field-padding for all attribute pairs.
type TerminalStringer ¶
type TerminalStringer interface {
TerminalString() string
}
TerminalStringer is an analogous interface to the stdlib stringer, allowing own types to have custom shortened serialization formats when printed to the screen.