Skip to content

Commit

Permalink
[SemanticConvention] Bump to v1.29.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Kielek committed Dec 17, 2024
1 parent 8dc8865 commit c1f31e3
Show file tree
Hide file tree
Showing 22 changed files with 686 additions and 56 deletions.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,6 @@ public static class AwsAttributes
/// The <c>copy_source</c> attribute applies to S3 copy operations and corresponds to the <c>--copy-source</c> parameter
/// of the <a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html">copy-object operation within the S3 API</a>.
/// This applies in particular to the following operations:
/// <p>
/// <ul>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html">copy-object</a></li>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html">upload-part-copy</a>.</li>
Expand All @@ -246,7 +245,6 @@ public static class AwsAttributes
/// <remarks>
/// The <c>key</c> attribute is applicable to all object-related S3 operations, i.e. that require the object key as a mandatory parameter.
/// This applies in particular to the following operations:
/// <p>
/// <ul>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html">copy-object</a></li>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html">delete-object</a></li>
Expand Down Expand Up @@ -283,7 +281,6 @@ public static class AwsAttributes
/// The <c>upload_id</c> attribute applies to S3 multipart-upload operations and corresponds to the <c>--upload-id</c> parameter
/// of the <a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html">S3 API</a> multipart operations.
/// This applies in particular to the following operations:
/// <p>
/// <ul>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/abort-multipart-upload.html">abort-multipart-upload</a></li>
/// <li><a href="https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html">complete-multipart-upload</a></li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public static class CicdAttributes
public const string AttributeCicdPipelineRunId = "cicd.pipeline.run.id";

/// <summary>
/// The human readable name of a task within a pipeline. Task here most closely aligns with a <a href="https://en.wikipedia.org/wiki/Pipeline_(computing)">computing process</a> in a pipeline. Other terms for tasks include commands, steps, and procedures.
/// The human readable name of a task within a pipeline. Task here most closely aligns with a <a href="https://wikipedia.org/wiki/Pipeline_(computing)">computing process</a> in a pipeline. Other terms for tasks include commands, steps, and procedures.
/// </summary>
public const string AttributeCicdPipelineTaskName = "cicd.pipeline.task.name";

Expand All @@ -35,7 +35,7 @@ public static class CicdAttributes
public const string AttributeCicdPipelineTaskRunId = "cicd.pipeline.task.run.id";

/// <summary>
/// The <a href="https://en.wikipedia.org/wiki/URL">URL</a> of the pipeline run providing the complete address in order to locate and identify the pipeline run.
/// The <a href="https://wikipedia.org/wiki/URL">URL</a> of the pipeline run providing the complete address in order to locate and identify the pipeline run.
/// </summary>
public const string AttributeCicdPipelineTaskRunUrlFull = "cicd.pipeline.task.run.url.full";

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ public static class CloudAttributes
/// <p>
/// The exact value to use for <c>cloud.resource_id</c> depends on the cloud provider.
/// The following well-known definitions MUST be used if you set this attribute and they apply:
/// <p>
/// <ul>
/// <li><strong>AWS Lambda:</strong> The function <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">ARN</a>.
/// Take care not to use the "invoked ARN" directly but replace any
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public static class CloudfoundryAttributes
/// The index of the application instance. 0 when just one instance is active.
/// </summary>
/// <remarks>
/// CloudFoundry defines the <c>instance_id</c> in the <a href="https://github.com/cloudfoundry/loggregator-api#v2-envelope">Loggegator v2 envelope</a>.
/// CloudFoundry defines the <c>instance_id</c> in the <a href="https://github.com/cloudfoundry/loggregator-api#v2-envelope">Loggregator v2 envelope</a>.
/// It is used for logs and metrics emitted by CloudFoundry. It is
/// supposed to contain the application instance index for applications
/// deployed on the runtime.
Expand Down
116 changes: 105 additions & 11 deletions src/OpenTelemetry.SemanticConventions/Attributes/DbAttributes.cs
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,13 @@ public static class DbAttributes
/// </summary>
/// <remarks>
/// It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization.
/// If the collection name is parsed from the query text, it SHOULD be the first collection name found in the query and it SHOULD match the value provided in the query text including any schema and database name prefix.
/// For batch operations, if the individual operations are known to have the same collection name then that collection name SHOULD be used, otherwise <c>db.collection.name</c> SHOULD NOT be captured.
/// <p>
/// The collection name SHOULD NOT be extracted from <c>db.query.text</c>,
/// unless the query format is known to only ever have a single collection name present.
/// <p>
/// For batch operations, if the individual operations are known to have the same collection name
/// then that collection name SHOULD be used.
/// <p>
/// This attribute has stability level RELEASE CANDIDATE.
/// </remarks>
public const string AttributeDbCollectionName = "db.collection.name";
Expand All @@ -99,19 +104,33 @@ public static class DbAttributes
/// </summary>
public const string AttributeDbCosmosdbConnectionMode = "db.cosmosdb.connection_mode";

/// <summary>
/// Account or request <a href="https://learn.microsoft.com/azure/cosmos-db/consistency-levels">consistency level</a>.
/// </summary>
public const string AttributeDbCosmosdbConsistencyLevel = "db.cosmosdb.consistency_level";

/// <summary>
/// Deprecated, use <c>db.collection.name</c> instead.
/// </summary>
[Obsolete("Replaced by <c>db.collection.name</c>.")]
public const string AttributeDbCosmosdbContainer = "db.cosmosdb.container";

/// <summary>
/// Cosmos DB Operation Type.
/// Deprecated, no replacement at this time.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string AttributeDbCosmosdbOperationType = "db.cosmosdb.operation_type";

/// <summary>
/// RU consumed for that operation.
/// List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call.
/// </summary>
/// <remarks>
/// Region name matches the format of <c>displayName</c> in <a href="https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location">Azure Location API</a>.
/// </remarks>
public const string AttributeDbCosmosdbRegionsContacted = "db.cosmosdb.regions_contacted";

/// <summary>
/// Request units consumed for the operation.
/// </summary>
public const string AttributeDbCosmosdbRequestCharge = "db.cosmosdb.request_charge";

Expand Down Expand Up @@ -210,23 +229,47 @@ public static class DbAttributes
/// The name of the operation or command being executed.
/// </summary>
/// <remarks>
/// It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization.
/// If the operation name is parsed from the query text, it SHOULD be the first operation name found in the query.
/// For batch operations, if the individual operations are known to have the same operation name then that operation name SHOULD be used prepended by <c>BATCH </c>, otherwise <c>db.operation.name</c> SHOULD be <c>BATCH</c> or some other database system specific term if more applicable.
/// It is RECOMMENDED to capture the value as provided by the application
/// without attempting to do any case normalization.
/// <p>
/// The operation name SHOULD NOT be extracted from <c>db.query.text</c>,
/// unless the query format is known to only ever have a single operation name present.
/// <p>
/// For batch operations, if the individual operations are known to have the same operation name
/// then that operation name SHOULD be used prepended by <c>BATCH </c>,
/// otherwise <c>db.operation.name</c> SHOULD be <c>BATCH</c> or some other database
/// system specific term if more applicable.
/// <p>
/// This attribute has stability level RELEASE CANDIDATE.
/// </remarks>
public const string AttributeDbOperationName = "db.operation.name";

/// <summary>
/// A query parameter used in <c>db.query.text</c>, with <c><key></c> being the parameter name, and the attribute value being a string representation of the parameter value.
/// A database operation parameter, with <c><key></c> being the parameter name, and the attribute value being a string representation of the parameter value.
/// </summary>
/// <remarks>
/// Query parameters should only be captured when <c>db.query.text</c> is parameterized with placeholders.
/// If a parameter has no name and instead is referenced only by index, then <c><key></c> SHOULD be the 0-based index.
/// If <c>db.query.text</c> is also captured, then <c>db.operation.parameter.<key></c> SHOULD match up with the parameterized placeholders present in <c>db.query.text</c>.
/// This attribute has stability level RELEASE CANDIDATE.
/// </remarks>
public const string AttributeDbOperationParameterTemplate = "db.operation.parameter";

/// <summary>
/// A query parameter used in <c>db.query.text</c>, with <c><key></c> being the parameter name, and the attribute value being a string representation of the parameter value.
/// </summary>
[Obsolete("Replaced by <c>db.operation.parameter</c>.")]
public const string AttributeDbQueryParameterTemplate = "db.query.parameter";

/// <summary>
/// Low cardinality representation of a database query text.
/// </summary>
/// <remarks>
/// <c>db.query.summary</c> provides static summary of the query text. It describes a class of database queries and is useful as a grouping key, especially when analyzing telemetry for database calls involving complex queries.
/// Summary may be available to the instrumentation through instrumentation hooks or other means. If it is not available, instrumentations that support query parsing SHOULD generate a summary following <a href="../../docs/database/database-spans.md#generating-a-summary-of-the-query-text">Generating query summary</a> section.
/// This attribute has stability level RELEASE CANDIDATE.
/// </remarks>
public const string AttributeDbQuerySummary = "db.query.summary";

/// <summary>
/// The database query being executed.
/// </summary>
Expand All @@ -244,6 +287,11 @@ public static class DbAttributes
[Obsolete("Replaced by <c>db.namespace</c>.")]
public const string AttributeDbRedisDatabaseIndex = "db.redis.database_index";

/// <summary>
/// Number of rows returned by the operation.
/// </summary>
public const string AttributeDbResponseReturnedRows = "db.response.returned_rows";

/// <summary>
/// Database response status code.
/// </summary>
Expand Down Expand Up @@ -382,7 +430,7 @@ public static class DbClientConnectionsStateValues
public static class DbCosmosdbConnectionModeValues
{
/// <summary>
/// Gateway (HTTP) connections mode.
/// Gateway (HTTP) connection.
/// </summary>
public const string Gateway = "gateway";

Expand All @@ -393,83 +441,129 @@ public static class DbCosmosdbConnectionModeValues
}

/// <summary>
/// Cosmos DB Operation Type.
/// Account or request <a href="https://learn.microsoft.com/azure/cosmos-db/consistency-levels">consistency level</a>.
/// </summary>
public static class DbCosmosdbConsistencyLevelValues
{
/// <summary>
/// strong.
/// </summary>
public const string Strong = "Strong";

/// <summary>
/// bounded_staleness.
/// </summary>
public const string BoundedStaleness = "BoundedStaleness";

/// <summary>
/// session.
/// </summary>
public const string Session = "Session";

/// <summary>
/// eventual.
/// </summary>
public const string Eventual = "Eventual";

/// <summary>
/// consistent_prefix.
/// </summary>
public const string ConsistentPrefix = "ConsistentPrefix";
}

/// <summary>
/// Deprecated, no replacement at this time.
/// </summary>
public static class DbCosmosdbOperationTypeValues
{
/// <summary>
/// batch.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Batch = "batch";

/// <summary>
/// create.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Create = "create";

/// <summary>
/// delete.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Delete = "delete";

/// <summary>
/// execute.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Execute = "execute";

/// <summary>
/// execute_javascript.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string ExecuteJavascript = "execute_javascript";

/// <summary>
/// invalid.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Invalid = "invalid";

/// <summary>
/// head.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Head = "head";

/// <summary>
/// head_feed.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string HeadFeed = "head_feed";

/// <summary>
/// patch.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Patch = "patch";

/// <summary>
/// query.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Query = "query";

/// <summary>
/// query_plan.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string QueryPlan = "query_plan";

/// <summary>
/// read.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Read = "read";

/// <summary>
/// read_feed.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string ReadFeed = "read_feed";

/// <summary>
/// replace.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Replace = "replace";

/// <summary>
/// upsert.
/// </summary>
[Obsolete("No replacement at this time.")]
public const string Upsert = "upsert";
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ public static class DeploymentAttributes
/// the <c>service.namespace</c>, <c>service.name</c> and <c>service.instance.id</c> resource attributes.
/// This implies that resources carrying the following attribute combinations MUST be
/// considered to be identifying the same service:
/// <p>
/// <ul>
/// <li><c>service.name=frontend</c>, <c>deployment.environment.name=production</c></li>
/// <li><c>service.name=frontend</c>, <c>deployment.environment.name=staging</c>.</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ public static class ErrorAttributes
/// <p>
/// If a specific domain defines its own set of error identifiers (such as HTTP or gRPC status codes),
/// it's RECOMMENDED to:
/// <p>
/// <ul>
/// <li>Use a domain-specific attribute</li>
/// <li>Set <c>error.type</c> to capture all errors, regardless of whether they are defined within the domain-specific set or not.</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,6 @@ public static class FaasAttributes
/// For some cloud providers, the above definition is ambiguous. The following
/// definition of function name MUST be used for this attribute
/// (and consequently the span name) for the listed cloud providers/products:
/// <p>
/// <ul>
/// <li><strong>Azure:</strong> The full name <c><FUNCAPP>/<FUNC></c>, i.e., function app name
/// followed by a forward slash followed by the function name (this form
Expand All @@ -131,7 +130,6 @@ public static class FaasAttributes
/// </summary>
/// <remarks>
/// Depending on the cloud provider and platform, use:
/// <p>
/// <ul>
/// <li><strong>AWS Lambda:</strong> The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html">function version</a>
/// (an integer represented as a decimal string).</li>
Expand Down
Loading

0 comments on commit c1f31e3

Please sign in to comment.