AppSignal now supports Node.js!
The new Node.js implementation contains some concepts that vary from the Ruby and Elixir implementations. Be sure to check out the Tracing section to familiarize yourself with any differences.
Our Node.js support is defined on our maintenance policy page.
Node.js is an incredibly flexible runtime, which allows it to be used for a multiple of different use-cases. AppSignal was primarily designed for use on a server, so there are a few places that the Node.js integration is currently not suitable:
- Electron apps: We don't recommend using
@appsignal/nodejsinside Electron applications. As we designed the agent to run on a server, it is not currently useful in this environment. It will also lead to possibly unwanted complexity around cross-compilation of the native extension.
- Short-lived processes: Short-lived processes, such as CLI tools, are a poor fit for the agent, which must be able to stay running for a period of time (at least 60 seconds).
- Serverless functions: Serverless functions are meant to be short-lived processes, so they are also a poor fit for the agent.
- Statically generated apps: Some environments (e.g Gatsby.js, Next.js on Vercel, Svelte offer some access to Node.js APIs but ultimately compile thier code down to a client side application, and therefore aren't suitable for the Node.js library.
But don't worry! The
@appsignal/nodejs doesn't currently work, but only error tracking is supported at the moment.