I've done this same println debugging thing so many times, along with some sed/awk stuff to figure out which call was causing the issue. Now it's a small Go package. With some `runtime.Callers` I can usually find the spot by just swapping the existing Mutex or RWMutex for this one. Sometimes I switch the
with the LockFunc/RLockFunc to get more detail
I almost always initialize it with `deadlog.New(deadlog.WithTrace(1))` and that's plenty.Not the most polished library, but it's not supposed to land in any commit, just a temporary debugging aid. I find it useful. |