mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-08-27 14:11:04 +02:00
multi: remove PrefixLog
And instead use the new btclog Logger `WithPrefix` method.
This commit is contained in:
@@ -1,180 +0,0 @@
|
||||
package build
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
btclogv1 "github.com/btcsuite/btclog"
|
||||
"github.com/btcsuite/btclog/v2"
|
||||
)
|
||||
|
||||
// PrefixLog is a pass-through logger that adds a prefix to every logged line.
|
||||
type PrefixLog struct {
|
||||
log btclog.Logger
|
||||
prefix string
|
||||
attr []any
|
||||
}
|
||||
|
||||
// NewPrefixLog instantiates a new prefixed logger.
|
||||
func NewPrefixLog(prefix string, log btclog.Logger, attrs ...any) *PrefixLog {
|
||||
return &PrefixLog{
|
||||
log: log,
|
||||
prefix: prefix,
|
||||
attr: attrs,
|
||||
}
|
||||
}
|
||||
|
||||
// addFormatPrefix prepends the prefix to a format string.
|
||||
func (p *PrefixLog) addFormatPrefix(s string) string {
|
||||
return p.prefix + " " + s
|
||||
}
|
||||
|
||||
// addArgsPrefix prepends the prefix to a list of arguments.
|
||||
func (p *PrefixLog) addArgsPrefix(args []any) []any {
|
||||
return append([]interface{}{p.prefix}, args...)
|
||||
}
|
||||
|
||||
// mergeAttr merges the given set of attributes with any attributes that the
|
||||
// logger was initialised with.
|
||||
func (p *PrefixLog) mergeAttr(attrs []any) []any {
|
||||
return append(append([]any{}, attrs...), p.attr...)
|
||||
}
|
||||
|
||||
// Tracef formats message according to format specifier and writes to to log
|
||||
// with LevelTrace.
|
||||
func (p *PrefixLog) Tracef(format string, params ...interface{}) {
|
||||
p.log.Tracef(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Debugf formats message according to format specifier and writes to log with
|
||||
// LevelDebug.
|
||||
func (p *PrefixLog) Debugf(format string, params ...interface{}) {
|
||||
p.log.Debugf(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Infof formats message according to format specifier and writes to log with
|
||||
// LevelInfo.
|
||||
func (p *PrefixLog) Infof(format string, params ...interface{}) {
|
||||
p.log.Infof(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Warnf formats message according to format specifier and writes to to log with
|
||||
// LevelWarn.
|
||||
func (p *PrefixLog) Warnf(format string, params ...interface{}) {
|
||||
p.log.Warnf(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Errorf formats message according to format specifier and writes to to log
|
||||
// with LevelError.
|
||||
func (p *PrefixLog) Errorf(format string, params ...interface{}) {
|
||||
p.log.Errorf(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Criticalf formats message according to format specifier and writes to log
|
||||
// with LevelCritical.
|
||||
func (p *PrefixLog) Criticalf(format string, params ...interface{}) {
|
||||
p.log.Criticalf(p.addFormatPrefix(format), params...)
|
||||
}
|
||||
|
||||
// Trace formats message using the default formats for its operands and writes
|
||||
// to log with LevelTrace.
|
||||
func (p *PrefixLog) Trace(v ...interface{}) {
|
||||
p.log.Trace(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// Debug formats message using the default formats for its operands and writes
|
||||
// to log with LevelDebug.
|
||||
func (p *PrefixLog) Debug(v ...interface{}) {
|
||||
p.log.Debug(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// Info formats message using the default formats for its operands and writes to
|
||||
// log with LevelInfo.
|
||||
func (p *PrefixLog) Info(v ...interface{}) {
|
||||
p.log.Info(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// Warn formats message using the default formats for its operands and writes to
|
||||
// log with LevelWarn.
|
||||
func (p *PrefixLog) Warn(v ...interface{}) {
|
||||
p.log.Warn(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// Error formats message using the default formats for its operands and writes
|
||||
// to log with LevelError.
|
||||
func (p *PrefixLog) Error(v ...interface{}) {
|
||||
p.log.Error(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// Critical formats message using the default formats for its operands and
|
||||
// writes to log with LevelCritical.
|
||||
func (p *PrefixLog) Critical(v ...interface{}) {
|
||||
p.log.Critical(p.addArgsPrefix(v)...)
|
||||
}
|
||||
|
||||
// TraceS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelTrace to the log.
|
||||
func (p *PrefixLog) TraceS(ctx context.Context, msg string, attrs ...any) {
|
||||
p.log.TraceS(ctx, p.addFormatPrefix(msg), p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// DebugS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelDebug to the log.
|
||||
func (p *PrefixLog) DebugS(ctx context.Context, msg string, attrs ...any) {
|
||||
p.log.DebugS(ctx, p.addFormatPrefix(msg), p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// InfoS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelInfo to the log.
|
||||
func (p *PrefixLog) InfoS(ctx context.Context, msg string, attrs ...any) {
|
||||
p.log.InfoS(ctx, p.addFormatPrefix(msg), p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// WarnS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelWarn to the log.
|
||||
func (p *PrefixLog) WarnS(ctx context.Context, msg string, err error,
|
||||
attrs ...any) {
|
||||
|
||||
p.log.WarnS(ctx, p.addFormatPrefix(msg), err, p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// ErrorS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelError to the log.
|
||||
func (p *PrefixLog) ErrorS(ctx context.Context, msg string, err error,
|
||||
attrs ...any) {
|
||||
|
||||
p.log.ErrorS(ctx, p.addFormatPrefix(msg), err, p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// CriticalS writes a structured log with the given message and key-value pair
|
||||
// attributes with LevelCritical to the log.
|
||||
func (p *PrefixLog) CriticalS(ctx context.Context, msg string, err error,
|
||||
attrs ...any) {
|
||||
|
||||
p.log.CriticalS(ctx, p.addFormatPrefix(msg), err, p.mergeAttr(attrs)...)
|
||||
}
|
||||
|
||||
// Level returns the current logging level.
|
||||
func (p *PrefixLog) Level() btclogv1.Level {
|
||||
return p.log.Level()
|
||||
}
|
||||
|
||||
// SetLevel changes the logging level to the passed level.
|
||||
func (p *PrefixLog) SetLevel(level btclogv1.Level) {
|
||||
p.log.SetLevel(level)
|
||||
}
|
||||
|
||||
// SubSystem returns a copy of the logger but with the new subsystem tag. Any
|
||||
// previously set prefix will be overridden with an empty string.
|
||||
func (p *PrefixLog) SubSystem(tag string) btclog.Logger {
|
||||
return p.log.SubSystem(tag)
|
||||
}
|
||||
|
||||
// WithPrefix returns a copy of the logger but with the given string prefixed to
|
||||
// each log message. Note that the subsystem of the original logger is kept but
|
||||
// any existing prefix is overridden.
|
||||
func (p *PrefixLog) WithPrefix(prefix string) btclog.Logger {
|
||||
return p.log.WithPrefix(prefix)
|
||||
}
|
||||
|
||||
// Assert that PrefixLog fulfills the btclog.Logger interface.
|
||||
var _ btclog.Logger = &PrefixLog{}
|
Reference in New Issue
Block a user