Skip to content

Add event loop utilization to default metrics#785

Open
bugprone wants to merge 1 commit into
prometheus:mainfrom
bugprone:port-elu-metric
Open

Add event loop utilization to default metrics#785
bugprone wants to merge 1 commit into
prometheus:mainfrom
bugprone:port-elu-metric

Conversation

@bugprone

Copy link
Copy Markdown
Contributor

Replacement for #518 as discussed there, keeping Ivan Tymoshenko credited as commit co-author.

Adds nodejs_eventloop_utilization_summary and nodejs_eventloop_utilization_histogram to 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 via collectDefaultMetrics options).

Beyond the rebase of #518 onto current main:

  • aligned the config key name eventLoopUtilizationPercentiles across code, types, and README (the code previously read eventLoopUtilizationSummaryPercentiles while docs and types said otherwise)
  • dropped the perf_hooks availability guard and the Node 10 test skip, both dead code now that Node.js >= 22 is required
  • fixed the stale node/no-unsupported-features eslint disable that no longer resolves under the current lint setup

Full suite passes locally: 544 tests across 29 suites, lint and TypeScript compile clean.

Closes #518

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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant