Conditions | 3 |
Total Lines | 21 |
Code Lines | 17 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | package logger |
||
37 | func CreateZapLogger() (*otelzap.Logger, func()) { |
||
38 | zapLogger, _ := zap.NewProduction(zap.Hooks(func(entry zapcore.Entry) error { |
||
39 | defer sentry.Flush(config.SentryFlushTimeout) |
||
40 | if entry.Level <= zapcore.InfoLevel { |
||
41 | return nil |
||
42 | } |
||
43 | msg := strings.Builder{} |
||
44 | msg.WriteString(entry.Message) |
||
45 | msg.WriteString(" ") |
||
46 | msg.WriteString(entry.Caller.TrimmedPath()) |
||
47 | event := sentry.NewEvent() |
||
48 | event.Message = msg.String() |
||
49 | event.Level = ConvertSentryLevel(entry.Level) |
||
50 | sentry.CaptureEvent(event) |
||
51 | return nil |
||
52 | })) |
||
53 | |||
54 | logger := otelzap.New(zapLogger, otelzap.WithTraceIDField(false)) |
||
55 | undo := otelzap.ReplaceGlobals(logger) |
||
56 | |||
57 | return logger, undo |
||
58 | } |
||
59 |