Skip to main content

AWS RDS

Required AWS RDS Attributes

The following cost calculation tags are required for traces associated with queries running against AWS RDS instances.

Always Required Fields

These fields are always required regardless of the database engine:

Attribute Name to Send to Beakpoint InsightsExample ValueAllowed Values
aws.rds.instance.idmydbinstanceAny valid RDS instance identifier
aws.rds.instance.classdb.t3.microAny valid RDS instance class
aws.regionus-east-1Any valid AWS region
aws.rds.deployment.optionSingle-AZSingle-AZ, Multi-Az
aws.rds.engineaurora-postgresqlaurora-postgresql, postgres, mysql, mariadb, oracle-se2, oracle-ee, sqlserver-ex, sqlserver-web, sqlserver-se, sqlserver-ee
aws.rds.engine_version15.2Any valid version for selected engine
aws.rds.storage.typeauroraaurora, gp2, gp3, io1, io2, standard
aws.rds.license.modelpostgresql-licenseAny valid license model

Required for CUR Cost Finalization

Costs calculated from the tags above are provisional — estimated from list prices. When you connect your AWS Cost and Usage Report (CUR), Beakpoint Insights replaces provisional costs with your actual billed costs by matching spans to CUR line items. That matching requires one additional tag:

Attribute NameExample ValueAllowed Values
cloud.resource_idarn:aws:rds:us-east-1:123456789012:db:mydbinstanceThe full RDS instance ARN
Must be a resource attribute

cloud.resource_id should be set as an OpenTelemetry resource attribute. Spans sent directly via OTLP will not match your CUR data if the tag only appears at the span level, and their costs will remain provisional indefinitely. (Traces imported from AWS X-Ray have span-level values promoted automatically, but do not rely on this.)

Visualization with Mermaid

The diagram below shows which attributes are required depending on the instance type.

Retrieving RDS Instance Details

You can retrieve instance details using AWS CLI:

AWS CLI

aws rds describe-db-instances --db-instance-identifier mydbinstance --region us-east-1

which will return:

{
"DBInstances": [
{
"DBInstanceIdentifier": "mydbinstance",
"DBInstanceClass": "db.t3.micro",
"Engine": "postgres",
"EngineVersion": "15.2",
"MultiAZ": true,
"StorageType": "gp2",
"ReadReplicaSourceDBInstanceIdentifier": "source-db-id",
"DBClusterIdentifier": "my-cluster",
"AvailabilityZone": "us-east-1a"
}
]
}