elastic / elastic/docs-content
Troubleshooting: Collect profiling traces for EDOT SDK (Node.js)
- Dominant language
- No language data
- Stars
- 47
- Forks
- 261
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 116
Description
Document how to collect Node.js profiling traces when investigating performance issues related to the EDOT SDK for Node.js or the Elastic APM Agent for Node.js.
This troubleshooting guide should explain how to run Node.js built-in profiling tools and collect their output so it can be safely shared in public GitHub issues or Elastic support cases.
### Background
In the context of investigating performance problems reported in
https://github.com/elastic/sdh-apm/issues/1868#issuecomment-3351033135,
David Luna suggested using Node.js profiling to better understand runtime behavior when users experience performance degradation with:
- EDOT SDK [Node.js](http://node.js/)
- Elastic APM Agent [Node.js](http://node.js/)
Node.js provides built-in profiling capabilities that can help identify CPU hotspots, blocking operations, and event loop bottlenecks:
https://nodejs.org/en/learn/getting-started/profiling/
### Scope of the documentation
This issue should result in a troubleshooting page that covers:
- When and why to collect Node.js profiling traces in the context of EDOT SDK or APM Agent performance issues
- How to run Node.js profiling for an application using:
- EDOT SDK [Node.js](http://node.js/)
- Elastic APM Agent [Node.js](http://node.js/)
- How to collect and export the profiling output
- What information is useful to include when sharing profiling results
- How to safely share profiling artifacts in public GitHub issues or Elastic support cases
The goal is to give users clear, repeatable steps to gather actionable profiling data that helps Elastic engineers diagnose Node.js performance issues more effectively.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.