You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We want to incorporate a race detector in our project's integration tests and circle ci to help catch race conditions earlier on. At this point, we can't do so due to races we see related to the witchcraft logger.
We have goroutines that reassign the value of context. This creates a data race to which parameters a log will have at write time. The impact here is that logs are wrapped with params set by another goroutine (ex: one goroutine's log params are rewritten by another goroutine's log params), making it difficult to reliably debug our product and degrades log accuracy.
It's not obvious from the witchraft logging documentation how to correctly use the context and the logging functions. Would like to open up a discussion here on this.
The text was updated successfully, but these errors were encountered:
Contexts are immutable so any changes should create a new context and not change anything about the existing one. Is the issue that the params themselves are pointers whose values are changing?
Are you able to write a test in this repo that demonstrates the problem?
We want to incorporate a race detector in our project's integration tests and circle ci to help catch race conditions earlier on. At this point, we can't do so due to races we see related to the witchcraft logger.
We have goroutines that reassign the value of context. This creates a data race to which parameters a log will have at write time. The impact here is that logs are wrapped with params set by another goroutine (ex: one goroutine's log params are rewritten by another goroutine's log params), making it difficult to reliably debug our product and degrades log accuracy.
It's not obvious from the witchraft logging documentation how to correctly use the context and the logging functions. Would like to open up a discussion here on this.
The text was updated successfully, but these errors were encountered: