Add event loop utilization to default metrics#785
Open
bugprone wants to merge 1 commit into
Open
Conversation
Ports prometheus#518 onto the current main: adds nodejs_eventloop_utilization_summary and nodejs_eventloop_utilization_histogram, sampled on an unref'd interval so a blocked event loop is still accounted for. Beyond the rebase, aligns the config key name (eventLoopUtilizationPercentiles) across code, types, and README, and drops the perf_hooks availability guard that is dead code now that Node.js >= 22 is required. Co-authored-by: Ivan Tymoshenko <ivan@tymoshenko.me>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replacement for #518 as discussed there, keeping Ivan Tymoshenko credited as commit co-author.
Adds
nodejs_eventloop_utilization_summaryandnodejs_eventloop_utilization_histogramto the default metrics, sampled on an unref'd interval so a blocked event loop is still accounted for (the interval, buckets, percentiles, and summary window are configurable viacollectDefaultMetricsoptions).Beyond the rebase of #518 onto current main:
eventLoopUtilizationPercentilesacross code, types, and README (the code previously readeventLoopUtilizationSummaryPercentileswhile docs and types said otherwise)perf_hooksavailability guard and the Node 10 test skip, both dead code now that Node.js >= 22 is requirednode/no-unsupported-featureseslint disable that no longer resolves under the current lint setupFull suite passes locally: 544 tests across 29 suites, lint and TypeScript compile clean.
Closes #518