location_city Bengaluru schedule Aug 26th 05:15 - 06:00 PM place Sigma Hall 2 people 2 Interested

A large percentage of Node application misbehavior can be effectively diagnosed through in-built Node/V8 tracing capabilities. There are a number of powerful tracing options to leverage in development, testing and production phases to validate that application design is indeed reflected in code, without ever instrumenting it.

I will illustrate "top 10" Node/V8 tracing options - from simplest method tracing (find out call sequences, input parameters, return values) to tuning specific JIT compiler options to diagnose and resolve complex crashes/issues. The intention is to help audience understand in-built serviceability features of Node Runtime Environment, and self help in resolving production anomalies.

Server side JavaScript with Node has gained unprecedented popularity as a powerful platform for Cloud / Web development, though the development tools and frameworks are still to mature to complement the productivity. There exists eclipse plugins for Node, but they need improved awareness among the developer community. Brining Node topics to this session are expected to improve this awareness - through implicit indications as well as explicit communication to the wider Eclipse consumers.



Outline/Structure of the Talk

I will start with a high level overview of the Node Runtime Environment, including the V8 JavaScript engine. I will touch upon the vital elements and their backing data structures. This will pave way for introducing tracing. Then we will look at the most common kind of problems such as functional issues, memory leak, hang, crash, performance, etc. We will examine those tracing options which are assisting in one or more of these symptoms. For each trace option, I will explain the purpose, use case, syntax, and an example output to make clear the usage, and for the audience to relate the context for applying specific traces for self helping in troubleshooting and resolving their application misbehaviors.

Learning Outcome

High level runtime environment view of Node/V8
High level overview of in-built tracing
Vital Node / V8 data structures
Major serviceabiulity symptoms/areas
Major tracing options mapping to symptoms
Example use case , usage and sample output of traces

Target Audience

Developers, Architects

schedule Submitted 4 years ago

Public Feedback