diff --git a/pkg/common/log/zap.go b/pkg/common/log/zap.go index 1698d0582..18a11b7c2 100644 --- a/pkg/common/log/zap.go +++ b/pkg/common/log/zap.go @@ -70,6 +70,7 @@ func NewZapLogger() (*ZapLogger, error) { return nil, err } zl.zap = l.Sugar() + zl.zap.WithOptions(zap.AddStacktrace(zap.DPanicLevel)) return zl, nil } @@ -102,6 +103,14 @@ func (l *ZapLogger) cores() (zap.Option, error) { }), nil } +func NewErrStackCore(c zapcore.Core) zapcore.Core { + return &errStackCore{c} +} + +type errStackCore struct { + zapcore.Core +} + func (l *ZapLogger) getWriter() (zapcore.WriteSyncer, error) { logf, err := rotatelogs.New(config.Config.Log.StorageLocation+sp+"OpenIM.log.all"+".%Y-%m-%d", rotatelogs.WithRotationCount(config.Config.Log.RemainRotationCount),