This guide covers Node.js applications running on ECS, EC2, Kubernetes, or any container/VM environment. For AWS Lambda, see the Node.js Lambda guide.
1. Install the OpenTelemetry SDK
2. Enable Auto Instrumentation
Enable auto instrumentation by requiring theauto-instrumentations-node module using the --require flag:
3. Set Environment Variables
Add these environment variables to your service. ReplaceYOUR_TRACE0_ENV_API_KEY with the API key from your Trace0 environment.
4. Add Logger
To correlate logs with traces in Trace0, your application must use an OpenTelemetry-supported logger. We recommend using Pino, a low overhead JavaScript logger for Node.js. The instructions below usePino, but the same approach applies to other supported loggers such as Winston.
First, install the library:
logger.js file:
5. Kubernetes Setup
If your application runs on Kubernetes, includingAmazon EKS, Google Kubernetes Engine or Azure Kubernetes Service, add the following environment variables to your container specification.