Skip to content

feat(boto3): Add DynamoDB service extension #7555

Description

@pabloDeputter
  • db.system.name must be set to aws.dynamodb and should be provided at span creation time.
  • OTel semconv. may be outdated since there are quite a few new attributes in DynamoDB that are not in OTel yet.
  • We support the following operations and attributes:
    • DynamoDB.BatchGetItem
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.table_names — extracted from the keys of the request RequestItems object.
    • DynamoDB.BatchWriteItem
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.item_collection_metrics — JSON-serialized value of the response ItemCollectionMetrics field.
      • aws.dynamodb.table_names — extracted from the keys of the request RequestItems object.
    • DynamoDB.CreateTable
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.global_secondary_indexes — JSON-serialized items from the request GlobalSecondaryIndexes field.
      • aws.dynamodb.item_collection_metrics — JSON-serialized value of the response ItemCollectionMetrics field.
      • aws.dynamodb.local_secondary_indexes — JSON-serialized items from the request LocalSecondaryIndexes field.
      • aws.dynamodb.provisioned_read_capacity — extracted from the request ProvisionedThroughput.ReadCapacityUnits parameter.
      • aws.dynamodb.provisioned_write_capacity — extracted from the request ProvisionedThroughput.WriteCapacityUnits parameter.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.DeleteItem
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.item_collection_metrics — JSON-serialized value of the response ItemCollectionMetrics field.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.DeleteTable
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.DescribeTable
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.GetItem
      • aws.dynamodb.consistent_read — the request ConsistentRead parameter.
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.projection — the request ProjectionExpression parameter.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.ListTables
      • aws.dynamodb.exclusive_start_table — the request ExclusiveStartTableName parameter.
      • aws.dynamodb.limit — the request Limit parameter.
      • aws.dynamodb.table_count — derived from the number of items in the response TableNames parameter.
    • DynamoDB.PutItem
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.item_collection_metrics — JSON-serialized value of the response ItemCollectionMetrics field.
      • aws.dynamodb.table_names — extracted from the keys of the request RequestItems object. See note below.
    • DynamoDB.Query
      • aws.dynamodb.attributes_to_get — the request AttributesToGet parameter. NOT YET ADDED TO SENTRY SEM-CONV.
      • aws.dynamodb.consistent_read — the request ConsistentRead parameter.
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.index_name — the request IndexName parameter.
      • aws.dynamodb.limit — the request Limit parameter.
      • aws.dynamodb.projection — the request ProjectionExpression parameter.
      • aws.dynamodb.scan_forward — the request ScanIndexForward parameter.
      • aws.dynamodb.select — the request Select parameter.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.Scan
      • aws.dynamodb.attributes_to_get — the request AttributesToGet parameter. NOT YET ADDED TO SENTRY SEM-CONV.
      • aws.dynamodb.consistent_read — the request ConsistentRead parameter.
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.count — the response Count parameter.
      • aws.dynamodb.index_name — the request IndexName parameter.
      • aws.dynamodb.limit — the request Limit parameter.
      • aws.dynamodb.projection — the request ProjectionExpression parameter.
      • aws.dynamodb.scanned_count — the response ScannedCount parameter.
      • aws.dynamodb.segment — the request Segment parameter.
      • aws.dynamodb.select — the request Select parameter.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
      • aws.dynamodb.total_segments — the request TotalSegments parameter.
    • DynamoDB.UpdateItem
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.item_collection_metrics — JSON-serialized value of the response ItemCollectionMetrics field.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.
    • DynamoDB.UpdateTable
      • aws.dynamodb.attribute_definitions — JSON-serialized items from the request AttributeDefinitions field.
      • aws.dynamodb.consumed_capacity — JSON-serialized items from the response ConsumedCapacity field.
      • aws.dynamodb.global_secondary_index_updates — JSON-serialized items from the request GlobalSecondaryIndexUpdates field.
      • aws.dynamodb.provisioned_read_capacity — extracted from the request ProvisionedThroughput.ReadCapacityUnits parameter.
      • aws.dynamodb.provisioned_write_capacity — extracted from the request ProvisionedThroughput.WriteCapacityUnits parameter.
      • aws.dynamodb.table_names — a single-element array containing the request TableName parameter.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions