Compare commits

..

No commits in common. "master" and "v0.0.8" have entirely different histories.

6 changed files with 19 additions and 64 deletions

View File

@ -55,7 +55,7 @@ func NewTextEncoder(cfg zapcore.EncoderConfig) zapcore.Encoder {
return &textEncoder{ return &textEncoder{
EncoderConfig: &cfg, EncoderConfig: &cfg,
buf: bufferpool.Get(), buf: bufferpool.Get(),
spaced: false, spaced: true,
} }
} }
@ -222,13 +222,13 @@ func (enc *textEncoder) AddDuration(key string, val time.Duration) {
func (enc *textEncoder) AddFloat64(key string, val float64) { func (enc *textEncoder) AddFloat64(key string, val float64) {
enc.addKey(key) enc.addKey(key)
enc.appendFloat(val, 64) enc.appendFloat(val, 64)
enc.buf.AppendByte('}') enc.buf.AppendByte(']')
} }
func (enc *textEncoder) AddInt64(key string, val int64) { func (enc *textEncoder) AddInt64(key string, val int64) {
enc.addKey(key) enc.addKey(key)
enc.addElementSeparator() enc.addElementSeparator()
enc.buf.AppendInt(val) enc.buf.AppendInt(val)
enc.buf.AppendByte('}') enc.buf.AppendByte(']')
} }
func (enc *textEncoder) AddReflected(key string, obj interface{}) error { func (enc *textEncoder) AddReflected(key string, obj interface{}) error {
enc.resetReflectBuf() enc.resetReflectBuf()
@ -252,7 +252,7 @@ func (enc *textEncoder) AddString(key, val string) {
// enc.buf.AppendByte('"') // enc.buf.AppendByte('"')
enc.safeAddString(val) enc.safeAddString(val)
// enc.buf.AppendByte('"') // enc.buf.AppendByte('"')
enc.buf.AppendByte('}') enc.buf.AppendByte(']')
} }
func (enc *textEncoder) AddTime(key string, val time.Time) { func (enc *textEncoder) AddTime(key string, val time.Time) {
enc.addKey(key) enc.addKey(key)
@ -270,7 +270,7 @@ func (enc *textEncoder) AddUint64(key string, val uint64) {
enc.addKey(key) enc.addKey(key)
enc.addElementSeparator() enc.addElementSeparator()
enc.buf.AppendUint(val) enc.buf.AppendUint(val)
enc.buf.AppendByte('}') enc.buf.AppendByte(']')
} }
//noinspection GoRedundantConversion //noinspection GoRedundantConversion
@ -304,38 +304,15 @@ func (enc *textEncoder) clone() *textEncoder {
func (enc *textEncoder) addKey(key string) { func (enc *textEncoder) addKey(key string) {
enc.addElementSeparator() enc.addElementSeparator()
// enc.buf.AppendByte('"') // enc.buf.AppendByte('"')
enc.buf.AppendByte('[')
if enc.replaceSeparator('}') {
enc.buf.AppendByte(',')
enc.buf.AppendByte(' ')
} else {
enc.buf.AppendByte('{')
}
enc.safeAddString(key) enc.safeAddString(key)
// enc.buf.AppendByte('"') // enc.buf.AppendByte('"')
// enc.buf.AppendByte(':') enc.buf.AppendByte(':')
enc.buf.AppendByte('=')
if enc.spaced { if enc.spaced {
enc.buf.AppendByte(' ') enc.buf.AppendByte(' ')
} }
} }
func (enc *textEncoder) replaceSeparator(v byte) bool {
last := enc.buf.Len() - 1
if last < 0 {
return false
}
if enc.buf.Bytes()[last] == v {
t := enc.buf.Bytes()[:last]
enc.buf.Reset()
_, _ = enc.buf.Write(t)
return true
}
return false
}
func (enc *textEncoder) addElementSeparator() { func (enc *textEncoder) addElementSeparator() {
last := enc.buf.Len() - 1 last := enc.buf.Len() - 1
if last < 0 { if last < 0 {
@ -345,7 +322,7 @@ func (enc *textEncoder) addElementSeparator() {
case '{', '[', ':', ',', ' ': case '{', '[', ':', ',', ' ':
return return
default: default:
// enc.buf.AppendByte(',') enc.buf.AppendByte(',')
if enc.spaced { if enc.spaced {
enc.buf.AppendByte(' ') enc.buf.AppendByte(' ')
} }

8
go.mod
View File

@ -4,10 +4,6 @@ go 1.13
require ( require (
github.com/ehlxr/lumberjack v0.0.2-0.20200107093220-2a579f1b2e4d github.com/ehlxr/lumberjack v0.0.2-0.20200107093220-2a579f1b2e4d
github.com/robfig/cron/v3 v3.0.1 github.com/robfig/cron/v3 v3.0.0
go.uber.org/multierr v1.6.0 // indirect go.uber.org/zap v1.12.0
go.uber.org/zap v1.16.0
golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5 // indirect
golang.org/x/tools v0.0.0-20210104081019-d8d6ddbec6ee // indirect
honnef.co/go/tools v0.1.0 // indirect
) )

11
log.go
View File

@ -35,7 +35,6 @@ type logConfig struct {
CrashLogFilename string CrashLogFilename string
ErrorLogFilename string ErrorLogFilename string
EnableLineNumber bool EnableLineNumber bool
AddCallerSkip int
// enable the truncation of the level text to 4 characters. // enable the truncation of the level text to 4 characters.
EnableLevelTruncation bool EnableLevelTruncation bool
@ -63,10 +62,6 @@ func (config *logConfig) Init() {
logger = config.newLogger().Sugar() logger = config.newLogger().Sugar()
} }
func (config *logConfig) New() *zap.SugaredLogger {
return config.newLogger().Sugar()
}
func NewLogConfig() *logConfig { func NewLogConfig() *logConfig {
return &logConfig{ return &logConfig{
Level: DebugLevel, Level: DebugLevel,
@ -118,7 +113,7 @@ func (config *logConfig) newLogger() *zap.Logger {
var options []zap.Option var options []zap.Option
if config.EnableLineNumber { if config.EnableLineNumber {
options = append(options, zap.AddCaller(), zap.AddCallerSkip(config.AddCallerSkip)) options = append(options, zap.AddCaller(), zap.AddCallerSkip(1))
} }
if config.EnableErrorStacktrace { if config.EnableErrorStacktrace {
@ -270,7 +265,3 @@ func writeCrashLog(file string) {
func Fields(args ...interface{}) { func Fields(args ...interface{}) {
logger = logger.With(args...) logger = logger.With(args...)
} }
func With(l *zap.SugaredLogger, args ...interface{}) *zap.SugaredLogger {
return l.With(args...)
}

View File

@ -1,10 +1,9 @@
package log package log
import ( import (
"go.uber.org/zap"
"testing" "testing"
"time" "time"
"go.uber.org/zap"
) )
func TestLog(t *testing.T) { func TestLog(t *testing.T) {
@ -22,27 +21,15 @@ func TestLogWithConfig(t *testing.T) {
config.Init() config.Init()
Fields("traceid", float64(21221212122)) With("traceid", float64(21221212122))
Debugf("this is %s message", "debug") Debugf("this is %s message", "debug")
config.Init() config.Init()
Fields(zap.String("traceid", "12123123123")) With(zap.String("traceid", "12123123123"))
Infof("this is %s message", "info") Infof("this is %s message", "info")
// Errorf("this is %s message", "error") // Errorf("this is %s message", "error")
// Panicf("this is %s message", "panic") // Panicf("this is %s message", "panic")
} }
func TestLogWithNew(t *testing.T) {
config := NewLogConfig()
_ = config.Level.Set("debug")
config.Name = "main"
logger := config.New()
log := With(logger, "traceid", float64(21221212122), "request", "[POST]/hello/v2")
log.Debugf("this is %s message", "debug")
log.Infof("this is %s message", "info")
}
func TestLogRote(t *testing.T) { func TestLogRote(t *testing.T) {
lc := NewLogConfig() lc := NewLogConfig()
lc.MaxSize = 1 lc.MaxSize = 1

View File

@ -1,5 +1,9 @@
package log package log
func With(args ...interface{}) {
logger = logger.With(args...)
}
func Debug(args ...interface{}) { func Debug(args ...interface{}) {
logger.Debug(args...) logger.Debug(args...)
} }

View File

@ -1 +1 @@
v0.0.11 v0.0.8