README
¶
HTTP Configuration Settings
HTTP exposes a variety of settings. Several of these settings are available for configuration within individual receivers or exporters.
Client Configuration
Exporters leverage client configuration.
Note that client configuration supports TLS configuration, however
configuration parameters are not defined under tls_settings
like server
configuration. For more information, see configtls
README.
endpoint
: address:portheaders
: name/value pairs added to the HTTP request headersread_buffer_size
timeout
write_buffer_size
Example:
exporter:
otlp:
endpoint: otelcol2:55690
headers:
test1: "value1"
"test 2": "value 2"
Server Configuration
Receivers leverage server configuration.
cors_allowed_origins
: An empty list means that CORS is not enabled at all. A wildcard can be used to match any origin or one or more characters of an origin.cors_allowed_headers
: When CORS is enabled, can be used to specify an optional list of allowed headers. By default, it includesAccept
,Content-Type
,X-Requested-With
.Origin
is also always added to the list. A wildcard (*
) can be used to match any header.endpoint
: Valid value syntax available heretls_settings
Example:
receivers:
otlp:
cors_allowed_origins:
- https://foo.bar.com
- https://*.test.com
cors_allowed_headers:
- ExampleHeader
endpoint: 0.0.0.0:55690
protocols:
http:
Documentation
¶
Index ¶
Examples ¶
Constants ¶
Variables ¶
Functions ¶
Types ¶
type HTTPClientSettings ¶
type HTTPClientSettings struct { // The target URL to send data to (e.g.: http://some.url:9411/v1/traces). Endpoint string `mapstructure:"endpoint"` // TLSSetting struct exposes TLS client configuration. TLSSetting configtls.TLSClientSetting `mapstructure:",squash"` // ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize. ReadBufferSize int `mapstructure:"read_buffer_size"` // WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize. WriteBufferSize int `mapstructure:"write_buffer_size"` // Timeout parameter configures `http.Client.Timeout`. Timeout time.Duration `mapstructure:"timeout,omitempty"` // Additional headers attached to each HTTP request sent by the client. // Existing header values are overwritten if collision happens. Headers map[string]string `mapstructure:"headers,omitempty"` // Custom Round Tripper to allow for individual components to intercept HTTP requests CustomRoundTripper func(next http.RoundTripper) (http.RoundTripper, error) }
HTTPClientSettings defines settings for creating an HTTP client.
type HTTPServerSettings ¶
type HTTPServerSettings struct { // Endpoint configures the listening address for the server. Endpoint string `mapstructure:"endpoint"` // TLSSetting struct exposes TLS client configuration. TLSSetting *configtls.TLSServerSetting `mapstructure:"tls_settings, omitempty"` // CorsOrigins are the allowed CORS origins for HTTP/JSON requests to grpc-gateway adapter // for the OTLP receiver. See github.com/rs/cors // An empty list means that CORS is not enabled at all. A wildcard (*) can be // used to match any origin or one or more characters of an origin. CorsOrigins []string `mapstructure:"cors_allowed_origins"` // CorsHeaders are the allowed CORS headers for HTTP/JSON requests to grpc-gateway adapter // for the OTLP receiver. See github.com/rs/cors // CORS needs to be enabled first by providing a non-empty list in CorsOrigins // A wildcard (*) can be used to match any header. CorsHeaders []string `mapstructure:"cors_allowed_headers"` }
HTTPServerSettings defines settings for creating an HTTP server.
Example ¶
Output:
func (*HTTPServerSettings) ToListener ¶
func (hss *HTTPServerSettings) ToListener() (net.Listener, error)
ToListener creates a net.Listener.
func (*HTTPServerSettings) ToServer ¶
func (hss *HTTPServerSettings) ToServer(handler http.Handler, opts ...ToServerOption) *http.Server
ToServer creates an http.Server from settings object.
type ToServerOption ¶
type ToServerOption func(opts *toServerOptions)
ToServerOption is an option to change the behavior of the HTTP server returned by HTTPServerSettings.ToServer().
func WithErrorHandler ¶
func WithErrorHandler(e middleware.ErrorHandler) ToServerOption
WithErrorHandler overrides the HTTP error handler that gets invoked when there is a failure inside middleware.HTTPContentDecompressor.