On this page:
N|Solid is an enterprise-grade Node.js runtime produced by Nodesource that provides additional performance metrics about Node.js processes.
This topic describes the additional data available in AppDynamics for N|Solid monitoring.
When the Node.js agent is installed on an N|Solid runtime, it collects these additional metrics and makes them available in the AppDynamics controller so they can be used to diagnose latency issues and memory leaks.
You can view the metrics under the following paths in the metric browser navigation tree, by node at Application Infrastructure Performance > TierName > Individual Nodes > Nodejs_NodeName > Node.js.
- NSolid -> 1-minute, 5-minute, and 15-minute load average
- NSolid -> System Uptime & Process uptime (ms)
- NSolid -> Memory -> JS heap -> Total Usage (MB)
- NSolid -> Memory -> V8 heap -> Total Available (MB)
- Total memory available to the V8 heap.
- NSolid -> Memory -> Total Available (MB)
- Total memory available to the process.
- NSolid -> Memory -> Total Size (MB)
- Total memory used by the process.
- NSolid -> Event Loop -> Active Handles:
- The number of active handles the event loop will process. Handles tend to be longer-lived larger-scale asynchronous operations, such as open sockets or timers. An uptick in this metric could indicate a possible memory leak.
- NSolid -> Event Loop -> Active Requests:
- The number of active requests the event loop will process. Requests tend to be shorter-lived smaller-scale operations such as writing to file handles and other file-related operations. This metric provides additional insight into load characteristics.
- NSolid -> Idle Percent:
- NSolid -> Estimated Lag
- Average amount of time a I/O response may have to wait before being processed.
- NSolid -> Loops Per Second
- Number of executions per second of the libuv event loop.
- NSolid -> Average Tasks:
- NSolid -> Total Count:
- Total number of event loop turns.
Process Snapshots Data
You can view details on asynchronous activities in the Node.js event loop for N|Solid processes in Process Snapshots > Async Activity. The following categories of event loop activity are displayed in Async Activity:
- Active Handles: active handles that the event loop will process
- Active Requests: the number of active requests the event loop will process
- Pending: lower level asynchronous activity
The following information is displayed for each property:
- Type: The property type (e.g., TCP socket connection, setTimeout)
- Location: The source location associated with the activity, when available