diff --git a/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensions.cs b/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensions.cs index e3590551b8..dd073c9ee6 100644 --- a/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensions.cs +++ b/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensions.cs @@ -180,6 +180,7 @@ private static IOpenTelemetryBuilder ConfigureTracing(this IOpenTelemetryBuilder ReadOnlySpan sources = [ OpenTelemetryConstants.ActivitySourceNames.ServiceBusProcessor, + OpenTelemetryConstants.ActivitySourceNames.ServiceBusSessionProcessor, OpenTelemetryConstants.ActivitySourceNames.EventHubsProcessor, OpenTelemetryConstants.ActivitySourceNames.Mcp, OpenTelemetryConstants.ActivitySourceNames.WebJobsExtensions, diff --git a/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConstants.cs b/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConstants.cs index af87b1d144..473b96002c 100644 --- a/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConstants.cs +++ b/src/WebJobs.Script/Diagnostics/OpenTelemetry/OpenTelemetryConstants.cs @@ -19,6 +19,7 @@ internal static class ActivitySourceNames internal const string WebJobs = "Microsoft.Azure.WebJobs"; internal const string Host = "Microsoft.Azure.Functions.Host"; internal const string ServiceBusProcessor = "Azure.Messaging.ServiceBus.ServiceBusProcessor"; + internal const string ServiceBusSessionProcessor = "Azure.Messaging.ServiceBus.ServiceBusSessionProcessor"; internal const string EventHubsProcessor = "Azure.Messaging.EventHubs.EventProcessor"; internal const string Mcp = "Azure.Functions.Extensions.Mcp"; internal const string WebJobsExtensions = "Microsoft.Azure.WebJobs.Extensions.*"; diff --git a/test/WebJobs.Script.Tests/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensionsTests.cs b/test/WebJobs.Script.Tests/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensionsTests.cs index dcb7340a03..6b84693c3a 100644 --- a/test/WebJobs.Script.Tests/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensionsTests.cs +++ b/test/WebJobs.Script.Tests/Diagnostics/OpenTelemetry/OpenTelemetryConfigurationExtensionsTests.cs @@ -266,6 +266,28 @@ public void OpenTelemetryBuilder_InPlaceholderMode() Assert.True(openTelemetryLoggerOptions.Value.IncludeFormattedMessage); } + [Fact] + public void OpenTelemetryBuilder_ListensToServiceBusSessionProcessor() + { + using IHost host = new HostBuilder() + .ConfigureLogging((context, builder) => + { + builder.ConfigureOpenTelemetry(context, TelemetryMode.Placeholder); + }) + .ConfigureServices(s => + { + s.AddSingleton(SystemEnvironment.Instance); + }) + .Build(); + + host.Services.GetRequiredService(); + + using var source = new ActivitySource(OpenTelemetryConstants.ActivitySourceNames.ServiceBusSessionProcessor); + using var activity = source.StartActivity("ServiceBusSessionProcessor.ProcessSessionMessage"); + + Assert.NotNull(activity); + } + [Fact] public void OpenTelemetryBuilder_NotInPlaceholderMode() {