-
Notifications
You must be signed in to change notification settings - Fork 78
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
105 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
# Node.js Diagnostics Summit - Spring 2019 | ||
|
||
- **When:** 2019-03-07 to 2019-03-08 | ||
- **Where:** Munich, Germany | ||
- **Issue:** [#203](https://github.com/nodejs/diagnostics/issues/203) | ||
- **Agenda:** [Google Doc](https://docs.google.com/document/d/1Ub4kqznhEXHzKtS4ArK5KGBzwRLa29Kamr4lo2BvzcE/preview) | ||
|
||
## Action Items | ||
|
||
The following action items are copied from [this Google Doc](https://docs.google.com/document/d/1ftJCXFM_Yi45O2nr5O7YwdOMO7iUbWSx-UStvOYMu28/edit) | ||
|
||
Besides these action items, there aren't any proper minutes. | ||
For the best overview see the Recordings section below. | ||
|
||
### Async Hooks | ||
|
||
Lead: [Matteo Collina](https://github.com/mcollina) | ||
|
||
- Agreement on Benedikt's [document](http://bit.ly/making-async-hooks-fast-enough) (ASAP) | ||
- This solves the performance issue | ||
- *Please read and comment* | ||
- Should there be a higher level API for CLS? | ||
- Vladmir started working on a PR to add CLS to Core | ||
|
||
### V8 Signals | ||
|
||
Lead: [Yang Guo](https://github.com/hashseed) | ||
|
||
- [Document](https://docs.google.com/document/d/1xHl4qF2olKtDEPQFkci8g_wF3oTA-NBoJ6z5cpw1PWk) | ||
- There are more trace events that V8 could be emitting | ||
- Low-hanging fruit: opt/deopt events | ||
- Identify more use cases | ||
- Move command line flags to actual APIs | ||
|
||
### Documentation and Best Practices | ||
|
||
Lead: [Michael Dawson](https://github.com/mhdawson) | ||
|
||
- Continue to refine the list of use cases | ||
- Continue to fill those in | ||
- Move heapdump generation to core ([@jasnell](https://github.com/jasnell)) | ||
- Write best practices guide based on that | ||
|
||
### Postmortem Debugging | ||
|
||
Lead: [Yang Guo](https://github.com/hashseed) | ||
|
||
- Move V8 to Torque (DSLification) | ||
- WIP | ||
- There's a spreadsheet with the progress | ||
- Move llnode to use the metadata/script generated from DSL | ||
- Heapsnapshot | ||
- Additional tooling to help uncover issues aside from core dump | ||
- Also convert core dump to heapsnapshot | ||
|
||
### Trace Events and System Tracing | ||
|
||
Lead: [James M Snell](https://github.com/jasnell) | ||
|
||
- Perfetto: moving forward | ||
- `TRACE_EVENTS` will be our primary instrumentation path | ||
- System tracing will be case-by-case, best effort approach | ||
- Open an issue notifying stakeholders of this decision ([@jasnell](https://github.com/jasnell)) | ||
- Start to instrument more areas of core | ||
- Profiling: doc to circulate ([@psmarshall](https://github.com/psmarshall)) | ||
- A flag similar to --prof but based on the CPU Profiler ([@joyeecheung](https://github.com/joyeecheung)) | ||
|
||
### APM Instrumentation | ||
|
||
- V8 exposing a new API is not what we need | ||
- We need to figure out what APM vendors want | ||
- Come up with a blessed instrumentation API for module vendors to instrument their modules | ||
- Document on monkey-patching vs. ESM | ||
|
||
## Recordings | ||
|
||
_Raw recordings can be found in [Google Drive](https://drive.google.com/drive/folders/1YLrO8XwAdWPaFNmyZZRqPAsSIDGo_RXw)_ | ||
|
||
### Talks | ||
|
||
| Recording | Speaker | Slides | | ||
|-----------|---------|--------| | ||
| [Intro to OpenCensus, OpenTracing, and TraceContext](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=865) | [Thomas Watson](https://github.com/watson) | [SpeakerDeck](https://speakerdeck.com/wa7son/standards-in-distributed-tracing) | ||
| [Perfetto and Node.js](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=2557) | [Kelvin Jin](https://github.com/kjin) | | ||
| [Intro into APM agents, comparison of Node.js and Java](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=4700) | [Gerhard Stöbich](https://github.com/flarna) | | ||
| [Zero cost async stack traces](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=6797) | [Benedikt Meurer](https://github.com/bmeurer) | | ||
| [Status of Async Hooks](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=9870) | [Matteo Collina](https://github.com/mcollina) | | ||
| [How to use a core dump](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=11302) | [Yang Guo](https://github.com/hashseed) | | ||
| [Diagnostics Best Practices documentation](https://drive.google.com/file/d/1Of-bwwZtv0sb-7R1cEjyIqizDgyT4a4i/view?t=12125) | [Michael Dawson](https://github.com/mhdawson) | | ||
| [Diagnostics in Java](https://drive.google.com/file/d/15MzZoIiUKpOUr86inpUqsl2phUsk05x2/view?t=143) | [Felix Barnsteiner](https://github.com/felixbarny) | | ||
| [Status of Node Clinic / Doctor, Bubbleprof, Flame](https://drive.google.com/file/d/15MzZoIiUKpOUr86inpUqsl2phUsk05x2/view?t=2008) | [Matteo Collina](https://github.com/mcollina) | | ||
| [State of CPU Profiling in V8](https://drive.google.com/file/d/1vIdYiFYW7S3804U7_5iznP9M-IO8xvNv/view?t=52) | [Peter Marshall](https://github.com/psmarshall) | | ||
| [CloudFlare Workers](https://drive.google.com/file/d/1zlY37F-AtunGyqMbMC6TaAB40icN8GU0/view) | | ||
|
||
### Discussions | ||
|
||
| Recording | Notes | | ||
|-----------|-------| | ||
| [V8 Signals](https://drive.google.com/file/d/1LeSfIzArwvJfy2kGtbxF6HiMOukLabOg/view?t=281) | [Google Doc](https://docs.google.com/document/d/1xHl4qF2olKtDEPQFkci8g_wF3oTA-NBoJ6z5cpw1PWk/preview) | ||
| [Documentation best practices](https://drive.google.com/file/d/1LeSfIzArwvJfy2kGtbxF6HiMOukLabOg/view?t=3232) | [Slides](https://github.com/nodejs/diagnostics/files/2957405/Diagnostic.Summit.-.Best.Practices.pdf) | ||
| [Diagnostics Tooling Support Tiers](https://drive.google.com/file/d/1LeSfIzArwvJfy2kGtbxF6HiMOukLabOg/view?t=3388) | | ||
| [Async Hooks](https://drive.google.com/file/d/1LeSfIzArwvJfy2kGtbxF6HiMOukLabOg/view?t=9227) | [Google Doc](https://docs.google.com/document/d/1g8OrG5lMIUhRn1zbkutgY83MiTSMx-0NHDs8Bf-nXxM/preview) | ||
| [Post-mortem debugging](https://drive.google.com/file/d/1Enw2Z0R9pNsoaCVq8LPK6Ja-P-T5QX-h/view?t=2940) | | ||
| [Trace events, system tracing, profiling](https://drive.google.com/file/d/1U9SfKfb83M-AQX3IL-XgX-OGuGAz4c5w/view) | | ||
| [APM instrumentation](https://drive.google.com/file/d/11nk_cZYUCZhUKptHD-4dlS5PxQTeLXlc/view) | |