Skip to content

perf: use the faster api to collect rss#742

Open
chidam333 wants to merge 1 commit into
prometheus:mainfrom
chidam333:master
Open

perf: use the faster api to collect rss#742
chidam333 wants to merge 1 commit into
prometheus:mainfrom
chidam333:master

Conversation

@chidam333

Copy link
Copy Markdown

https://nodejs.org/api/process.html#processmemoryusagerss

i think we can use the faster api to collect rss

Copilot AI review requested due to automatic review settings March 15, 2026 15:48

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates default RSS collection on non-Linux platforms to use Node’s faster RSS-only API, reducing overhead during metrics collection.

Changes:

  • Switch non-Linux process_resident_memory_bytes collection from process.memoryUsage() to process.memoryUsage.rss().
  • Add a new safeRss() helper to safely read RSS with a try/catch wrapper.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
lib/metrics/osMemoryHeap.js Uses safeRss() to collect RSS for the non-Linux variant of process_resident_memory_bytes.
lib/metrics/helpers/safeRss.js Introduces a helper that calls process.memoryUsage.rss() and swallows platform/runtime errors.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +5 to +7
try {
return process.memoryUsage.rss();
} catch {
Comment on lines +20 to 25
// process.memoryUsage.rss() is faster than process.memoryUsage() as it
// only reads RSS from the OS without collecting all heap statistics
const rss = safeRss();
if (rss !== undefined) {
this.set(labels, rss);
}
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.

2 participants