From 9b57d3992cff0a6bc476d707068d827bd7381076 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Kie=C5=82kowicz?= Date: Tue, 20 Jun 2023 10:03:42 +0200 Subject: [PATCH] Activities - update handling status MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Piotr Kiełkowicz --- src/MySqlConnector/MySqlConnection.cs | 2 -- src/MySqlConnector/MySqlDataReader.cs | 5 ----- src/MySqlConnector/MySqlTransaction.cs | 2 -- .../Utilities/ActivitySourceHelper.cs | 9 --------- tests/IntegrationTests/ActivityTests.cs | 14 ++------------ 5 files changed, 2 insertions(+), 30 deletions(-) diff --git a/src/MySqlConnector/MySqlConnection.cs b/src/MySqlConnector/MySqlConnection.cs index 0d59b2270..c65a5be9f 100644 --- a/src/MySqlConnector/MySqlConnection.cs +++ b/src/MySqlConnector/MySqlConnection.cs @@ -447,8 +447,6 @@ internal async Task OpenAsync(IOBehavior? ioBehavior, CancellationToken cancella if (m_connectionSettings.AutoEnlist && System.Transactions.Transaction.Current is not null) EnlistTransaction(System.Transactions.Transaction.Current); - - activity?.SetSuccess(); } catch (Exception ex) when (activity is { IsAllDataRequested: true }) { diff --git a/src/MySqlConnector/MySqlDataReader.cs b/src/MySqlConnector/MySqlDataReader.cs index b4091b832..1ec0e8106 100644 --- a/src/MySqlConnector/MySqlDataReader.cs +++ b/src/MySqlConnector/MySqlDataReader.cs @@ -468,7 +468,6 @@ internal async Task InitAsync(CommandListPosition commandListPosition, ICommandP throw new InvalidOperationException("Expected ColumnDefinitions to be null"); m_closed = false; m_hasWarnings = false; - m_initializationFailed = false; RealRecordsAffected = null; // initialize for new command @@ -503,7 +502,6 @@ internal async Task InitAsync(CommandListPosition commandListPosition, ICommandP activity.SetException(ex); activity.Stop(); } - m_initializationFailed = true; Dispose(); throw; } @@ -638,8 +636,6 @@ internal async Task DisposeAsync(IOBehavior ioBehavior, CancellationToken cancel Command.CancellableCommand.SetTimeout(Constants.InfiniteTimeout); connection.FinishQuerying(m_hasWarnings); - if (!m_initializationFailed) - Activity?.SetSuccess(); Activity?.Stop(); Activity = null; @@ -709,6 +705,5 @@ private ResultSet GetResultSet() private bool m_closed; private bool m_hasWarnings; private bool m_hasMoreResults; - private bool m_initializationFailed; private DataTable? m_schemaTable; } diff --git a/src/MySqlConnector/MySqlTransaction.cs b/src/MySqlConnector/MySqlTransaction.cs index ded7bfa59..fffd938c6 100644 --- a/src/MySqlConnector/MySqlTransaction.cs +++ b/src/MySqlConnector/MySqlTransaction.cs @@ -36,7 +36,6 @@ private async Task CommitAsync(IOBehavior ioBehavior, CancellationToken cancella await cmd.ExecuteNonQueryAsync(ioBehavior, cancellationToken).ConfigureAwait(false); Connection!.CurrentTransaction = null; Connection = null; - activity?.SetSuccess(); } catch (Exception ex) when (activity is { IsAllDataRequested: true }) { @@ -260,7 +259,6 @@ private async Task DoRollback(IOBehavior ioBehavior, CancellationToken cancellat { using var cmd = new MySqlCommand("rollback", Connection, this) { NoActivity = true }; await cmd.ExecuteNonQueryAsync(ioBehavior, cancellationToken).ConfigureAwait(false); - activity?.SetSuccess(); } catch (Exception ex) when (activity is { IsAllDataRequested: true }) { diff --git a/src/MySqlConnector/Utilities/ActivitySourceHelper.cs b/src/MySqlConnector/Utilities/ActivitySourceHelper.cs index 55ba7a24d..a96dbe78e 100644 --- a/src/MySqlConnector/Utilities/ActivitySourceHelper.cs +++ b/src/MySqlConnector/Utilities/ActivitySourceHelper.cs @@ -16,7 +16,6 @@ internal static class ActivitySourceHelper public const string NetPeerNameTagName = "net.peer.name"; public const string NetPeerPortTagName = "net.peer.port"; public const string NetTransportTagName = "net.transport"; - public const string StatusCodeTagName = "otel.status_code"; public const string ThreadIdTagName = "thread.id"; public const string DatabaseSystemValue = "mysql"; @@ -35,18 +34,10 @@ internal static class ActivitySourceHelper return activity; } - public static void SetSuccess(this Activity activity) - { - activity.SetStatus(ActivityStatusCode.Ok); - activity.SetTag(StatusCodeTagName, "OK"); - } - public static void SetException(this Activity activity, Exception exception) { var description = exception is MySqlException mySqlException ? mySqlException.ErrorCode.ToString() : exception.Message; activity.SetStatus(ActivityStatusCode.Error, description); - activity.SetTag(StatusCodeTagName, "ERROR"); - activity.SetTag("otel.status_description", description); activity.AddEvent(new ActivityEvent("exception", tags: new ActivityTagsCollection { { "exception.type", exception.GetType().FullName }, diff --git a/tests/IntegrationTests/ActivityTests.cs b/tests/IntegrationTests/ActivityTests.cs index 65d8e22fc..7875f99e2 100644 --- a/tests/IntegrationTests/ActivityTests.cs +++ b/tests/IntegrationTests/ActivityTests.cs @@ -38,12 +38,9 @@ public void OpenTags() Assert.NotNull(activity); Assert.Equal(ActivityKind.Client, activity.Kind); Assert.Equal("Open", activity.OperationName); -#if NET6_0_OR_GREATER - Assert.Equal(ActivityStatusCode.Ok, activity.Status); -#endif + Assert.Equal(ActivityStatusCode.Unset, activity.Status); AssertTags(activity.Tags, csb); - AssertTag(activity.Tags, "otel.status_code", "OK"); } [Fact] @@ -74,7 +71,6 @@ public void OpenFromPoolTags() connection.Open(); Assert.NotNull(activities[i]); - AssertTag(activities[i].Tags, "otel.status_code", "OK"); } // activities should have the same connection ID @@ -104,12 +100,9 @@ public void OpenFailedTags() Assert.NotNull(activity); Assert.Equal(ActivityKind.Client, activity.Kind); Assert.Equal("Open", activity.OperationName); -#if NET6_0_OR_GREATER Assert.Equal(ActivityStatusCode.Error, activity.Status); -#endif AssertTags(activity.Tags, csb); - AssertTag(activity.Tags, "otel.status_code", "ERROR"); } [Fact] @@ -140,14 +133,11 @@ public void SelectTags() Assert.NotNull(activity); Assert.Equal(ActivityKind.Client, activity.Kind); Assert.Equal("Execute", activity.OperationName); -#if NET6_0_OR_GREATER - Assert.Equal(ActivityStatusCode.Ok, activity.Status); -#endif + Assert.Equal(ActivityStatusCode.Unset, activity.Status); AssertTags(activity.Tags, csb); AssertTag(activity.Tags, "db.connection_id", connection.ServerThread.ToString(CultureInfo.InvariantCulture)); AssertTag(activity.Tags, "db.statement", "SELECT 1;"); - AssertTag(activity.Tags, "otel.status_code", "OK"); } private void AssertTags(IEnumerable> tags, MySqlConnectionStringBuilder csb)