Documentation ¶
Index ¶
- Constants
- Variables
- func CreateTLSConfig(certBytes []byte) (*tls.Config, error)
- func WithEnvCompression(n string, fn func(Compression)) func(e *envconfig.EnvOptionsReader)
- type Compression
- type Config
- type GRPCOption
- type GenericOption
- func WithCompression(compression Compression) GenericOption
- func WithEndpoint(endpoint string) GenericOption
- func WithEndpointURL(v string) GenericOption
- func WithHeaders(headers map[string]string) GenericOption
- func WithInsecure() GenericOption
- func WithProxy(pf HTTPTransportProxyFunc) GenericOption
- func WithRetry(rc retry.Config) GenericOption
- func WithSecure() GenericOption
- func WithTLSClientConfig(tlsCfg *tls.Config) GenericOption
- func WithTimeout(duration time.Duration) GenericOption
- func WithURLPath(urlPath string) GenericOption
- type HTTPOption
- type HTTPTransportProxyFunc
- type Marshaler
- type SignalConfig
Constants ¶
const ( // DefaultTracesPath is a default URL path for endpoint that // receives spans. DefaultTracesPath string = "/v1/traces" // DefaultTimeout is a default max waiting time for the backend to process // each span batch. DefaultTimeout time.Duration = 10 * time.Second )
const ( // DefaultCollectorGRPCPort is the default gRPC port of the collector. DefaultCollectorGRPCPort uint16 = 4317 // DefaultCollectorHTTPPort is the default HTTP port of the collector. DefaultCollectorHTTPPort uint16 = 4318 // DefaultCollectorHost is the host address the Exporter will attempt // connect to if no collector address is provided. DefaultCollectorHost string = "localhost" )
Variables ¶
var DefaultEnvOptionsReader = envconfig.EnvOptionsReader{ GetEnv: os.Getenv, ReadFile: os.ReadFile, Namespace: "OTEL_EXPORTER_OTLP", }
DefaultEnvOptionsReader is the default environments reader.
Functions ¶
func CreateTLSConfig ¶
CreateTLSConfig creates a tls.Config from a raw certificate bytes to verify a server certificate.
func WithEnvCompression ¶
func WithEnvCompression(n string, fn func(Compression)) func(e *envconfig.EnvOptionsReader)
WithEnvCompression retrieves the specified config and passes it to ConfigFn as a Compression.
Types ¶
type Compression ¶
type Compression int
Compression describes the compression used for payloads sent to the collector.
const ( // NoCompression tells the driver to send payloads without // compression. NoCompression Compression = iota // GzipCompression tells the driver to send payloads after // compressing them with gzip. GzipCompression )
type Config ¶
type Config struct { // Signal specific configurations Traces SignalConfig RetryConfig retry.Config // gRPC configurations ReconnectionPeriod time.Duration ServiceConfig string DialOptions []grpc.DialOption GRPCConn *grpc.ClientConn }
func ApplyGRPCEnvConfigs ¶
ApplyGRPCEnvConfigs applies the env configurations for gRPC.
func ApplyHTTPEnvConfigs ¶
ApplyHTTPEnvConfigs applies the env configurations for HTTP.
func NewGRPCConfig ¶
func NewGRPCConfig(opts ...GRPCOption) Config
NewGRPCConfig returns a new Config with all settings applied from opts and any unset setting using the default gRPC config values.
func NewHTTPConfig ¶
func NewHTTPConfig(opts ...HTTPOption) Config
NewHTTPConfig returns a new Config with all settings applied from opts and any unset setting using the default HTTP config values.
type GRPCOption ¶
type GRPCOption interface { ApplyGRPCOption(Config) Config // contains filtered or unexported methods }
GRPCOption applies an option to the gRPC driver.
func NewGRPCOption ¶
func NewGRPCOption(fn func(cfg Config) Config) GRPCOption
type GenericOption ¶
type GenericOption interface { ApplyHTTPOption(Config) Config ApplyGRPCOption(Config) Config // contains filtered or unexported methods }
GenericOption applies an option to the HTTP or gRPC driver.
func WithCompression ¶
func WithCompression(compression Compression) GenericOption
func WithEndpoint ¶
func WithEndpoint(endpoint string) GenericOption
WithEndpoint configures the trace host and port only; endpoint should resemble "example.com" or "localhost:4317". To configure the scheme and path, use WithEndpointURL.
func WithEndpointURL ¶ added in v1.23.0
func WithEndpointURL(v string) GenericOption
WithEndpointURL configures the trace scheme, host, port, and path; the provided value should resemble "https://example.com:4318/v1/traces".
func WithHeaders ¶
func WithHeaders(headers map[string]string) GenericOption
func WithInsecure ¶
func WithInsecure() GenericOption
func WithProxy ¶ added in v1.25.0
func WithProxy(pf HTTPTransportProxyFunc) GenericOption
func WithRetry ¶
func WithRetry(rc retry.Config) GenericOption
func WithSecure ¶
func WithSecure() GenericOption
func WithTLSClientConfig ¶
func WithTLSClientConfig(tlsCfg *tls.Config) GenericOption
func WithTimeout ¶
func WithTimeout(duration time.Duration) GenericOption
func WithURLPath ¶
func WithURLPath(urlPath string) GenericOption
type HTTPOption ¶
type HTTPOption interface { ApplyHTTPOption(Config) Config // contains filtered or unexported methods }
HTTPOption applies an option to the HTTP driver.
func NewHTTPOption ¶
func NewHTTPOption(fn func(cfg Config) Config) HTTPOption
type HTTPTransportProxyFunc ¶ added in v1.25.0
HTTPTransportProxyFunc is a function that resolves which URL to use as proxy for a given request. This type is compatible with `http.Transport.Proxy` and can be used to set a custom proxy function to the OTLP HTTP client.
type Marshaler ¶
type Marshaler int
Marshaler describes the kind of message format sent to the collector.
type SignalConfig ¶
type SignalConfig struct { Endpoint string Insecure bool TLSCfg *tls.Config Headers map[string]string Compression Compression Timeout time.Duration URLPath string // gRPC configurations GRPCCredentials credentials.TransportCredentials Proxy HTTPTransportProxyFunc }