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
{{ message }}
Repository navigation
Any plans/thoughts about monitoring event loop performance #131
I know that @jasnell looked extensively in it, and it seemed it could not be possible without a breaking change in libuv, which I don't think the team was willing to do.
We currently do this with N|Solid and from my understanding it's... not easy. I've looked into the existing ecosystem tooling and it kinda reflects that, unfortunately. 😞
@Fishrock123 and @cxreg did a ton of work on it and may be able to share their experience with it.
I've abandoned the effort to get something into libuv as I just could not get feedback or any positive momentum from the maintainers. I've added loop delay sampling to node.js itself so I think we can close this
Activity
hybrist commentedon Dec 12, 2017
There are some of these in
perf_hooks: https://nodejs.org/api/perf_hooks.html#perf_hooks_class_performancenodetiming_extends_performanceentryzimbabao commentedon Dec 13, 2017
Thanks @jkrems, I'm interested in monitoring event loop.
danielkhan commentedon Dec 14, 2017
Have a look at my blog post: https://medium.com/the-node-js-collection/what-you-should-know-to-really-understand-the-node-js-event-loop-and-its-metrics-c4907b19da4c
I am covering some metrics that can be easily gathered there.
naugtur commentedon Dec 14, 2017
This might be useful:
https://github.com/naugtur/blocked-at
Disclaimer: I'm the author and blocked-at is still considered experimental (but seems to work)
mcollina commentedon Dec 15, 2017
I know that @jasnell looked extensively in it, and it seemed it could not be possible without a breaking change in libuv, which I don't think the team was willing to do.
jasnell commentedon Dec 15, 2017
Still intending to work on this, but it definitely will be libuv2
bnb commentedon Dec 18, 2017
We currently do this with N|Solid and from my understanding it's... not easy. I've looked into the existing ecosystem tooling and it kinda reflects that, unfortunately. 😞
@Fishrock123 and @cxreg did a ton of work on it and may be able to share their experience with it.
bnoordhuis commentedon Dec 18, 2017
Can already be done with a uv_check_t + uv_prepare_t.
Can you specify "queue" and "phase" a bit more?
Fishrock123 commentedon Dec 18, 2017
Yeah we pretty much do this stuff in N|Solid already, and also event loop "stall" notifications.
Probably one of the things we do: essentially the number of
MakeCallbacks per loop.zimbabao commentedon Dec 22, 2017
@bnoordhuis : By phases I'm referring to phases to https://nodejs.org/en/docs/guides/event-loop-timers-and-nexttick/. By queues I meant macro task queues in that phase and micro task queue in process.tick().
@Fishrock123 : That's what I meant.
gireeshpunathil commentedon Oct 25, 2019
should this remain open? [ I am trying to chase dormant issues to closure ]
jasnell commentedon Oct 25, 2019
I've abandoned the effort to get something into libuv as I just could not get feedback or any positive momentum from the maintainers. I've added loop delay sampling to node.js itself so I think we can close this