Semantic Conventions for AWS S3
Status: Experimental
The Semantic Conventions for AWS S3 extend the general AWS SDK Semantic Conventions that describe common AWS SDK attributes in addition to the Semantic Conventions described on this page.
Attribute | Type | Description | Examples | Requirement Level | Stability |
---|---|---|---|---|---|
rpc.system | string | The value aws-api . | aws-api | Required | |
aws.request_id | string | The AWS request ID as returned in the response headers x-amz-request-id or x-amz-requestid . | 79b9da39-b7ae-508a-a6bc-864b2829c622 ; C9ER4AJX75574TDJ | Recommended | |
aws.s3.bucket | string | The S3 bucket name the request refers to. Corresponds to the --bucket parameter of the S3 API operations. [1] | some-bucket-name | Recommended | |
aws.s3.copy_source | string | The source object (in the form bucket /key ) for the copy operation. [2] | someFile.yml | Recommended | |
aws.s3.delete | string | The delete request container that specifies the objects to be deleted. [3] | Objects=[{Key=string,VersionId=string},{Key=string,VersionId=string}],Quiet=boolean | Recommended | |
aws.s3.key | string | The S3 object key the request refers to. Corresponds to the --key parameter of the S3 API operations. [4] | someFile.yml | Recommended | |
aws.s3.part_number | int | The part number of the part being uploaded in a multipart-upload operation. This is a positive integer between 1 and 10,000. [5] | 3456 | Recommended | |
aws.s3.upload_id | string | Upload ID that identifies the multipart upload. [6] | dfRtDYWFbkRONycy.Yxwh66Yjlx.cph0gtNBtJ | Recommended | |
rpc.method | string | The name of the operation corresponding to the request, as returned by the AWS SDK [7] | GetItem ; PutItem | Recommended | |
rpc.service | string | The name of the service to which a request is made, as returned by the AWS SDK. [8] | DynamoDB ; S3 | Recommended |
[1] aws.s3.bucket
: The bucket
attribute is applicable to all S3 operations that reference a bucket, i.e. that require the bucket name as a mandatory parameter.
This applies to almost all S3 operations except list-buckets
.
[2] aws.s3.copy_source
: The copy_source
attribute applies to S3 copy operations and corresponds to the --copy-source
parameter
of the copy-object operation within the S3 API.
This applies in particular to the following operations:
[3] aws.s3.delete
: The delete
attribute is only applicable to the delete-object operation.
The delete
attribute corresponds to the --delete
parameter of the
delete-objects operation within the S3 API.
[4] aws.s3.key
: The key
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:
- copy-object
- delete-object
- get-object
- head-object
- put-object
- restore-object
- select-object-content
- abort-multipart-upload
- complete-multipart-upload
- create-multipart-upload
- list-parts
- upload-part
- upload-part-copy
[5] aws.s3.part_number
: The part_number
attribute is only applicable to the upload-part
and upload-part-copy operations.
The part_number
attribute corresponds to the --part-number
parameter of the
upload-part operation within the S3 API.
[6] aws.s3.upload_id
: The upload_id
attribute applies to S3 multipart-upload operations and corresponds to the --upload-id
parameter
of the S3 API multipart operations.
This applies in particular to the following operations:
[7] rpc.method
: This is the logical name of the method from the RPC interface perspective, which can be different from the name of any implementing method/function. The code.function
attribute may be used to store the latter (e.g., method actually executing the call on the server side, RPC client stub method on the client side).
[8] rpc.service
: This is the logical name of the service from the RPC interface perspective, which can be different from the name of any implementing class. The code.namespace
attribute may be used to store the latter (despite the attribute name, it may include a class name; e.g., class with method actually executing the call on the server side, RPC client stub class on the client side).
rpc.system
has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
Value | Description | Stability |
---|---|---|
apache_dubbo | Apache Dubbo | |
connect_rpc | Connect RPC | |
dotnet_wcf | .NET WCF | |
grpc | gRPC | |
java_rmi | Java RMI |
Feedback
Was this page helpful?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!