|
|
- package logger
-
- import (
- "go.uber.org/zap"
- "go.uber.org/zap/zapcore"
- "os"
- )
-
- var consoleLogCore *zap.Logger
-
- type consoleLogger struct {
- logger *zap.Logger
- }
-
- func NewConsoleDriver(config console) (driver, error) {
- if consoleLogCore == nil {
- coreEncoder := zap.NewProductionEncoderConfig()
- coreEncoder.EncodeLevel = zapcore.CapitalLevelEncoder
- encoder := zapcore.NewJSONEncoder(coreEncoder)
- core := zapcore.NewCore(encoder, zapcore.Lock(os.Stdout), zap.DebugLevel)
- consoleLogCore = zap.New(core)
- }
-
- return &consoleLogger{consoleLogCore}, nil
- }
-
- func (c *consoleLogger) Record(message message) {
- if message.Level == debugLevel || message.Level == DebugLevel {
- c.logger.Debug(message.Content,
- zap.String("Extra", message.Extra),
- zap.Int("Pid", message.Pid),
- zap.String("Module", message.Module),
- zap.String("Operator", message.Operator),
- zap.String("Caller", message.Caller),
- zap.String("Date", message.Date),
- zap.String("Time", message.Time))
- } else if message.Level == infoLevel || message.Level == InfoLevel {
- c.logger.Info(message.Content,
- zap.String("Extra", message.Extra),
- zap.Int("Pid", message.Pid),
- zap.String("Module", message.Module),
- zap.String("Operator", message.Operator),
- zap.String("Caller", message.Caller),
- zap.String("Date", message.Date),
- zap.String("Time", message.Time))
- } else if message.Level == warnLevel || message.Level == WarnLevel {
- c.logger.Warn(message.Content,
- zap.String("Extra", message.Extra),
- zap.Int("Pid", message.Pid),
- zap.String("Module", message.Module),
- zap.String("Operator", message.Operator),
- zap.String("Caller", message.Caller),
- zap.String("Date", message.Date),
- zap.String("Time", message.Time))
- } else if message.Level == errorLevel || message.Level == ErrorLevel {
- c.logger.Error(message.Content,
- zap.String("Extra", message.Extra),
- zap.Int("Pid", message.Pid),
- zap.String("Module", message.Module),
- zap.String("Operator", message.Operator),
- zap.String("Caller", message.Caller),
- zap.String("Date", message.Date),
- zap.String("Time", message.Time))
- } else if message.Level == fatalLevel || message.Level == FatalLevel {
- c.logger.Fatal(message.Content,
- zap.String("Extra", message.Extra),
- zap.Int("Pid", message.Pid),
- zap.String("Module", message.Module),
- zap.String("Operator", message.Operator),
- zap.String("Caller", message.Caller),
- zap.String("Date", message.Date),
- zap.String("Time", message.Time))
- }
- }
|