awsxrayreceiver

package module
v0.99.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2024 License: Apache-2.0 Imports: 15 Imported by: 15

README

AWS X-Ray Receiver

Status
Stability beta: traces
Distributions contrib
Issues Open issues Closed issues
Code Owners @wangzlei, @srprash

Overview

The AWS X-Ray receiver accepts segments (i.e. spans) in the X-Ray Segment format. This enables the collector to receive spans emitted by the existing X-Ray SDK. Centralized sampling is also supported via a local TCP port.

The requests sent to AWS are authenticated using the mechanism documented here.

Configuration

Example:

receivers:
  awsxray:
    endpoint: 0.0.0.0:2000
    transport: udp
    proxy_server:
      endpoint: 0.0.0.0:2000
      proxy_address: ""
      tls:
        insecure: false
        server_name_override: ""
      region: ""
      role_arn: ""
      aws_endpoint: ""
      local_mode: false

The default configurations below are based on the default configurations of the existing X-Ray Daemon.

endpoint (Optional)

The UDP address and port on which this receiver listens for X-Ray segment documents emitted by the X-Ray SDK.

Default: 0.0.0.0:2000

The component.UseLocalHostAsDefaultHost feature gate changes this to localhost:2000. This will become the default in a future release.

transport (Optional)

This should always be "udp" as X-Ray SDKs only send segments using UDP.

Default: udp

proxy_server (Optional)

Defines configurations related to the local TCP proxy server.

endpoint (Optional)

The TCP address and port on which this receiver listens for calls from the X-Ray SDK and relays them to the AWS X-Ray backend to get sampling rules and report sampling statistics.

Default: 0.0.0.0:2000

The component.UseLocalHostAsDefaultHost feature gate changes this to localhost:2000. This will become the default in a future release.

proxy_address (Optional)

Defines the proxy address that the local TCP server forwards HTTP requests to AWS X-Ray backend through. If left unconfigured, requests will be sent directly.

insecure (Optional)

Enables or disables TLS certificate verification when the local TCP server forwards HTTP requests to the AWS X-Ray backend. This sets the InsecureSkipVerify in the TLSConfig. When setting to true, TLS is susceptible to man-in-the-middle attacks so it should be used only for testing.

Default: false

server_name_override (Optional)

This sets the ``ServerName` in the TLSConfig.

region (Optional)

The AWS region the local TCP server forwards requests to. When missing, we will try to retrieve this value through environment variables or optionally ECS/EC2 metadata endpoint (depends on local_mode below).

role_arn (Optional)

The IAM role used by the local TCP server when communicating with the AWS X-Ray service. If non-empty, the receiver will attempt to call STS to retrieve temporary credentials, otherwise the standard AWS credential lookup will be performed.

aws_endpoint (Optional)

The X-Ray service endpoint which the local TCP server forwards requests to.

local_mode (Optional)

Determines whether the ECS/EC2 instance metadata endpoint will be called to fetch the AWS region to send requests to. Set to true to skip metadata check.

Default: false

Documentation

Overview

Package awsxrayreceiver implements a receiver that can be used by the Opentelemetry collector to receive traces in the AWS X-Ray segment format. More details can be found on: https://docs.aws.amazon.com/xray/latest/devguide/xray-api-segmentdocuments.html

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFactory

func NewFactory() receiver.Factory

NewFactory creates a factory for AWS receiver.

Types

type Config

type Config struct {
	// The `NetAddr` represents the UDP address
	// and port on which this receiver listens for X-Ray segment documents
	// emitted by the X-Ray SDK.
	confignet.AddrConfig `mapstructure:",squash"`

	// ProxyServer defines configurations related to the local TCP proxy server.
	ProxyServer *proxy.Config `mapstructure:"proxy_server"`
}

Config defines the configurations for an AWS X-Ray receiver.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL