Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
Mirrored from https://github.com/Slazee/caddy.git
Synced Nov 14, 05:15 UTC
logging: Default logger should use wall time with milliseconds
This format is easier for humans to read and is still very precise.
Matthew Holt committed
Nov 4, 2019 at 12:14 UTC
b1f41d0ff1ee3e227d1d6e40ff7e215a2280dba2
1 file changed
+11
-4
logging.go
+11
-4
@@ -337,7 +337,7 @@ func (cl *CustomLog) provision(ctx Context, logging *Logging) error {
337
cl.encoder = val.(zapcore.Encoder)
338
}
339
if cl.encoder == nil {
340
- cl.encoder = zapcore.NewConsoleEncoder(zap.NewProductionEncoderConfig())
340
+ cl.encoder = newDefaultProductionLogEncoder()
341
}
342
343
if cl.WriterRaw != nil {
@@ -576,9 +576,7 @@ func newDefaultProductionLog() (*defaultCustomLog, error) {
576
if err != nil {
577
return nil, err
578
}
579
- encCfg := zap.NewProductionEncoderConfig()
580
- encCfg.EncodeLevel = zapcore.CapitalColorLevelEncoder
581
- cl.encoder = zapcore.NewConsoleEncoder(encCfg)
579
+ cl.encoder = newDefaultProductionLogEncoder()
580
cl.levelEnabler = zapcore.InfoLevel
581
582
cl.buildCore()
@@ -589,6 +587,15 @@ func newDefaultProductionLog() (*defaultCustomLog, error) {
587
}, nil
588
}
589
590
+func newDefaultProductionLogEncoder() zapcore.Encoder {
591
+ encCfg := zap.NewProductionEncoderConfig()
592
+ encCfg.EncodeLevel = zapcore.CapitalColorLevelEncoder
593
+ encCfg.EncodeTime = func(ts time.Time, encoder zapcore.PrimitiveArrayEncoder) {
594
+ encoder.AppendString(ts.UTC().Format("2006/01/02 15:04:05.000"))
595
+ }
596
+ return zapcore.NewConsoleEncoder(encCfg)
597
+}
598
+
599
// Log returns the current default logger.
600
func Log() *zap.Logger {
601
defaultLoggerMu.RLock()