Installation methods
If you're running a web app and deploying as code on Windows, you can easily install the Node agent using our Azure Site Extension. See these instructions.
If you're deploying a container app, you can follow our instructions for Docker.
You need to install the agent manually for Linux-hosted web apps, which we describe below.
Manual Installation
Learn about special considerations for using Microsoft Azure App Services as a hosting service with New Relic's Node.js agent.
What you need
In addition to the Compatibility and requirements for the Node.js agent, this tutorial assumes the following:
- You have a working installation of Node.js.
- You have the Azure SDK for JavaScript for your platform.
- A deployed application in Azure.
Important
The Node.js agent cannot deliver telemetry for Azure Functions. Instead, you will need to use the Azure Functions monitoring integration
Installing the Node.js agent
To add the New Relic Node.js agent to your Azure application, add the newrelic module to the application's dependencies:
$npm install newrelicThe newrelic module must be loaded first in order for the agent to work correctly. This is accomplished by using the Node.js -r flag to run the app:
$node -r newrelic server.jsImportant
For an ESM app, you must specify both the ESM loader and New Relic Node.js agent:
$node --import newrelic/esm-loader.mjs -r newrelic server.jsImportant
For a Next.js app, load our agent via NODE_OPTIONS, such as:
$NODE_OPTIONS='-r newrelic' next startAdding app settings in Azure
After installation, you must configure your app in Azure App Services:
- Sign in to portal.azure.com.
- Select App Services > (select your deployed Node.js app) > Configure.
- Add the following to the app settings:
new_relic_app_name: Your Azure App Services namenew_relic_license_key: Your New Relic
- Save your settings.
- Restart your Node.js app.
Generate some traffic to your app and wait a few minutes. After waiting, see your data by going to one.newrelic.com > All capabilities > APM & services > (select your app).
Optional: Adding app settings with the CLI
Optional: Here is an example of how to add the app settings by using the CLI (Node.js SDK):
$azure account download "YOUR_SUBSCRIPTION_NAME"$azure account import "PATH_TO_PUBLISH_SETTINGS_FILE"$azure site config add "new_relic_app_name=REPLACE_WITH_YOUR_APP_NAME"$azure site config add "new_relic_license_key=REPLACE_WITH_YOUR_LICENSE_KEY"$azure site restart AZURE_APP_SERVICES_NAMEUsing environment variables
If your agent runs in PaaS environments such as Heroku or Azure App Services, all of the configuration variables in newrelic.js have counterparts that can be set as environment variables. You can freely mix and match variables in the configuration file. Environment variables override your configuration file settings.
For example, as a convenience to Azure users, the agent will use APP_POOL_ID as the application name (NEW_RELIC_APP_NAME) if it's set, so you can use the name you chose without setting it twice. For more information, see Configuring Node.js with environment variables.