Skip to content

Commit 1cc8df7

Browse files
authored
feat: switch dotnet-isolated project template telemetry to OpenTelemetry (#1779)
1 parent f4fbf43 commit 1cc8df7

8 files changed

Lines changed: 32 additions & 54 deletions

File tree

Functions.Templates/ProjectTemplate_v4.x/CSharp-Isolated/.template.config/template.json

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -146,23 +146,6 @@
146146
}
147147
]
148148
}
149-
},
150-
"FunctionsAppInsightsPackageVersion": {
151-
"type": "generated",
152-
"generator": "switch",
153-
"replaces": "FunctionsAppInsightsPackageVersionValue",
154-
"parameters": {
155-
"datatype": "string",
156-
"cases": [
157-
{
158-
"condition": "FrameworkShouldUseV1Dependencies",
159-
"value": "1.4.0"
160-
},
161-
{
162-
"value": "2.50.0"
163-
}
164-
]
165-
}
166149
}
167150
},
168151
"sources": [

Functions.Templates/ProjectTemplate_v4.x/CSharp-Isolated/Company.FunctionApp.csproj

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@
1515
<!--#if (NetCore)-->
1616
<FrameworkReference Include="Microsoft.AspNetCore.App" />
1717
<!--#endif -->
18-
<PackageReference Include="Microsoft.ApplicationInsights.WorkerService" Version="2.23.0" />
1918
<PackageReference Include="Microsoft.Azure.Functions.Worker" Version="FunctionsWorkerPackageVersionValue" />
20-
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="FunctionsAppInsightsPackageVersionValue" />
19+
<PackageReference Include="Microsoft.Azure.Functions.Worker.OpenTelemetry" Version="1.2.0" />
20+
<PackageReference Include="OpenTelemetry.Extensions.Hosting" Version="1.15.3" />
21+
<PackageReference Include="Azure.Monitor.OpenTelemetry.Exporter" Version="1.7.0" />
2122
<!--#if (NetCore)-->
2223
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="FunctionsAspNetCorePackageVersionValue" />
2324
<!--#endif -->

Functions.Templates/ProjectTemplate_v4.x/CSharp-Isolated/Program.cs

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1+
using Azure.Monitor.OpenTelemetry.Exporter;
12
using Microsoft.Azure.Functions.Worker;
23
#if (NetCore && !FrameworkShouldUseV1Dependencies)
34
using Microsoft.Azure.Functions.Worker.Builder;
45
#endif
6+
using Microsoft.Azure.Functions.Worker.OpenTelemetry;
57
using Microsoft.Extensions.DependencyInjection;
68
using Microsoft.Extensions.Hosting;
9+
using OpenTelemetry;
710

811
#if NetFramework
912
namespace Company.FunctionApp
@@ -17,8 +20,9 @@ static void Main(string[] args)
1720
var host = new HostBuilder()
1821
.ConfigureFunctionsWorkerDefaults()
1922
.ConfigureServices(services => {
20-
services.AddApplicationInsightsTelemetryWorkerService();
21-
services.ConfigureFunctionsApplicationInsights();
23+
services.AddOpenTelemetry()
24+
.UseFunctionsWorkerDefaults()
25+
.UseAzureMonitorExporter();
2226
})
2327
.Build();
2428

@@ -30,8 +34,9 @@ static void Main(string[] args)
3034
var host = new HostBuilder()
3135
.ConfigureFunctionsWebApplication()
3236
.ConfigureServices(services => {
33-
services.AddApplicationInsightsTelemetryWorkerService();
34-
services.ConfigureFunctionsApplicationInsights();
37+
services.AddOpenTelemetry()
38+
.UseFunctionsWorkerDefaults()
39+
.UseAzureMonitorExporter();
3540
})
3641
.Build();
3742

@@ -41,9 +46,9 @@ static void Main(string[] args)
4146

4247
builder.ConfigureFunctionsWebApplication();
4348

44-
builder.Services
45-
.AddApplicationInsightsTelemetryWorkerService()
46-
.ConfigureFunctionsApplicationInsights();
49+
builder.Services.AddOpenTelemetry()
50+
.UseFunctionsWorkerDefaults()
51+
.UseAzureMonitorExporter();
4752

4853
builder.Build().Run();
49-
#endif
54+
#endif

Functions.Templates/ProjectTemplate_v4.x/CSharp-Isolated/host.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"version": "2.0",
3+
"telemetryMode": "OpenTelemetry",
34
"logging": {
45
"applicationInsights": {
56
"samplingSettings": {

Functions.Templates/ProjectTemplate_v4.x/FSharp-Isolated/.template.config/template.json

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -116,23 +116,6 @@
116116
}
117117
]
118118
}
119-
},
120-
"FunctionsAppInsightsPackageVersion": {
121-
"type": "generated",
122-
"generator": "switch",
123-
"replaces": "FunctionsAppInsightsPackageVersionValue",
124-
"parameters": {
125-
"datatype": "string",
126-
"cases": [
127-
{
128-
"condition": "FrameworkShouldUseV1Dependencies",
129-
"value": "1.4.0"
130-
},
131-
{
132-
"value": "2.50.0"
133-
}
134-
]
135-
}
136119
}
137120
},
138121
"sources": [

Functions.Templates/ProjectTemplate_v4.x/FSharp-Isolated/Company.FunctionApp.fsproj

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@
1515
<!--#if (NetCore)-->
1616
<FrameworkReference Include="Microsoft.AspNetCore.App" />
1717
<!--#endif -->
18-
<PackageReference Include="Microsoft.ApplicationInsights.WorkerService" Version="2.23.0" />
1918
<PackageReference Include="Microsoft.Azure.Functions.Worker" Version="FunctionsWorkerPackageVersionValue" />
20-
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="FunctionsAppInsightsPackageVersionValue" />
19+
<PackageReference Include="Microsoft.Azure.Functions.Worker.OpenTelemetry" Version="1.2.0" />
20+
<PackageReference Include="OpenTelemetry.Extensions.Hosting" Version="1.15.3" />
21+
<PackageReference Include="Azure.Monitor.OpenTelemetry.Exporter" Version="1.7.0" />
2122
<!--#if (NetCore)-->
2223
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="FunctionsAspNetCorePackageVersionValue" />
2324
<!--#endif -->

Functions.Templates/ProjectTemplate_v4.x/FSharp-Isolated/Program.fs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1+
open Azure.Monitor.OpenTelemetry.Exporter
12
open Microsoft.Azure.Functions.Worker
23
#if (!FrameworkShouldUseV1Dependencies)
34
open Microsoft.Azure.Functions.Worker.Builder
45
#endif
6+
open Microsoft.Azure.Functions.Worker.OpenTelemetry
57
open Microsoft.Extensions.DependencyInjection
68
open Microsoft.Extensions.Hosting
9+
open global.OpenTelemetry
710

811
#if (FrameworkShouldUseV1Dependencies)
912
[<EntryPoint>]
@@ -12,10 +15,10 @@ let main args =
1215
HostBuilder()
1316
.ConfigureFunctionsWebApplication()
1417
.ConfigureServices(fun services ->
15-
services.AddApplicationInsightsTelemetryWorkerService()
16-
|> ignore
17-
18-
services.ConfigureFunctionsApplicationInsights() |> ignore)
18+
services.AddOpenTelemetry()
19+
.UseFunctionsWorkerDefaults()
20+
.UseAzureMonitorExporter()
21+
|> ignore)
1922
.Build()
2023

2124
// If using the Cosmos DB, Blob or Tables extension, you need to configure the extensions manually using the extension methods below.
@@ -35,9 +38,9 @@ let main args =
3538

3639
builder.ConfigureFunctionsWebApplication() |> ignore
3740

38-
builder.Services
39-
.AddApplicationInsightsTelemetryWorkerService()
40-
.ConfigureFunctionsApplicationInsights()
41+
builder.Services.AddOpenTelemetry()
42+
.UseFunctionsWorkerDefaults()
43+
.UseAzureMonitorExporter()
4144
|> ignore
4245

4346
// If using the Cosmos DB, Blob or Tables extension, you need to configure the extensions manually using the extension methods below.
@@ -48,4 +51,4 @@ let main args =
4851

4952
builder.Build().Run()
5053
0
51-
#endif
54+
#endif

Functions.Templates/ProjectTemplate_v4.x/FSharp-Isolated/host.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"version": "2.0",
3+
"telemetryMode": "OpenTelemetry",
34
"logging": {
45
"applicationInsights": {
56
"samplingSettings": {

0 commit comments

Comments
 (0)