Before you instrument Azure Functions, make sure your system meets the following requirements.
Basic requirements
- Azure Functions hosted on consumption plan or dedicated plan.
Important
Note: in-process functions hosted on Linux with a consumption plan are not supported.
Your Azure function app must use version 4 of the Azure Functions runtime or greater. Look for the following in your function app's .csproj file:
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
.You must have the required permission to access kudu service.
A New Relic account with either an admin role or an Infrastructure manager role.
A .
.NET agent version 10.30 or above.
Supported runtimes
Based on your hosting environment, the following Azure Function runtime stacks are supported.
- .NET stack:
- .NET 6 - 9, Isolated model only
- .NET stack:
- .NET 4.8 (.NET agent version 10.37.0 and later), Isolated model only
- .NET 6 - 9, Isolated model
- .NET 6 and 8, In-process model (.NET agent version 10.38.0 and later)
- .NET stack:
- .NET 6 - 9, Isolated model only
Supported triggers and Distributed Tracing
You can instrument all trigger types, however Distributed Tracing is supported only in the following cases:
- .NET Stack:
- Isolated model:
- HttpTrigger
- Distributed trace headers will be read from the inbound HTTP request.
- HttpTrigger
- In-process model (.NET agent version 10.38.0 and later):
- HttpTrigger
- Distributed tracing is supported when the function method has a parameter of type
Microsoft.AspNetCore.Http.DefaultHttpRequest
,Microsoft.AspNetCore.Http.HttpRequest
orSystem.Net.Http.HttpRequest
.
- Distributed tracing is supported when the function method has a parameter of type
- ServiceBusTrigger:
- Incoming distributed trace headers will be read if the function method has a parameter of type
Azure.Messaging.ServiceBus.ServiceBusReceivedMessage
. Trace headers are expected to be in theApplicationProperties
collection of that object. - Distributed trace headers will be inserted into the
ApplicationProperties
collection of outbound Service Bus messages if the function method has a return type ofAzure.Messaging.ServiceBus.ServiceBusMessage
orTask<Azure.Messaging.ServiceBus.ServiceBusMessage>
.
- Incoming distributed trace headers will be read if the function method has a parameter of type
- HttpTrigger
- Isolated model: