remix

This feature requires AppSignal for Node.js version 3.0.18 or higher.

The AppSignal for Node.js integration for Remix

Installation

To enable the instrumentation support for Remix, you first need to install the OpenTelemetry Remix Instrumentation ^0.5.0 package.

After installing the OpenTelemetry Remix Instrumentation package, you must enable the instrumentation in the AppSignal client initialization using the additionalInstrumentations config option as shown in the code below.

javascript
// appsignal.cjs const { Appsignal } = require("@appsignal/nodejs"); const { RemixInstrumentation } = require("opentelemetry-instrumentation-remix"); new Appsignal({ active: true, name: "<YOUR APPLICATION NAME>", pushApiKey: "<YOUR API KEY>", additionalInstrumentations: [new RemixInstrumentation()], });

This snippet references the appsignal.cjs file that was created when configuring AppSignal.

You must set the NODE_OPTIONS environment variable to load the appsignal.cjs file when starting your Remix app.

bash
NODE_OPTIONS='--require ./appsignal.cjs' remix dev

Remix is built on top of Express for web requests handling, and that could make your actions in AppSignal harder to read. If that's your case, you can disable the Express instrumentation by passing the disableInstrumentations option to the AppSignal client initialization with the value: ["@opentelemetry/instrumentation-express"].

Features

The Remix instrumentation will create performance actions in AppSignal from the Remix request handlers. The action name will be the route of the request handler.

Remix loaders are instrumented as child spans of the request handler span.

Once configured, errors raised by your Remix application will be reported to AppSignal.