Documentation
¶
Overview ¶
Package otelaws provides instrumentation for the AWS SDK.
Index ¶
- Constants
- func DefaultAttributeBuilder(ctx context.Context, in middleware.InitializeInput, ...) []attribute.KeyValue
- func DynamoDBAttributeBuilder(_ context.Context, in middleware.InitializeInput, ...) []attribute.KeyValue
- func MethodAttr(service, operation string) attribute.KeyValue
- func OperationAttr(operation string) attribute.KeyValuedeprecated
- func RegionAttr(region string) attribute.KeyValue
- func RequestIDAttr(requestID string) attribute.KeyValue
- func SNSAttributeBuilder(_ context.Context, in middleware.InitializeInput, ...) []attribute.KeyValue
- func SQSAttributeBuilder(_ context.Context, in middleware.InitializeInput, ...) []attribute.KeyValue
- func ServiceAttr(service string) attribute.KeyValuedeprecated
- func SystemAttr() attribute.KeyValue
- type AttributeBuilder
- type Option
- type OtelMiddlewares
Constants ¶
const ( RegionKey attribute.Key = "aws.region" RequestIDKey attribute.Key = "aws.request_id" AWSSystemVal string = "aws-api" )
AWS attributes.
const (
// ScopeName is the instrumentation scope name.
ScopeName = "github.com/bronystylecrazy/ultrastructure/otelaws"
)
const Version = "0.65.0"
Version is the current release version of the AWS SDKv2 instrumentation.
Variables ¶
This section is empty.
Functions ¶
func DefaultAttributeBuilder ¶
func DefaultAttributeBuilder(ctx context.Context, in middleware.InitializeInput, out middleware.InitializeOutput) []attribute.KeyValue
DefaultAttributeBuilder checks to see if there are service specific attributes available to set for the AWS service. If there are service specific attributes available then they will be included.
func DynamoDBAttributeBuilder ¶
func DynamoDBAttributeBuilder(_ context.Context, in middleware.InitializeInput, _ middleware.InitializeOutput) []attribute.KeyValue
DynamoDBAttributeBuilder sets DynamoDB specific attributes depending on the DynamoDB operation being performed.
func MethodAttr ¶
MethodAttr returns the RPC method attribute for the AWS service and operation.
func OperationAttr
deprecated
OperationAttr returns the AWS operation attribute.
Deprecated: use MethodAttr instead.
func RegionAttr ¶
RegionAttr returns the AWS region attribute.
func RequestIDAttr ¶
RequestIDAttr returns the AWS request ID attribute.
func SNSAttributeBuilder ¶
func SNSAttributeBuilder(_ context.Context, in middleware.InitializeInput, _ middleware.InitializeOutput) []attribute.KeyValue
SNSAttributeBuilder sets SNS specific attributes depending on the SNS operation is being performed.
func SQSAttributeBuilder ¶
func SQSAttributeBuilder(_ context.Context, in middleware.InitializeInput, _ middleware.InitializeOutput) []attribute.KeyValue
SQSAttributeBuilder sets SQS specific attributes depending on the SQS operation being performed.
func ServiceAttr
deprecated
ServiceAttr returns the AWS service attribute.
Deprecated: use MethodAttr instead.
func SystemAttr ¶
SystemAttr return the AWS RPC system attribute.
Types ¶
type AttributeBuilder ¶
type AttributeBuilder func(ctx context.Context, in middleware.InitializeInput, out middleware.InitializeOutput) []attribute.KeyValue
AttributeBuilder returns an array of KeyValue pairs, it can be used to set custom attributes.
type Option ¶
type Option interface {
// contains filtered or unexported methods
}
Option applies an option value.
func WithAttributeBuilder ¶
func WithAttributeBuilder(attributeBuilders ...AttributeBuilder) Option
WithAttributeBuilder specifies an attribute setter function for setting service specific attributes. If none is specified, the service will be determined by the DefaultAttributeBuilder function and the corresponding attributes will be included.
func WithTextMapPropagator ¶
func WithTextMapPropagator(propagator propagation.TextMapPropagator) Option
WithTextMapPropagator specifies a Text Map Propagator to use when propagating context. If none is specified, the global TextMapPropagator is used.
func WithTracerProvider ¶
func WithTracerProvider(provider trace.TracerProvider) Option
WithTracerProvider specifies a tracer provider to use for creating a tracer. If none is specified, the global TracerProvider is used.
type OtelMiddlewares ¶
func NewMiddlewares ¶
func NewMiddlewares() *OtelMiddlewares
func (*OtelMiddlewares) Append ¶
func (m *OtelMiddlewares) Append(apiOptions *[]func(*middleware.Stack) error)