use profiler to track app execution running locally
use flame graphs for best results in production,
with real traffic going on
Flame graphs or --prof can help if it's significant.
Finding the blocking function
is was hard to do in general.
Thanks to Async Hooks it's finally possible in Node 8
blockedAt((ms, stack) => console.log(stack))
at Promise.then () at Immediate.start (/test/cases/promise.js:9:6) at runCallback (timers.js:781:20) at tryOnImmediate (timers.js:743:5) at processImmediate [as _immediateCallback] (timers.js:714:5)
@naugtur
Subscribe to my newsletter
http://naugtur.pl/news