|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+package modules
|
|
|
2
|
+
|
|
|
3
|
+import (
|
|
|
4
|
+ "go.uber.org/zap"
|
|
|
5
|
+ "go.uber.org/zap/zapcore"
|
|
|
6
|
+)
|
|
|
7
|
+
|
|
|
8
|
+func MyEncoderConfig() zapcore.EncoderConfig {
|
|
|
9
|
+ return zapcore.EncoderConfig{
|
|
|
10
|
+ // Keys can be anything except the empty string.
|
|
|
11
|
+ TimeKey: "T",
|
|
|
12
|
+ LevelKey: "L",
|
|
|
13
|
+ NameKey: "N",
|
|
|
14
|
+ //CallerKey: "C",
|
|
|
15
|
+ FunctionKey: zapcore.OmitKey,
|
|
|
16
|
+ MessageKey: "M",
|
|
|
17
|
+ StacktraceKey: "S",
|
|
|
18
|
+ LineEnding: zapcore.DefaultLineEnding,
|
|
|
19
|
+ EncodeLevel: zapcore.CapitalLevelEncoder,
|
|
|
20
|
+ EncodeTime: zapcore.ISO8601TimeEncoder,
|
|
|
21
|
+ EncodeDuration: zapcore.StringDurationEncoder,
|
|
|
22
|
+ EncodeCaller: zapcore.ShortCallerEncoder,
|
|
|
23
|
+ }
|
|
|
24
|
+}
|
|
|
25
|
+
|
|
|
26
|
+func newLogger() *zap.Logger {
|
|
|
27
|
+ cfg := zap.Config{
|
|
|
28
|
+ Level: zap.NewAtomicLevelAt(zap.DebugLevel),
|
|
|
29
|
+ Development: true,
|
|
|
30
|
+ Encoding: "console",
|
|
|
31
|
+ EncoderConfig: MyEncoderConfig(),
|
|
|
32
|
+ OutputPaths: []string{"stdout"},
|
|
|
33
|
+ ErrorOutputPaths: []string{"stderr"},
|
|
|
34
|
+ }
|
|
|
35
|
+ logger, err := cfg.Build()
|
|
|
36
|
+ if err != nil {
|
|
|
37
|
+ panic(err)
|
|
|
38
|
+ }
|
|
|
39
|
+ return logger
|
|
|
40
|
+}
|