diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index e182294952..0a1e590110 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -138,8 +138,16 @@ and the new feature doesn't fit it.
### How to request for release of package
* Submit a PR with `CHANGELOG.md` file reflecting the version to be released
-along with the date in the following format `[yyyy-MMM-dd`]`. For example:
-"1.2.0-beta.2 [2022-May-15]".
+along with the date in the following format `yyyy-MMM-dd`.
+
+For example:
+
+```text
+## 1.2.0-beta.2
+
+Released 2022-Jun-21
+```
+
* Tag the maintainers of this repository
(@open-telemetry/dotnet-contrib-maintainers) who can release the package.
diff --git a/src/OpenTelemetry.Contrib.Extensions.AWSXRay/CHANGELOG.md b/src/OpenTelemetry.Contrib.Extensions.AWSXRay/CHANGELOG.md
index 67369c91e6..b3ffec18f8 100644
--- a/src/OpenTelemetry.Contrib.Extensions.AWSXRay/CHANGELOG.md
+++ b/src/OpenTelemetry.Contrib.Extensions.AWSXRay/CHANGELOG.md
@@ -6,7 +6,9 @@
instance instead of recreating with ThreadLocal
([#380](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/380))
-## 1.2.0 [2022-May-18]
+## 1.2.0
+
+Released 2022-May-18
* Enhancement - AWSEKSResourceDetector - Validate ClusterName/ContainerID
independently before adding it to the resource
@@ -15,13 +17,17 @@
"The SSL connection could not be established"
([#208](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/208))
-## 1.1.0 [2021-Sept-20]
+## 1.1.0
+
+Released 2021-Sep-20
* Added AWS resource detectors ([#149](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/149))
* Updated OTel SDK package version to 1.1.0
([#100](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/100))
-## 1.0.1 [2021-Feb-24]
+## 1.0.1
+
+Released 2021-Feb-24
This is the first release for the `OpenTelemetry.Contrib.Extensions.AWSXRay`
project. The project targets v1.0.1 of the [OpenTelemetry
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWS/CHANGELOG.md b/src/OpenTelemetry.Contrib.Instrumentation.AWS/CHANGELOG.md
index ea1991daf8..0e903ec307 100644
--- a/src/OpenTelemetry.Contrib.Instrumentation.AWS/CHANGELOG.md
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWS/CHANGELOG.md
@@ -1,6 +1,8 @@
# Changelog - OpenTelemetry.Contrib.Instrumentation.AWS
-## 1.0.1 [2021-Feb-24]
+## 1.0.1
+
+Released 2021-Feb-24
This is the first release for the `OpenTelemetry.Contrib.Instrumentation.AWS`
project. The release targets v1.0.1 of the
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSSemanticConventions.cs b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSSemanticConventions.cs
index 26665d3458..43090d2c85 100644
--- a/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSSemanticConventions.cs
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSSemanticConventions.cs
@@ -28,5 +28,7 @@ internal static class AWSSemanticConventions
public const string AttributeHttpStatusCode = "http.status_code";
public const string AttributeHttpResponseContentLength = "http.response_content_length";
+
+ public const string AttributeValueDynamoDb = "dynamodb";
}
}
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSServiceHelper.cs b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSServiceHelper.cs
new file mode 100644
index 0000000000..d884b21003
--- /dev/null
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSServiceHelper.cs
@@ -0,0 +1,54 @@
+//
+// Copyright The OpenTelemetry Authors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+using System;
+using System.Collections.Generic;
+using Amazon.Runtime;
+
+namespace OpenTelemetry.Contrib.Instrumentation.AWS.Implementation
+{
+ internal class AWSServiceHelper
+ {
+ internal static IReadOnlyDictionary ServiceParameterMap = new Dictionary()
+ {
+ { DynamoDbService, "TableName" },
+ { SQSService, "QueueUrl" },
+ };
+
+ internal static IReadOnlyDictionary ParameterAttributeMap = new Dictionary()
+ {
+ { "TableName", AWSSemanticConventions.AttributeAWSDynamoTableName },
+ { "QueueUrl", AWSSemanticConventions.AttributeAWSSQSQueueUrl },
+ };
+
+ private const string DynamoDbService = "DynamoDBv2";
+ private const string SQSService = "SQS";
+
+ internal static string GetAWSServiceName(IRequestContext requestContext)
+ => Utils.RemoveAmazonPrefixFromServiceName(requestContext.Request.ServiceName);
+
+ internal static string GetAWSOperationName(IRequestContext requestContext)
+ {
+ string completeRequestName = requestContext.OriginalRequest.GetType().Name;
+ string suffix = "Request";
+ var operationName = Utils.RemoveSuffix(completeRequestName, suffix);
+ return operationName;
+ }
+
+ internal static bool IsDynamoDbService(string service)
+ => DynamoDbService.Equals(service, StringComparison.OrdinalIgnoreCase);
+ }
+}
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSTracingPipelineHandler.cs b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSTracingPipelineHandler.cs
index f7b5862186..e731aabff4 100644
--- a/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSTracingPipelineHandler.cs
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWS/Implementation/AWSTracingPipelineHandler.cs
@@ -37,18 +37,6 @@ internal class AWSTracingPipelineHandler : PipelineHandler
carrier[name] = value;
};
- private static readonly Dictionary ServiceParameterMap = new Dictionary()
- {
- { "DynamoDBv2", "TableName" },
- { "SQS", "QueueUrl" },
- };
-
- private static readonly Dictionary ParameterAttributeMap = new Dictionary()
- {
- { "TableName", AWSSemanticConventions.AttributeAWSDynamoTableName },
- { "QueueUrl", AWSSemanticConventions.AttributeAWSSQSQueueUrl },
- };
-
private static readonly ActivitySource AWSSDKActivitySource = new ActivitySource(ActivitySourceName);
private readonly AWSClientInstrumentationOptions options;
@@ -117,8 +105,8 @@ private Activity ProcessBeginRequest(IExecutionContext executionContext)
Activity activity = null;
var requestContext = executionContext.RequestContext;
- var service = this.GetAWSServiceName(requestContext);
- var operation = this.GetAWSOperationName(requestContext);
+ var service = AWSServiceHelper.GetAWSServiceName(requestContext);
+ var operation = AWSServiceHelper.GetAWSOperationName(requestContext);
activity = AWSSDKActivitySource.StartActivity(service + "." + operation, ActivityKind.Client);
@@ -192,37 +180,26 @@ private void ProcessException(Activity activity, Exception ex)
}
}
- private string GetAWSServiceName(IRequestContext requestContext)
- {
- string serviceName = string.Empty;
- serviceName = Utils.RemoveAmazonPrefixFromServiceName(requestContext.Request.ServiceName);
- return serviceName;
- }
-
- private string GetAWSOperationName(IRequestContext requestContext)
- {
- string operationName = string.Empty;
- string completeRequestName = requestContext.OriginalRequest.GetType().Name;
- string suffix = "Request";
- operationName = Utils.RemoveSuffix(completeRequestName, suffix);
- return operationName;
- }
-
private void AddRequestSpecificInformation(Activity activity, IRequestContext requestContext, string service)
{
- AmazonWebServiceRequest request = requestContext.OriginalRequest;
-
- if (ServiceParameterMap.TryGetValue(service, out string parameter))
+ if (AWSServiceHelper.ServiceParameterMap.TryGetValue(service, out string parameter))
{
+ AmazonWebServiceRequest request = requestContext.OriginalRequest;
+
var property = request.GetType().GetProperty(parameter);
if (property != null)
{
- if (ParameterAttributeMap.TryGetValue(parameter, out string attribute))
+ if (AWSServiceHelper.ParameterAttributeMap.TryGetValue(parameter, out string attribute))
{
activity.SetTag(attribute, property.GetValue(request));
}
}
}
+
+ if (AWSServiceHelper.IsDynamoDbService(service))
+ {
+ activity.SetTag(SemanticConventions.AttributeDbSystem, AWSSemanticConventions.AttributeValueDynamoDb);
+ }
}
private void AddStatusCodeToActivity(Activity activity, int status_code)
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWS/OpenTelemetry.Contrib.Instrumentation.AWS.csproj b/src/OpenTelemetry.Contrib.Instrumentation.AWS/OpenTelemetry.Contrib.Instrumentation.AWS.csproj
index 45d4e245b8..01adf3f3f5 100644
--- a/src/OpenTelemetry.Contrib.Instrumentation.AWS/OpenTelemetry.Contrib.Instrumentation.AWS.csproj
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWS/OpenTelemetry.Contrib.Instrumentation.AWS.csproj
@@ -1,4 +1,4 @@
-
+
net452;netstandard2.0
@@ -13,5 +13,6 @@
+
diff --git a/src/OpenTelemetry.Contrib.Instrumentation.AWSLambda/CHANGELOG.md b/src/OpenTelemetry.Contrib.Instrumentation.AWSLambda/CHANGELOG.md
index df08983d54..8928f2bfc5 100644
--- a/src/OpenTelemetry.Contrib.Instrumentation.AWSLambda/CHANGELOG.md
+++ b/src/OpenTelemetry.Contrib.Instrumentation.AWSLambda/CHANGELOG.md
@@ -1,6 +1,8 @@
# Changelog - OpenTelemetry.Contrib.Instrumentation.AWSLambda
-## 1.1.0-beta1 [2021-May-26]
+## 1.1.0-beta1
+
+Released 2021-May-26
This is the first release for the `OpenTelemetry.Contrib.Instrumentation.AWSLambda`
project. The project targets v1.1.0-beta1 of the [OpenTelemetry
diff --git a/src/OpenTelemetry.Exporter.Geneva/CHANGELOG.md b/src/OpenTelemetry.Exporter.Geneva/CHANGELOG.md
index 6a6d7e957e..66bf8e7480 100644
--- a/src/OpenTelemetry.Exporter.Geneva/CHANGELOG.md
+++ b/src/OpenTelemetry.Exporter.Geneva/CHANGELOG.md
@@ -20,12 +20,16 @@ by throwing any exception caught by `UnixDomainSocketDataTransport.Send` so that
`ExportResult.Failure`.
[444](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/444)
-## 1.3.0-beta.2 [2022-Jun-03]
+## 1.3.0-beta.2
+
+Released 2022-Jun-03
* Add support for exporting `ILogger` scopes.
[390](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/390)
-## 1.3.0-beta.1 [2022-May-27]
+## 1.3.0-beta.1
+
+Released 2022-May-27
* Enable PassThru TableNameMappings using the logger category name.
[345](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/345)
@@ -44,12 +48,16 @@ by throwing any exception caught by `UnixDomainSocketDataTransport.Send` so that
`LogRecord.Exception.GetType().FullName`.
[375](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/375)
-## 1.2.6 [2022-Apr-21]
+## 1.2.6
+
+Released 2022-Apr-21
* Set GenevaMetricExporter temporality preference back to Delta.
[323](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/323)
-## 1.2.5 [2022-Apr-20] Broken
+## 1.2.5 Broken
+
+Released 2022-Apr-20
Note: This release was broken due to the GenevaMetricExporter using a
TemporalityPreference of Cumulative instead of Delta, it has been unlisted from
@@ -60,7 +68,9 @@ is the PR that introduced this bug to GenevaMetricExporterExtensions.cs
* Update OTel SDK version to `1.2.0`.
[319](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/319)
-## 1.2.4 [2022-Apr-20] Broken
+## 1.2.4 Broken
+
+Released 2022-Apr-20
This is the first release of the `OpenTelemetry.Exporter.Geneva` project. Note:
This release was broken due to using OpenTelemetry 1.2.0-rc5. Therefore, it has
diff --git a/src/OpenTelemetry.Exporter.Instana/CHANGELOG.md b/src/OpenTelemetry.Exporter.Instana/CHANGELOG.md
index 78dcba1e6c..4bb688b84f 100644
--- a/src/OpenTelemetry.Exporter.Instana/CHANGELOG.md
+++ b/src/OpenTelemetry.Exporter.Instana/CHANGELOG.md
@@ -2,17 +2,23 @@
## Unreleased
-## 1.0.2 [2022-Jun-02]
+## 1.0.2
+
+Released 2022-Jun-02
* Application is chrashing if environment variables are not defined
[385](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/385)
-## 1.0.1 [2022-May-25]
+## 1.0.1
+
+Released 2022-May-25
* Instana span duration was not calculated correctly
[376](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/376)
-## 1.0.0 [2022-May-24]
+## 1.0.0
+
+Released 2022-May-24
* This is the first release of the `OpenTelemetry.Exporter.Instana`
project.
diff --git a/src/OpenTelemetry.Instrumentation.MySqlData/CHANGELOG.md b/src/OpenTelemetry.Instrumentation.MySqlData/CHANGELOG.md
index dca310dd3b..4d88e85de9 100644
--- a/src/OpenTelemetry.Instrumentation.MySqlData/CHANGELOG.md
+++ b/src/OpenTelemetry.Instrumentation.MySqlData/CHANGELOG.md
@@ -2,6 +2,10 @@
## Unreleased
+## 1.0.0-beta.3
+
+Released 2022-Jun-29
+
* Fix incomplete db.statement when the length>300
[(#424)](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/424)
diff --git a/src/OpenTelemetry.Instrumentation.Runtime/CHANGELOG.md b/src/OpenTelemetry.Instrumentation.Runtime/CHANGELOG.md
index 3557ac6b8b..6d326578d0 100644
--- a/src/OpenTelemetry.Instrumentation.Runtime/CHANGELOG.md
+++ b/src/OpenTelemetry.Instrumentation.Runtime/CHANGELOG.md
@@ -2,6 +2,13 @@
## Unreleased
+## 1.0.0-rc.1
+
+Released 2022-Jun-29
+
+Major refactor of the runtime instrumentation. Renamed API signature and metrics.
+Removed the options to turn off certain metrics.
+
## 1.0.0-beta.1
Major redesign of the runtime instrumentation. Renamed metrics to be more user-friendly
diff --git a/src/OpenTelemetry.Instrumentation.StackExchangeRedis/CHANGELOG.md b/src/OpenTelemetry.Instrumentation.StackExchangeRedis/CHANGELOG.md
index f3a0adf69c..dc45bd3b30 100644
--- a/src/OpenTelemetry.Instrumentation.StackExchangeRedis/CHANGELOG.md
+++ b/src/OpenTelemetry.Instrumentation.StackExchangeRedis/CHANGELOG.md
@@ -1,6 +1,8 @@
# Changelog
-## Unreleased
+## 1.0.0-rc9.6
+
+Released 2022-Jun-29
* Added the EnrichActivityWithTimingEvents option to
StackExchangeRedisCallsInstrumentationOptions to be able to disable adding
diff --git a/test/OpenTelemetry.Contrib.Instrumentation.AWS.Tests/TestAWSClientInstrumentation.cs b/test/OpenTelemetry.Contrib.Instrumentation.AWS.Tests/TestAWSClientInstrumentation.cs
index e4ec96ee6b..b17a0567aa 100644
--- a/test/OpenTelemetry.Contrib.Instrumentation.AWS.Tests/TestAWSClientInstrumentation.cs
+++ b/test/OpenTelemetry.Contrib.Instrumentation.AWS.Tests/TestAWSClientInstrumentation.cs
@@ -179,6 +179,7 @@ private void ValidateDynamoActivityTags(Activity ddb_activity)
Assert.Equal("Scan", Utils.GetTagValue(ddb_activity, "aws.operation"));
Assert.Equal("us-east-1", Utils.GetTagValue(ddb_activity, "aws.region"));
Assert.Equal("SampleProduct", Utils.GetTagValue(ddb_activity, "aws.table_name"));
+ Assert.Equal("dynamodb", Utils.GetTagValue(ddb_activity, "db.system"));
}
private void ValidateSqsActivityTags(Activity sqs_activity)