fix: declare the core.lock to be a pointer to make core concurrency safe (#1626)

declare core.lock to be a pointer, so the lock in cloned core can point
to the same pointer
This commit is contained in:
ZetaoZhuang 2022-10-18 18:55:46 -07:00 коммит произвёл GitHub
Родитель eb5082ca7f
Коммит e9d143d1e9
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -32,7 +32,7 @@ type Core struct {
fieldMappers map[string]fieldTagMapper
fields []zapcore.Field
out zapcore.WriteSyncer
lock sync.Mutex
lock *sync.Mutex
}
// NewCore creates a new appinsights zap core. Should only be initialized using an appinsights Sink as the
@ -43,6 +43,7 @@ func NewCore(le zapcore.LevelEnabler, out zapcore.WriteSyncer) *Core {
enc: newTraceEncoder(),
fieldMappers: make(map[string]fieldTagMapper),
out: out,
lock: &sync.Mutex{},
}
}