Install Serverless Monitoring for Azure Functions
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel,
n'hésitez pas à nous contacter.
Overview
This page explains how to collect traces, trace metrics, runtime metrics, and custom metrics from your Azure Functions. To collect additional metrics, install the Datadog Azure integration.
Setup
Install dependencies. Run the following commands:
npm install @datadog/serverless-compat
npm install dd-trace
To use automatic instrumentation, you must use dd-trace
v5.25+.
Datadog recommends pinning the package versions and regularly upgrading to the latest versions of both @datadog/serverless-compat
and dd-trace
to ensure you have access to enhancements and bug fixes.
Start the Datadog serverless compatibility layer and initialize the Node.js tracer. Add the following lines to your main application entry point file (for example, app.js
):
require('@datadog/serverless-compat').start();
// This line must come before importing any instrumented module.
const tracer = require('dd-trace').init()
(Optional) Enable runtime metrics. See Node.js Runtime Metrics.
(Optional) Enable custom metrics. See Metric Submission: DogStatsD.
Install dependencies. Run the following commands:
pip install datadog-serverless-compat
pip install ddtrace
To use automatic instrumentation, you must use dd-trace
v2.19+.
Datadog recommends using the latest versions of both datadog-serverless-compat
and ddtrace
to ensure you have access to enhancements and bug fixes.
Initialize the Datadog Python tracer and serverless compatibility layer. Add the following lines to your main application entry point file:
from datadog_serverless_compat import start
import ddtrace.auto
start()
(Optional) Enable runtime metrics. See Python Runtime Metrics.
(Optional) Enable custom metrics. See Metric Submission: DogStatsD.
Install dependencies. Download the Datadog JARs and deploy them with your function:
wget -O dd-java-agent.jar 'https://dtdg.co/latest-java-tracer'
wget -O dd-serverless-compat-java-agent.jar 'https://dtdg.co/latest-serverless-compat-java-agent'
See Datadog’s Maven Repository for any specific version of the Datadog Serverless Compatibility Layer.
To use automatic instrumentation, you must use dd-java-agent
v1.48.0+.
Datadog recommends regularly upgrading to the latest versions of both dd-serverless-compat-java-agent
and dd-java-agent
to ensure you have access to enhancements and bug fixes.
Start the Datadog serverless compatibility layer and initialize the Java tracer. Add the following -javaagent
arguments to the JVM options.:
-javaagent:/path/to/dd-serverless-compat-java-agent.jar -javaagent:/path/to/dd-java-agent.jar
Note: the environment variable to set JVM options depends on the hosting plan (example, Consumption, Elastic Premium, Dedicated). See Azure Functions Java developer guide for more details on the appropriate environment variable for your hosting plan.
(Optional) Enable runtime metrics. See Java Runtime Metrics.
(Optional) Enable custom metrics. See Metric Submission: DogStatsD.
Deploy your function.
Configure Datadog intake. Add the following environment variables to your function’s application settings:
Configure Unified Service Tagging. You can collect metrics from your Azure Functions by installing the Datadog Azure integration. To correlate these metrics with your traces, first set the env
, service
, and version
tags on your resource in Azure. Then, configure the following environment variables. You can add custom tags as DD_TAGS
.
What’s next?
Enable/disable trace metrics
Trace metrics are enabled by default. To configure trace metrics, use the following environment variable:
DD_TRACE_STATS_COMPUTATION_ENABLED
- Enables (
true
) or disables (false
) trace metrics. Defaults to true
.Values: true
, false
DD_TRACE_STATS_COMPUTATION_ENABLED
- Enables (
true
) or disables (false
) trace metrics. Defaults to true
.Values: true
, false
DD_TRACE_TRACER_METRICS_ENABLED
- Enables (
true
) or disables (false
) trace metrics. Defaults to true
.Values: true
, false
Troubleshooting
Enable debug logs
You can collect debug logs for troubleshooting. To configure debug logs, use the following environment variables:
DD_TRACE_DEBUG
- Enables (
true
) or disables (false
) debug logging for the Datadog Tracing Library. Defaults to false
.Values: true
, false
DD_LOG_LEVEL
- Sets logging level for the Datadog Serverless Compatibility Layer. Defaults to
info
.Values: trace
, debug
, info
, warn
, error
, critical
, off
Linux Consumption plans and GitHub Actions
To use a GitHub Action to deploy to a Linux Consumption function, you must configure your workflow to use an Azure Service Principal for RBAC. See Using Azure Service Principal for RBAC as Deployment Credential.