doc(llnode): add user journey guide
Context
This pull request aims to document llnode user journey.
Ref: https://github.com/nodejs/llnode/issues/401 Ref: https://github.com/nodejs/diagnostics/issues/502
Update
- [x] Create a structure
- [x] Validate the structure together
- [ ] Write down the content
- [ ] Reviews the whole
- [ ] Announce & celebrate 🎉
Why this structure?
My idea was to slowly bring the reader from basic theoretical concepts to basic usage of lldb. Then, once the reader sees the missing parts, we call llnode to the rescue and learn basic usage.
WDYT?
Love it!! I am a big fan of this exploratory style of tutorial. Especially the "it's not doing what was expected this is how we fix it".
If I could suggest a finesse: Do you think it would be worth while continuing with that concept into the third section? Specifically having the solution to the crash being a variable that is only available in the objects and not in the backtrace. This "extra lightbulb" would demonstrate the value of having the dump over a just a backtrace which is what most people seem to think a core dump is for.
Thanks for your feedback @No9 & @RafaelGSS 🙌
Specifically having the solution to the crash being a variable that is only available in the objects and not in the backtrace. (@No9)
Could you give me an example? Something like an OOM? Where the size of an object is causing the crash.
The diagnostics documentation is around the User Journey (@RafaelGSS)
The journey we decide to follow here is the "post-mortem debugging," and llnode will be the solution. Make sense? Or I didn't get your point?
The journey through these events:
- I have an application that crash, and it's hard to analyze the root causes
- I enable core dump
- I use
lldb, but it misses something - I used
llnode; I got "all" what I need
My idea is line with what @RafaelGSS suggested. The journey should define a common use case (something that is likely to happen in the real world) to highlight the benefits /features of llnode. For Example in this article https://developer.ibm.com/articles/explore-nodejs-core-dumps-using-the-llnode-plugin-for-lldb/ the example steps through a missing function call in a http server. Not only does it generate the crash but it also demonstrates getting additional information from the dump that you wouldn't get in the backtrace.
Thanks again @No9 :)
I have exactly the same vision, it's also what I try to accomplish in that one https://nodejs.org/en/docs/guides/diagnostics/memory/using-gc-traces/
Here is what we could do to move forward:
- I'll write down the introduction and fill subparts with a few lines.
- Then you'll probably have a better idea about where I'd like to go
WDYT?
Hey @No9 @RafaelGSS 👋 - I added a few lines and updated the structure. Let me know if it fits your expectations 🙌