WIP
This commit is contained in:
parent
78704bee78
commit
2cefb9db98
19 changed files with 691 additions and 627 deletions
src/log
173
src/log/nfs.go
Normal file
173
src/log/nfs.go
Normal file
|
@ -0,0 +1,173 @@
|
|||
package log
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/rs/zerolog"
|
||||
nfs "github.com/willscott/go-nfs"
|
||||
)
|
||||
|
||||
var _ nfs.Logger = (*NFSLog)(nil)
|
||||
|
||||
type NFSLog struct {
|
||||
r zerolog.Logger
|
||||
l zerolog.Logger
|
||||
}
|
||||
|
||||
func NewNFSLog(r zerolog.Logger) nfs.Logger {
|
||||
return &NFSLog{
|
||||
r: r,
|
||||
l: r.Level(zerolog.DebugLevel),
|
||||
}
|
||||
}
|
||||
|
||||
// Debug implements nfs.Logger.
|
||||
func (l *NFSLog) Debug(args ...interface{}) {
|
||||
l.l.Debug().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Debugf implements nfs.Logger.
|
||||
func (l *NFSLog) Debugf(format string, args ...interface{}) {
|
||||
l.l.Debug().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Error implements nfs.Logger.
|
||||
func (l *NFSLog) Error(args ...interface{}) {
|
||||
l.l.Error().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Errorf implements nfs.Logger.
|
||||
func (l *NFSLog) Errorf(format string, args ...interface{}) {
|
||||
l.l.Error().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Fatal implements nfs.Logger.
|
||||
func (l *NFSLog) Fatal(args ...interface{}) {
|
||||
l.l.Fatal().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Fatalf implements nfs.Logger.
|
||||
func (l *NFSLog) Fatalf(format string, args ...interface{}) {
|
||||
l.l.Fatal().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Info implements nfs.Logger.
|
||||
func (l *NFSLog) Info(args ...interface{}) {
|
||||
l.l.Info().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Infof implements nfs.Logger.
|
||||
func (l *NFSLog) Infof(format string, args ...interface{}) {
|
||||
l.l.Info().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Panic implements nfs.Logger.
|
||||
func (l *NFSLog) Panic(args ...interface{}) {
|
||||
l.l.Panic().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Panicf implements nfs.Logger.
|
||||
func (l *NFSLog) Panicf(format string, args ...interface{}) {
|
||||
l.l.Panic().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Print implements nfs.Logger.
|
||||
func (l *NFSLog) Print(args ...interface{}) {
|
||||
l.l.Print(args...)
|
||||
}
|
||||
|
||||
// Printf implements nfs.Logger.
|
||||
func (l *NFSLog) Printf(format string, args ...interface{}) {
|
||||
l.l.Printf(format, args...)
|
||||
}
|
||||
|
||||
// Trace implements nfs.Logger.
|
||||
func (l *NFSLog) Trace(args ...interface{}) {
|
||||
l.l.Trace().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Tracef implements nfs.Logger.
|
||||
func (l *NFSLog) Tracef(format string, args ...interface{}) {
|
||||
l.l.Trace().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// Warn implements nfs.Logger.
|
||||
func (l *NFSLog) Warn(args ...interface{}) {
|
||||
l.l.Warn().Msg(fmt.Sprint(args...))
|
||||
}
|
||||
|
||||
// Warnf implements nfs.Logger.
|
||||
func (l *NFSLog) Warnf(format string, args ...interface{}) {
|
||||
l.l.Warn().Msgf(format, args...)
|
||||
}
|
||||
|
||||
// GetLevel implements nfs.Logger.
|
||||
func (l *NFSLog) GetLevel() nfs.LogLevel {
|
||||
zl := l.l.GetLevel()
|
||||
switch zl {
|
||||
case zerolog.PanicLevel, zerolog.Disabled:
|
||||
return nfs.PanicLevel
|
||||
case zerolog.FatalLevel:
|
||||
return nfs.FatalLevel
|
||||
case zerolog.ErrorLevel:
|
||||
return nfs.ErrorLevel
|
||||
case zerolog.WarnLevel:
|
||||
return nfs.WarnLevel
|
||||
case zerolog.InfoLevel:
|
||||
return nfs.InfoLevel
|
||||
case zerolog.DebugLevel:
|
||||
return nfs.DebugLevel
|
||||
case zerolog.TraceLevel:
|
||||
return nfs.TraceLevel
|
||||
}
|
||||
return nfs.DebugLevel
|
||||
}
|
||||
|
||||
// ParseLevel implements nfs.Logger.
|
||||
func (l *NFSLog) ParseLevel(level string) (nfs.LogLevel, error) {
|
||||
switch level {
|
||||
case "panic":
|
||||
return nfs.PanicLevel, nil
|
||||
case "fatal":
|
||||
return nfs.FatalLevel, nil
|
||||
case "error":
|
||||
return nfs.ErrorLevel, nil
|
||||
case "warn":
|
||||
return nfs.WarnLevel, nil
|
||||
case "info":
|
||||
return nfs.InfoLevel, nil
|
||||
case "debug":
|
||||
return nfs.DebugLevel, nil
|
||||
case "trace":
|
||||
return nfs.TraceLevel, nil
|
||||
}
|
||||
var ll nfs.LogLevel
|
||||
return ll, fmt.Errorf("invalid log level %q", level)
|
||||
}
|
||||
|
||||
// SetLevel implements nfs.Logger.
|
||||
func (l *NFSLog) SetLevel(level nfs.LogLevel) {
|
||||
switch level {
|
||||
case nfs.PanicLevel:
|
||||
l.l = l.r.Level(zerolog.PanicLevel)
|
||||
return
|
||||
case nfs.FatalLevel:
|
||||
l.l = l.r.Level(zerolog.FatalLevel)
|
||||
return
|
||||
case nfs.ErrorLevel:
|
||||
l.l = l.r.Level(zerolog.ErrorLevel)
|
||||
return
|
||||
case nfs.WarnLevel:
|
||||
l.l = l.r.Level(zerolog.WarnLevel)
|
||||
return
|
||||
case nfs.InfoLevel:
|
||||
l.l = l.r.Level(zerolog.InfoLevel)
|
||||
return
|
||||
case nfs.DebugLevel:
|
||||
l.l = l.r.Level(zerolog.DebugLevel)
|
||||
return
|
||||
case nfs.TraceLevel:
|
||||
l.l = l.r.Level(zerolog.TraceLevel)
|
||||
return
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue