Documentation
¶
Index ¶
- func GenerateDebugExporters() map[string]any
- func GenerateFluentforwardExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
- func GenerateMetricsExporters() map[string]any
- func GenerateOTLPGRPCExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
- func GenerateOTLPHTTPExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
- type CORSConfig
- type FluentForwardWrapper
- type HTTPServerConfig
- type OTLPGRPCWrapper
- type OTLPHTTPWrapper
- type PrometheusExporterConfig
- type ResourceToTelemetrySettings
- type TLSServerConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateDebugExporters ¶
func GenerateFluentforwardExporters ¶
func GenerateFluentforwardExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
func GenerateOTLPGRPCExporters ¶
func GenerateOTLPGRPCExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
func GenerateOTLPHTTPExporters ¶
func GenerateOTLPHTTPExporters(ctx context.Context, resourceRelations components.ResourceRelations) map[string]any
Types ¶
type CORSConfig ¶
type CORSConfig struct {
// AllowedOrigins sets the allowed values of the Origin header for
// HTTP/JSON requests to an OTLP receiver. An origin may contain a
// wildcard (*) to replace 0 or more characters (e.g.,
// "http://*.domain.com", or "*" to allow any origin).
AllowedOrigins []string `json:"allowed_origins"`
// AllowedHeaders sets what headers will be allowed in CORS requests.
// The Accept, Accept-Language, Content-Type, and Content-Language
// headers are implicitly allowed. If no headers are listed,
// X-Requested-With will also be accepted by default. Include "*" to
// allow any request header.
AllowedHeaders []string `json:"allowed_headers"`
// MaxAge sets the value of the Access-Control-Max-Age response header.
// Set it to the number of seconds that browsers should cache a CORS
// preflight response for.
MaxAge int `json:"max_age"`
}
CORSConfig configures a receiver for HTTP cross-origin resource sharing (CORS). See the underlying https://github.com/rs/cors package for details.
type FluentForwardWrapper ¶
type FluentForwardWrapper struct {
v1alpha1.TCPClientSettings `json:",inline"`
// RequireAck enables the acknowledgement feature.
RequireAck *bool `json:"require_ack,omitempty"`
// The Fluent tag parameter used for routing
Tag *string `json:"tag,omitempty"`
// CompressGzip enables gzip compression for the payload.
CompressGzip *bool `json:"compress_gzip,omitempty"`
// DefaultLabelsEnabled is a map of default attributes to be added to each log record.
DefaultLabelsEnabled *map[string]bool `json:"default_labels_enabled,omitempty"`
QueueConfig *queueWrapper `json:"sending_queue,omitempty"`
RetryConfig *backOffWrapper `json:"retry_on_failure,omitempty"`
Kubernetes *v1alpha1.KubernetesMetadata `json:"kubernetes_metadata,omitempty"`
}
type HTTPServerConfig ¶
type HTTPServerConfig struct {
// Endpoint configures the listening address for the server.
Endpoint string `json:"endpoint,omitempty"`
// TLSSetting struct exposes TLS client configuration.
TLSSetting *TLSServerConfig `json:"tls,omitempty"`
// CORS configures the server for HTTP cross-origin resource sharing (CORS).
CORS *CORSConfig `json:"cors,omitempty"`
// Auth for this receiver
Auth *configauth.Config `json:"auth,omitempty"`
// MaxRequestBodySize sets the maximum request body size in bytes
MaxRequestBodySize int64 `json:"max_request_body_size,omitempty"`
// IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers
// Experimental: *NOTE* this option is subject to change or removal in the future.
IncludeMetadata bool `json:"include_metadata,omitempty"`
// Additional headers attached to each HTTP response sent to the client.
// Header values are opaque since they may be sensitive.
ResponseHeaders map[string]configopaque.String `json:"response_headers,omitempty"`
}
type OTLPGRPCWrapper ¶
type OTLPGRPCWrapper struct {
QueueConfig *queueWrapper `json:"sending_queue,omitempty"`
RetryConfig *backOffWrapper `json:"retry_on_failure,omitempty"`
v1alpha1.TimeoutSettings `json:",inline"`
v1alpha1.GRPCClientConfig `json:",inline"`
}
type OTLPHTTPWrapper ¶
type OTLPHTTPWrapper struct {
QueueConfig *queueWrapper `json:"sending_queue,omitempty"`
RetryConfig *backOffWrapper `json:"retry_on_failure,omitempty"`
v1alpha1.HTTPClientConfig `json:",inline"`
}
type PrometheusExporterConfig ¶
type PrometheusExporterConfig struct {
HTTPServerConfig `json:",inline"`
// Namespace if set, exports metrics under the provided value.
Namespace string `json:"namespace,omitempty"`
// ConstLabels are values that are applied for every exported metric.
ConstLabels prometheus.Labels `json:"const_labels,omitempty"`
// SendTimestamps will send the underlying scrape timestamp with the export
SendTimestamps bool `json:"send_timestamps,omitempty"`
// MetricExpiration defines how long metrics are kept without updates
MetricExpiration time.Duration `json:"metric_expiration,omitempty"`
// ResourceToTelemetrySettings defines configuration for converting resource attributes to metric labels.
ResourceToTelemetrySettings *ResourceToTelemetrySettings `json:"resource_to_telemetry_conversion,omitempty"`
// EnableOpenMetrics enables the use of the OpenMetrics encoding option for the prometheus exporter.
EnableOpenMetrics bool `json:"enable_open_metrics,omitempty"`
// AddMetricSuffixes controls whether suffixes are added to metric names. Defaults to true.
AddMetricSuffixes bool `json:"add_metric_suffixes,omitempty"`
}
type ResourceToTelemetrySettings ¶
type ResourceToTelemetrySettings struct {
// Enabled indicates whether to convert resource attributes to telemetry attributes. Default is `false`.
Enabled bool `json:"enabled,omitempty"`
}
type TLSServerConfig ¶
type TLSServerConfig struct {
// squash ensures fields are correctly decoded in embedded struct.
v1alpha1.TLSSetting `json:",inline"`
// Path to the TLS cert to use by the server to verify a client certificate. (optional)
// This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to
// https://godoc.org/crypto/tls#Config for more information. (optional)
ClientCAFile string `json:"client_ca_file"`
// Reload the ClientCAs file when it is modified
// (optional, default false)
ReloadClientCAFile bool `json:"client_ca_file_reload"`
}
Click to show internal directories.
Click to hide internal directories.