diff --git a/CHANGELOG.md b/CHANGELOG.md index e839453aa0..dc21809ce6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,9 @@ This component adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.h ### Changed +- Kafka and RabbitMQ 6 tags `otel.status_code` and `otel.status_description` are + replaced by native fields `Status` and `StatusDescription`. + #### Dependency updates ### Deprecated diff --git a/Directory.Packages.props b/Directory.Packages.props index c70d9bd692..df8a5179b9 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,10 +6,10 @@ - - - - + + + + diff --git a/build/Extensions/DepsJsonExtensions.cs b/build/Extensions/DepsJsonExtensions.cs index b610d3c173..6454843dbc 100644 --- a/build/Extensions/DepsJsonExtensions.cs +++ b/build/Extensions/DepsJsonExtensions.cs @@ -122,7 +122,7 @@ public static void RollFrameworkForward(this JsonObject depsJson, string runtime public static void RemoveDuplicatedLibraries(this JsonObject depsJson, ReadOnlyCollection architectureStores) { - var duplicatedLibraries = new List<(string Name, string Version)> { (Name: "Microsoft.Extensions.Configuration.Binder", Version: "8.0.0") }; + var duplicatedLibraries = new List<(string Name, string Version)>(0); foreach (var duplicatedLibrary in duplicatedLibraries) { diff --git a/docs/manual-instrumentation.md b/docs/manual-instrumentation.md index 0596d24409..7222b50e57 100644 --- a/docs/manual-instrumentation.md +++ b/docs/manual-instrumentation.md @@ -12,7 +12,7 @@ To create your custom traces manually, follow these steps: 1. Add the `System.Diagnostics.DiagnosticSource` dependency to your project: ```xml - + ``` 2. Create an `ActivitySource` instance: @@ -48,7 +48,7 @@ To create your custom metrics manually, follow these steps: 1. Add the `System.Diagnostics.DiagnosticSource` dependency to your project: ```xml - + ``` 2. Create a `Meter` instance: diff --git a/next-gen/docs/getting-started-dotnet-monitor-logs/getting-started-dotnet-monitor-logs.csproj b/next-gen/docs/getting-started-dotnet-monitor-logs/getting-started-dotnet-monitor-logs.csproj index 849714fe99..519111f3da 100644 --- a/next-gen/docs/getting-started-dotnet-monitor-logs/getting-started-dotnet-monitor-logs.csproj +++ b/next-gen/docs/getting-started-dotnet-monitor-logs/getting-started-dotnet-monitor-logs.csproj @@ -10,7 +10,7 @@ - + diff --git a/src/Directory.Packages.props b/src/Directory.Packages.props index 82319e1c19..a0a1a6acac 100644 --- a/src/Directory.Packages.props +++ b/src/Directory.Packages.props @@ -13,9 +13,9 @@ - - - + + + @@ -25,7 +25,7 @@ - + @@ -67,27 +67,27 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/OpenTelemetry.AutoInstrumentation.AdditionalDeps/Directory.Packages.props b/src/OpenTelemetry.AutoInstrumentation.AdditionalDeps/Directory.Packages.props index 52abb91dab..01b1d041b1 100644 --- a/src/OpenTelemetry.AutoInstrumentation.AdditionalDeps/Directory.Packages.props +++ b/src/OpenTelemetry.AutoInstrumentation.AdditionalDeps/Directory.Packages.props @@ -3,8 +3,8 @@ true - - - + + + diff --git a/src/OpenTelemetry.AutoInstrumentation.Native/netfx_assembly_redirection.h b/src/OpenTelemetry.AutoInstrumentation.Native/netfx_assembly_redirection.h index 57ef5a5d34..a492eb9540 100644 --- a/src/OpenTelemetry.AutoInstrumentation.Native/netfx_assembly_redirection.h +++ b/src/OpenTelemetry.AutoInstrumentation.Native/netfx_assembly_redirection.h @@ -21,19 +21,19 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"Google.Protobuf", {3, 28, 3, 0} }, { L"Grpc.Core", {2, 0, 0, 0} }, { L"Grpc.Core.Api", {2, 0, 0, 0} }, - { L"Microsoft.Bcl.AsyncInterfaces", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Configuration", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Configuration.Abstractions", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Configuration.Binder", {8, 0, 0, 2} }, - { L"Microsoft.Extensions.DependencyInjection", {8, 0, 0, 1} }, - { L"Microsoft.Extensions.DependencyInjection.Abstractions", {8, 0, 0, 2} }, - { L"Microsoft.Extensions.Diagnostics.Abstractions", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Logging", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Logging.Abstractions", {8, 0, 0, 1} }, - { L"Microsoft.Extensions.Logging.Configuration", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Options", {8, 0, 0, 2} }, - { L"Microsoft.Extensions.Options.ConfigurationExtensions", {8, 0, 0, 0} }, - { L"Microsoft.Extensions.Primitives", {8, 0, 0, 0} }, + { L"Microsoft.Bcl.AsyncInterfaces", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Configuration", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Configuration.Abstractions", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Configuration.Binder", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.DependencyInjection", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.DependencyInjection.Abstractions", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Diagnostics.Abstractions", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Logging", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Logging.Abstractions", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Logging.Configuration", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Options", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Options.ConfigurationExtensions", {9, 0, 0, 0} }, + { L"Microsoft.Extensions.Primitives", {9, 0, 0, 0} }, { L"Microsoft.Win32.Primitives", {4, 0, 3, 0} }, { L"MongoDB.Driver.Core.Extensions.DiagnosticSources", {1, 0, 0, 0} }, { L"OpenTelemetry", {1, 0, 0, 0} }, @@ -62,7 +62,7 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"OpenTelemetry.Shims.OpenTracing", {1, 0, 0, 0} }, { L"OpenTracing", {0, 12, 1, 0} }, { L"System.AppContext", {4, 1, 2, 0} }, - { L"System.Buffers", {4, 0, 3, 0} }, + { L"System.Buffers", {4, 0, 4, 0} }, { L"System.Collections", {4, 0, 11, 0} }, { L"System.Collections.Concurrent", {4, 0, 11, 0} }, { L"System.Collections.NonGeneric", {4, 0, 3, 0} }, @@ -75,7 +75,7 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"System.Data.Common", {4, 2, 0, 0} }, { L"System.Diagnostics.Contracts", {4, 0, 1, 0} }, { L"System.Diagnostics.Debug", {4, 0, 11, 0} }, - { L"System.Diagnostics.DiagnosticSource", {8, 0, 0, 1} }, + { L"System.Diagnostics.DiagnosticSource", {9, 0, 0, 0} }, { L"System.Diagnostics.FileVersionInfo", {4, 0, 2, 0} }, { L"System.Diagnostics.Process", {4, 1, 2, 0} }, { L"System.Diagnostics.StackTrace", {4, 1, 0, 0} }, @@ -103,7 +103,7 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"System.Linq.Expressions", {4, 1, 2, 0} }, { L"System.Linq.Parallel", {4, 0, 1, 0} }, { L"System.Linq.Queryable", {4, 0, 1, 0} }, - { L"System.Memory", {4, 0, 1, 2} }, + { L"System.Memory", {4, 0, 2, 0} }, { L"System.Net.Http", {4, 2, 0, 0} }, { L"System.Net.NameResolution", {4, 0, 2, 0} }, { L"System.Net.NetworkInformation", {4, 1, 2, 0} }, @@ -115,7 +115,7 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"System.Net.WebHeaderCollection", {4, 0, 1, 0} }, { L"System.Net.WebSockets", {4, 0, 2, 0} }, { L"System.Net.WebSockets.Client", {4, 0, 2, 0} }, - { L"System.Numerics.Vectors", {4, 1, 4, 0} }, + { L"System.Numerics.Vectors", {4, 1, 5, 0} }, { L"System.ObjectModel", {4, 0, 11, 0} }, { L"System.Reflection", {4, 1, 2, 0} }, { L"System.Reflection.Extensions", {4, 0, 1, 0} }, @@ -124,7 +124,7 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"System.Resources.ResourceManager", {4, 0, 1, 0} }, { L"System.Resources.Writer", {4, 0, 2, 0} }, { L"System.Runtime", {4, 1, 2, 0} }, - { L"System.Runtime.CompilerServices.Unsafe", {6, 0, 0, 0} }, + { L"System.Runtime.CompilerServices.Unsafe", {6, 0, 1, 0} }, { L"System.Runtime.CompilerServices.VisualC", {4, 0, 2, 0} }, { L"System.Runtime.Extensions", {4, 1, 2, 0} }, { L"System.Runtime.Handles", {4, 0, 1, 0} }, @@ -145,13 +145,13 @@ void CorProfiler::InitNetFxAssemblyRedirectsMap() { L"System.Security.SecureString", {4, 1, 0, 0} }, { L"System.Text.Encoding", {4, 0, 11, 0} }, { L"System.Text.Encoding.Extensions", {4, 0, 11, 0} }, - { L"System.Text.Encodings.Web", {8, 0, 0, 0} }, - { L"System.Text.Json", {8, 0, 0, 5} }, + { L"System.Text.Encodings.Web", {9, 0, 0, 0} }, + { L"System.Text.Json", {9, 0, 0, 0} }, { L"System.Text.RegularExpressions", {4, 1, 1, 0} }, { L"System.Threading", {4, 0, 11, 0} }, { L"System.Threading.Overlapped", {4, 1, 0, 0} }, { L"System.Threading.Tasks", {4, 0, 11, 0} }, - { L"System.Threading.Tasks.Extensions", {4, 2, 0, 1} }, + { L"System.Threading.Tasks.Extensions", {4, 2, 1, 0} }, { L"System.Threading.Tasks.Parallel", {4, 0, 1, 0} }, { L"System.Threading.Thread", {4, 0, 2, 0} }, { L"System.Threading.ThreadPool", {4, 0, 12, 0} }, diff --git a/src/OpenTelemetry.AutoInstrumentation/Generated/net8.0/SourceGenerators/SourceGenerators.InstrumentationDefinitionsGenerator/InstrumentationDefinitions.g.cs b/src/OpenTelemetry.AutoInstrumentation/Generated/net8.0/SourceGenerators/SourceGenerators.InstrumentationDefinitionsGenerator/InstrumentationDefinitions.g.cs index a412b42832..ec8e1dd441 100644 --- a/src/OpenTelemetry.AutoInstrumentation/Generated/net8.0/SourceGenerators/SourceGenerators.InstrumentationDefinitionsGenerator/InstrumentationDefinitions.g.cs +++ b/src/OpenTelemetry.AutoInstrumentation/Generated/net8.0/SourceGenerators/SourceGenerators.InstrumentationDefinitionsGenerator/InstrumentationDefinitions.g.cs @@ -79,7 +79,7 @@ private static NativeCallTargetDefinition[] GetDefinitionsArray() // ILogger if (logSettings.EnabledInstrumentations.Contains(LogInstrumentation.ILogger)) { - nativeCallTargetDefinitions.Add(new("Microsoft.Extensions.Logging", "Microsoft.Extensions.Logging.LoggingBuilder", ".ctor", new[] {"System.Void", "Microsoft.Extensions.DependencyInjection.IServiceCollection"}, 8, 0, 0, 9, 65535, 65535, AssemblyFullName, "OpenTelemetry.AutoInstrumentation.Instrumentations.Logger.LoggingBuilderIntegration")); + nativeCallTargetDefinitions.Add(new("Microsoft.Extensions.Logging", "Microsoft.Extensions.Logging.LoggingBuilder", ".ctor", new[] {"System.Void", "Microsoft.Extensions.DependencyInjection.IServiceCollection"}, 9, 0, 0, 9, 65535, 65535, AssemblyFullName, "OpenTelemetry.AutoInstrumentation.Instrumentations.Logger.LoggingBuilderIntegration")); } } diff --git a/src/OpenTelemetry.AutoInstrumentation/Instrumentations/Logger/LoggingBuilderIntegration.cs b/src/OpenTelemetry.AutoInstrumentation/Instrumentations/Logger/LoggingBuilderIntegration.cs index add3027b58..cc34e0fde4 100644 --- a/src/OpenTelemetry.AutoInstrumentation/Instrumentations/Logger/LoggingBuilderIntegration.cs +++ b/src/OpenTelemetry.AutoInstrumentation/Instrumentations/Logger/LoggingBuilderIntegration.cs @@ -15,7 +15,7 @@ namespace OpenTelemetry.AutoInstrumentation.Instrumentations.Logger; methodName: ".ctor", returnTypeName: ClrNames.Void, parameterTypeNames: new[] { "Microsoft.Extensions.DependencyInjection.IServiceCollection" }, - minimumVersion: "8.0.0", + minimumVersion: "9.0.0", maximumVersion: "9.*.*", integrationName: "ILogger", type: InstrumentationType.Log)] diff --git a/src/OpenTelemetry.AutoInstrumentation/Util/ActivityHelper.cs b/src/OpenTelemetry.AutoInstrumentation/Util/ActivityHelper.cs index 2baacdd610..57f4745a55 100644 --- a/src/OpenTelemetry.AutoInstrumentation/Util/ActivityHelper.cs +++ b/src/OpenTelemetry.AutoInstrumentation/Util/ActivityHelper.cs @@ -4,7 +4,6 @@ using System.Diagnostics; using OpenTelemetry.AutoInstrumentation.Logging; using OpenTelemetry.AutoInstrumentation.Tagging; -using OpenTelemetry.Trace; namespace OpenTelemetry.AutoInstrumentation.Util; @@ -30,8 +29,8 @@ public static void SetException(this Activity? activity, Exception? exception) return; } - activity.SetStatus(Status.Error.WithDescription(exception.Message)); - activity.RecordException(exception); + activity.SetStatus(ActivityStatusCode.Error, exception.Message); + activity.AddException(exception); } public static Activity? StartActivityWithTags(this ActivitySource? activitySource, string operationName, ActivityKind kind, ITags tags) diff --git a/test/Directory.Packages.props b/test/Directory.Packages.props index 352b46f662..2e3c6dadf9 100644 --- a/test/Directory.Packages.props +++ b/test/Directory.Packages.props @@ -21,11 +21,11 @@ - - - + + + - + @@ -47,7 +47,7 @@ - + diff --git a/test/OpenTelemetry.AutoInstrumentation.Tests/Util/ActivityHelperTests.cs b/test/OpenTelemetry.AutoInstrumentation.Tests/Util/ActivityHelperTests.cs index 3a91c8ec11..9ae0e4e267 100644 --- a/test/OpenTelemetry.AutoInstrumentation.Tests/Util/ActivityHelperTests.cs +++ b/test/OpenTelemetry.AutoInstrumentation.Tests/Util/ActivityHelperTests.cs @@ -47,8 +47,8 @@ public void SetException_SetsExceptionDetails() using (new AssertionScope()) { - activity.Tags.First(x => x.Key == "otel.status_code").Value.Should().Be("ERROR"); - activity.Tags.First(x => x.Key == "otel.status_description").Value.Should().Be(exceptionMessage); + activity.Status.Should().Be(ActivityStatusCode.Error); + activity.StatusDescription.Should().Be(exceptionMessage); activity.Events.Should().HaveCount(1); } } diff --git a/test/test-applications/integrations/TestApplication.EntityFrameworkCore.Pomelo.MySql/TestApplication.EntityFrameworkCore.Pomelo.MySql.csproj b/test/test-applications/integrations/TestApplication.EntityFrameworkCore.Pomelo.MySql/TestApplication.EntityFrameworkCore.Pomelo.MySql.csproj index bf4390a46f..77e1d78f54 100644 --- a/test/test-applications/integrations/TestApplication.EntityFrameworkCore.Pomelo.MySql/TestApplication.EntityFrameworkCore.Pomelo.MySql.csproj +++ b/test/test-applications/integrations/TestApplication.EntityFrameworkCore.Pomelo.MySql/TestApplication.EntityFrameworkCore.Pomelo.MySql.csproj @@ -9,11 +9,11 @@ - - + + diff --git a/test/test-applications/integrations/TestApplication.GrpcNetClient/TestApplication.GrpcNetClient.csproj b/test/test-applications/integrations/TestApplication.GrpcNetClient/TestApplication.GrpcNetClient.csproj index ab8ce561fd..3d4c62db34 100644 --- a/test/test-applications/integrations/TestApplication.GrpcNetClient/TestApplication.GrpcNetClient.csproj +++ b/test/test-applications/integrations/TestApplication.GrpcNetClient/TestApplication.GrpcNetClient.csproj @@ -5,9 +5,9 @@ - - + diff --git a/test/test-applications/integrations/TestApplication.MongoDB/TestApplication.MongoDB.csproj b/test/test-applications/integrations/TestApplication.MongoDB/TestApplication.MongoDB.csproj index cbfa5c4fe3..dcae898ead 100644 --- a/test/test-applications/integrations/TestApplication.MongoDB/TestApplication.MongoDB.csproj +++ b/test/test-applications/integrations/TestApplication.MongoDB/TestApplication.MongoDB.csproj @@ -12,9 +12,9 @@ - - + diff --git a/test/test-applications/integrations/TestApplication.MySqlConnector/TestApplication.MySqlConnector.csproj b/test/test-applications/integrations/TestApplication.MySqlConnector/TestApplication.MySqlConnector.csproj index ae035d8e04..768f93856e 100644 --- a/test/test-applications/integrations/TestApplication.MySqlConnector/TestApplication.MySqlConnector.csproj +++ b/test/test-applications/integrations/TestApplication.MySqlConnector/TestApplication.MySqlConnector.csproj @@ -7,9 +7,9 @@ - - + diff --git a/test/test-applications/integrations/TestApplication.StackExchangeRedis/TestApplication.StackExchangeRedis.csproj b/test/test-applications/integrations/TestApplication.StackExchangeRedis/TestApplication.StackExchangeRedis.csproj index bd1e0158f0..198b49479e 100644 --- a/test/test-applications/integrations/TestApplication.StackExchangeRedis/TestApplication.StackExchangeRedis.csproj +++ b/test/test-applications/integrations/TestApplication.StackExchangeRedis/TestApplication.StackExchangeRedis.csproj @@ -2,9 +2,9 @@ - - +