v1alpha1

package
v0.0.0-...-27ee74c Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2024 License: Apache-2.0 Imports: 10 Imported by: 2

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the telemetry v1alpha1 API group +kubebuilder:object:generate=true +groupName=telemetry.kube-logging.dev

Index

Constants

View Source
const (
	Separator = '/'
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "telemetry.kube-logging.dev", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Authentication

type Authentication struct {
	// AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point.
	AuthenticatorID *string `json:"authenticator,omitempty"`
}

func (*Authentication) DeepCopy

func (in *Authentication) DeepCopy() *Authentication

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authentication.

func (*Authentication) DeepCopyInto

func (in *Authentication) DeepCopyInto(out *Authentication)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BackOffConfig

type BackOffConfig struct {
	// InitialInterval the time to wait after the first failure before retrying.
	InitialInterval *time.Duration `json:"initial_interval,omitempty"`

	// RandomizationFactor is a random factor used to calculate next backoffs
	// Randomized interval = RetryInterval * (1 ± RandomizationFactor)
	RandomizationFactor *string `json:"randomization_factor,omitempty"`

	// Multiplier is the value multiplied by the backoff interval bounds
	Multiplier *string `json:"multiplier,omitempty"`

	// MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between
	// consecutive retries will always be `MaxInterval`.
	MaxInterval *time.Duration `json:"max_interval,omitempty"`

	// MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch.
	// Once this value is reached, the data is discarded. If set to 0, the retries are never stopped.
	// Default value is 0 to ensure that the data is never discarded.
	MaxElapsedTime *time.Duration `json:"max_elapsed_time,omitempty"`
}

BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.

func (*BackOffConfig) DeepCopy

func (in *BackOffConfig) DeepCopy() *BackOffConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackOffConfig.

func (*BackOffConfig) DeepCopyInto

func (in *BackOffConfig) DeepCopyInto(out *BackOffConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BasicAuthConfig

type BasicAuthConfig struct {
	SecretRef     *corev1.SecretReference `json:"secretRef,omitempty"`
	UsernameField string                  `json:"usernameField,omitempty"`
	PasswordField string                  `json:"passwordField,omitempty"`
}

func (*BasicAuthConfig) DeepCopy

func (in *BasicAuthConfig) DeepCopy() *BasicAuthConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthConfig.

func (*BasicAuthConfig) DeepCopyInto

func (in *BasicAuthConfig) DeepCopyInto(out *BasicAuthConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Batch

type Batch struct {

	// Timeout sets the time after which a batch will be sent regardless of size.
	// When this is set to zero, batched data will be sent immediately.
	Timeout string `json:"timeout,omitempty"`

	// SendBatchSize is the size of a batch which after hit, will trigger it to be sent.
	// When this is set to zero, the batch size is ignored and data will be sent immediately
	// subject to only send_batch_max_size.
	SendBatchSize uint32 `json:"send_batch_size,omitempty"`

	// SendBatchMaxSize is the maximum size of a batch. It must be larger than SendBatchSize.
	// Larger batches are split into smaller units.
	// Default value is 0, that means no maximum size.
	SendBatchMaxSize uint32 `json:"send_batch_max_size,omitempty"`

	// MetadataKeys is a list of client.Metadata keys that will be
	// used to form distinct batchers.  If this setting is empty,
	// a single batcher instance will be used.  When this setting
	// is not empty, one batcher will be used per distinct
	// combination of values for the listed metadata keys.
	//
	// Empty value and unset metadata are treated as distinct cases.
	//
	// Entries are case-insensitive.  Duplicated entries will
	// trigger a validation error.
	MetadataKeys []string `json:"metadata_keys,omitempty"`

	// MetadataCardinalityLimit indicates the maximum number of
	// batcher instances that will be created through a distinct
	// combination of MetadataKeys.
	MetadataCardinalityLimit uint32 `json:"metadata_cardinality_limit,omitempty"`
}

Batch processor configuration.

func (*Batch) DeepCopy

func (in *Batch) DeepCopy() *Batch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Batch.

func (*Batch) DeepCopyInto

func (in *Batch) DeepCopyInto(out *Batch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BearerAuthConfig

type BearerAuthConfig struct {
	SecretRef  *corev1.SecretReference `json:"secretRef,omitempty"`
	TokenField string                  `json:"tokenField,omitempty"`
}

func (*BearerAuthConfig) DeepCopy

func (in *BearerAuthConfig) DeepCopy() *BearerAuthConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BearerAuthConfig.

func (*BearerAuthConfig) DeepCopyInto

func (in *BearerAuthConfig) DeepCopyInto(out *BearerAuthConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Bridge

type Bridge struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BridgeSpec   `json:"spec,omitempty"`
	Status BridgeStatus `json:"status,omitempty"`
}

Bridge is the Schema for the Bridges API

func (*Bridge) DeepCopy

func (in *Bridge) DeepCopy() *Bridge

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bridge.

func (*Bridge) DeepCopyInto

func (in *Bridge) DeepCopyInto(out *Bridge)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Bridge) DeepCopyObject

func (in *Bridge) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BridgeList

type BridgeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Bridge `json:"items"`
}

BridgeList contains a list of Bridge

func (*BridgeList) DeepCopy

func (in *BridgeList) DeepCopy() *BridgeList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BridgeList.

func (*BridgeList) DeepCopyInto

func (in *BridgeList) DeepCopyInto(out *BridgeList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BridgeList) DeepCopyObject

func (in *BridgeList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BridgeSpec

type BridgeSpec struct {

	// The source tenant from which telemetry will be forwarded.
	SourceTenant string `json:"sourceTenant"`

	// The target tenant to which telemetry will be forwarded.
	TargetTenant string `json:"targetTenant"`

	// The condition which must be satisfied in order to forward telemetry
	// from the source tenant to the target tenant.
	Condition string `json:"condition"`
}

BridgeSpec defines the desired state of Bridge

func (*BridgeSpec) DeepCopy

func (in *BridgeSpec) DeepCopy() *BridgeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BridgeSpec.

func (*BridgeSpec) DeepCopyInto

func (in *BridgeSpec) DeepCopyInto(out *BridgeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BridgeStatus

type BridgeStatus struct {
}

BridgeStatus defines the observed state of Bridge

func (*BridgeStatus) DeepCopy

func (in *BridgeStatus) DeepCopy() *BridgeStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BridgeStatus.

func (*BridgeStatus) DeepCopyInto

func (in *BridgeStatus) DeepCopyInto(out *BridgeStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Collector

type Collector struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   CollectorSpec   `json:"spec,omitempty"`
	Status CollectorStatus `json:"status,omitempty"`
}

Collector is the Schema for the collectors API

func (*Collector) DeepCopy

func (in *Collector) DeepCopy() *Collector

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Collector.

func (*Collector) DeepCopyInto

func (in *Collector) DeepCopyInto(out *Collector)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Collector) DeepCopyObject

func (in *Collector) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CollectorList

type CollectorList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Collector `json:"items"`
}

CollectorList contains a list of Collector

func (*CollectorList) DeepCopy

func (in *CollectorList) DeepCopy() *CollectorList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectorList.

func (*CollectorList) DeepCopyInto

func (in *CollectorList) DeepCopyInto(out *CollectorList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CollectorList) DeepCopyObject

func (in *CollectorList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CollectorSpec

type CollectorSpec struct {

	// TenantSelector is used to select tenants for which the collector should collect data.
	TenantSelector metav1.LabelSelector `json:"tenantSelector"`

	// Namespace where the Otel collector DaemonSet is deployed.
	ControlNamespace string `json:"controlNamespace"`

	// Enables debug logging for the collector.
	Debug bool `json:"debug,omitempty"`

	// Setting memory limits for the Collector using the memory limiter processor.
	MemoryLimiter *MemoryLimiter `json:"memoryLimiter,omitempty"`

	// OtelcommonFields is used to override the default DaemonSet's common fields.
	OtelCommonFields *otelv1beta1.OpenTelemetryCommonFields `json:"otelCommonFields,omitempty"`
}

CollectorSpec defines the desired state of Collector

func (*CollectorSpec) DeepCopy

func (in *CollectorSpec) DeepCopy() *CollectorSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectorSpec.

func (*CollectorSpec) DeepCopyInto

func (in *CollectorSpec) DeepCopyInto(out *CollectorSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (CollectorSpec) GetMemoryLimit

func (c CollectorSpec) GetMemoryLimit() *resource.Quantity

func (*CollectorSpec) SetDefaults

func (c *CollectorSpec) SetDefaults()

type CollectorStatus

type CollectorStatus struct {
	Tenants []string `json:"tenants,omitempty"`
	State   State    `json:"state,omitempty"`
}

CollectorStatus defines the observed state of Collector

func (*CollectorStatus) DeepCopy

func (in *CollectorStatus) DeepCopy() *CollectorStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectorStatus.

func (*CollectorStatus) DeepCopyInto

func (in *CollectorStatus) DeepCopyInto(out *CollectorStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Endpoint

type Endpoint struct {
	// TCPAddr is the address of the server to connect to.
	TCPAddr *string `json:"tcp_addr"`
	// Controls whether to validate the tcp address.
	// Turning this ON may result in the collector failing to start if it came up faster then the endpoint.
	// default is false.
	ValidateTCPResolution bool `json:"validate_tcp_resolution"`
}

func (*Endpoint) DeepCopy

func (in *Endpoint) DeepCopy() *Endpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.

func (*Endpoint) DeepCopyInto

func (in *Endpoint) DeepCopyInto(out *Endpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Fluentforward

type Fluentforward struct {
	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 *QueueSettings      `json:"sending_queue,omitempty"`
	RetryConfig *BackOffConfig      `json:"retry_on_failure,omitempty"`
	Kubernetes  *KubernetesMetadata `json:"kubernetes_metadata,omitempty"`
}

Configuration for the fluentforward exporter.

func (*Fluentforward) DeepCopy

func (in *Fluentforward) DeepCopy() *Fluentforward

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Fluentforward.

func (*Fluentforward) DeepCopyInto

func (in *Fluentforward) DeepCopyInto(out *Fluentforward)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GRPCClientConfig

type GRPCClientConfig struct {
	// The target to which the exporter is going to send traces or metrics,
	// using the gRPC protocol. The valid syntax is described at
	// https://github.com/grpc/grpc/blob/master/doc/naming.md.
	Endpoint *string `json:"endpoint"`

	// The compression key for supported compression types within collector.
	Compression *configcompression.Type `json:"compression,omitempty"`

	// TLSSetting struct exposes TLS client configuration.
	TLSSetting *TLSClientSetting `json:"tls,omitempty"`

	// The keepalive parameters for gRPC client. See grpc.WithKeepaliveParams.
	// (https://godoc.org/google.golang.org/grpc#WithKeepaliveParams).
	Keepalive *KeepaliveClientConfig `json:"keepalive,omitempty"`

	// ReadBufferSize for gRPC client. See grpc.WithReadBufferSize.
	// (https://godoc.org/google.golang.org/grpc#WithReadBufferSize).
	ReadBufferSize *int `json:"read_buffer_size,omitempty"`

	// WriteBufferSize for gRPC gRPC. See grpc.WithWriteBufferSize.
	// (https://godoc.org/google.golang.org/grpc#WithWriteBufferSize).
	WriteBufferSize *int `json:"write_buffer_size,omitempty"`

	// WaitForReady parameter configures client to wait for ready state before sending data.
	// (https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md)
	WaitForReady *bool `json:"wait_for_ready,omitempty"`

	// The headers associated with gRPC requests.
	Headers *map[string]string `json:"headers,omitempty"`

	// Sets the balancer in grpclb_policy to discover the servers. Default is pick_first.
	// https://github.com/grpc/grpc-go/blob/master/examples/features/load_balancing/README.md
	BalancerName *string `json:"balancer_name,omitempty"`

	// WithAuthority parameter configures client to rewrite ":authority" header
	// (godoc.org/google.golang.org/grpc#WithAuthority)
	Authority *string `json:"authority,omitempty"`

	// Auth configuration for outgoing RPCs.
	Auth *Authentication `json:"auth,omitempty"`
}

ClientConfig defines common settings for a gRPC client configuration.

func (*GRPCClientConfig) DeepCopy

func (in *GRPCClientConfig) DeepCopy() *GRPCClientConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GRPCClientConfig.

func (*GRPCClientConfig) DeepCopyInto

func (in *GRPCClientConfig) DeepCopyInto(out *GRPCClientConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPClientConfig

type HTTPClientConfig struct {
	// The target URL to send data to (e.g.: http://some.url:9411/v1/traces).
	Endpoint *string `json:"endpoint,omitempty"`

	// ProxyURL setting for the collector
	ProxyURL *string `json:"proxy_url,omitempty"`

	// TLSSetting struct exposes TLS client configuration.
	TLSSetting *TLSClientSetting `json:"tls,omitempty"`

	// ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize.
	ReadBufferSize *int `json:"read_buffer_size,omitempty"`

	// WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize.
	WriteBufferSize *int `json:"write_buffer_size,omitempty"`

	// Timeout parameter configures `http.Client.Timeout`.
	Timeout *time.Duration `json:"timeout,omitempty"`

	// Additional headers attached to each HTTP request sent by the client.
	// Existing header values are overwritten if collision happens.
	// Header values are opaque since they may be sensitive.
	Headers *map[string]configopaque.String `json:"headers,omitempty"`

	// Auth configuration for outgoing HTTP calls.
	Auth *Authentication `json:"auth,omitempty"`

	// The compression key for supported compression types within collector.
	Compression *configcompression.Type `json:"compression,omitempty"`

	// MaxIdleConns is used to set a limit to the maximum idle HTTP connections the client can keep open.
	// There's an already set value, and we want to override it only if an explicit value provided
	MaxIdleConns *int `json:"max_idle_conns,omitempty"`

	// MaxIdleConnsPerHost is used to set a limit to the maximum idle HTTP connections the host can keep open.
	// There's an already set value, and we want to override it only if an explicit value provided
	MaxIdleConnsPerHost *int `json:"max_idle_conns_per_host,omitempty"`

	// MaxConnsPerHost limits the total number of connections per host, including connections in the dialing,
	// active, and idle states.
	// There's an already set value, and we want to override it only if an explicit value provided
	MaxConnsPerHost *int `json:"max_conns_per_host,omitempty"`

	// IdleConnTimeout is the maximum amount of time a connection will remain open before closing itself.
	// There's an already set value, and we want to override it only if an explicit value provided
	IdleConnTimeout *time.Duration `json:"idle_conn_timeout,omitempty"`

	// DisableKeepAlives, if true, disables HTTP keep-alives and will only use the connection to the server
	// for a single HTTP request.
	//
	// WARNING: enabling this option can result in significant overhead establishing a new HTTP(S)
	// connection for every request. Before enabling this option please consider whether changes
	// to idle connection settings can achieve your goal.
	DisableKeepAlives *bool `json:"disable_keep_alives,omitempty"`

	// This is needed in case you run into
	// https://github.com/golang/go/issues/59690
	// https://github.com/golang/go/issues/36026
	// HTTP2ReadIdleTimeout if the connection has been idle for the configured value send a ping frame for health check
	// 0s means no health check will be performed.
	HTTP2ReadIdleTimeout *time.Duration `json:"http2_read_idle_timeout,omitempty"`

	// HTTP2PingTimeout if there's no response to the ping within the configured value, the connection will be closed.
	// If not set or set to 0, it defaults to 15s.
	HTTP2PingTimeout *time.Duration `json:"http2_ping_timeout,omitempty"`
}

ClientConfig defines settings for creating an HTTP client.

func (*HTTPClientConfig) DeepCopy

func (in *HTTPClientConfig) DeepCopy() *HTTPClientConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPClientConfig.

func (*HTTPClientConfig) DeepCopyInto

func (in *HTTPClientConfig) DeepCopyInto(out *HTTPClientConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KeepaliveClientConfig

type KeepaliveClientConfig struct {
	Time                time.Duration `json:"time,omitempty"`
	Timeout             time.Duration `json:"timeout,omitempty"`
	PermitWithoutStream bool          `json:"permit_without_stream,omitempty"`
}

KeepaliveClientConfig exposes the keepalive.ClientParameters to be used by the exporter. Refer to the original data-structure for the meaning of each parameter: https://godoc.org/google.golang.org/grpc/keepalive#ClientParameters

func (*KeepaliveClientConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeepaliveClientConfig.

func (*KeepaliveClientConfig) DeepCopyInto

func (in *KeepaliveClientConfig) DeepCopyInto(out *KeepaliveClientConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubernetesMetadata

type KubernetesMetadata struct {
	Key              string `json:"key"`
	IncludePodLabels bool   `json:"include_pod_labels"`
}

func (*KubernetesMetadata) DeepCopy

func (in *KubernetesMetadata) DeepCopy() *KubernetesMetadata

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesMetadata.

func (*KubernetesMetadata) DeepCopyInto

func (in *KubernetesMetadata) DeepCopyInto(out *KubernetesMetadata)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MemoryLimiter

type MemoryLimiter struct {

	// CheckInterval is the time between measurements of memory usage for the
	// purposes of avoiding going over the limits. Defaults to zero, so no
	// checks will be performed.
	CheckInterval time.Duration `json:"check_interval"`

	// MemoryLimitMiB is the maximum amount of memory, in MiB, targeted to be
	// allocated by the process.
	MemoryLimitMiB uint32 `json:"limit_mib"`

	// MemorySpikeLimitMiB is the maximum, in MiB, spike expected between the
	// measurements of memory usage.
	MemorySpikeLimitMiB uint32 `json:"spike_limit_mib"`

	// MemoryLimitPercentage is the maximum amount of memory, in %, targeted to be
	// allocated by the process. The fixed memory settings MemoryLimitMiB has a higher precedence.
	MemoryLimitPercentage uint32 `json:"limit_percentage"`

	// MemorySpikePercentage is the maximum, in percents against the total memory,
	// spike expected between the measurements of memory usage.
	MemorySpikePercentage uint32 `json:"spike_limit_percentage"`
}

func (*MemoryLimiter) DeepCopy

func (in *MemoryLimiter) DeepCopy() *MemoryLimiter

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryLimiter.

func (*MemoryLimiter) DeepCopyInto

func (in *MemoryLimiter) DeepCopyInto(out *MemoryLimiter)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NamespacedName

type NamespacedName struct {
	Namespace string `json:"namespace"`
	Name      string `json:"name"`
}

func (*NamespacedName) DeepCopy

func (in *NamespacedName) DeepCopy() *NamespacedName

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedName.

func (*NamespacedName) DeepCopyInto

func (in *NamespacedName) DeepCopyInto(out *NamespacedName)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (NamespacedName) String

func (n NamespacedName) String() string

String returns the general purpose string representation

type OTLPGRPC

type OTLPGRPC struct {
	QueueConfig      *QueueSettings `json:"sending_queue,omitempty"`
	RetryConfig      *BackOffConfig `json:"retry_on_failure,omitempty"`
	TimeoutSettings  `json:",inline"`
	GRPCClientConfig `json:",inline"`
}

Configuration for the OTLP gRPC exporter. ref: https://github.com/open-telemetry/opentelemetry-collector/blob/main/exporter/otlpexporter/config.go

func (*OTLPGRPC) DeepCopy

func (in *OTLPGRPC) DeepCopy() *OTLPGRPC

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPGRPC.

func (*OTLPGRPC) DeepCopyInto

func (in *OTLPGRPC) DeepCopyInto(out *OTLPGRPC)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OTLPHTTP

type OTLPHTTP struct {
	QueueConfig      *QueueSettings `json:"sending_queue,omitempty"`
	RetryConfig      *BackOffConfig `json:"retry_on_failure,omitempty"`
	HTTPClientConfig `json:",inline"`
}

Configuration for the OTLP HTTP exporter.

func (*OTLPHTTP) DeepCopy

func (in *OTLPHTTP) DeepCopy() *OTLPHTTP

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPHTTP.

func (*OTLPHTTP) DeepCopyInto

func (in *OTLPHTTP) DeepCopyInto(out *OTLPHTTP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Output

type Output struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   OutputSpec   `json:"spec,omitempty"`
	Status OutputStatus `json:"status,omitempty"`
}

Output is the Schema for the outputs API

func (*Output) DeepCopy

func (in *Output) DeepCopy() *Output

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Output.

func (*Output) DeepCopyInto

func (in *Output) DeepCopyInto(out *Output)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Output) DeepCopyObject

func (in *Output) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Output) NamespacedName

func (o *Output) NamespacedName() NamespacedName

type OutputAuth

type OutputAuth struct {
	BasicAuth  *BasicAuthConfig  `json:"basicauth,omitempty"`
	BearerAuth *BearerAuthConfig `json:"bearerauth,omitempty"`
}

Output Authentication configuration.

func (*OutputAuth) DeepCopy

func (in *OutputAuth) DeepCopy() *OutputAuth

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputAuth.

func (*OutputAuth) DeepCopyInto

func (in *OutputAuth) DeepCopyInto(out *OutputAuth)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OutputList

type OutputList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Output `json:"items"`
}

OutputList contains a list of Output

func (*OutputList) DeepCopy

func (in *OutputList) DeepCopy() *OutputList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputList.

func (*OutputList) DeepCopyInto

func (in *OutputList) DeepCopyInto(out *OutputList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OutputList) DeepCopyObject

func (in *OutputList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type OutputSpec

type OutputSpec struct {
	OTLPGRPC       *OTLPGRPC      `json:"otlp,omitempty"`
	Fluentforward  *Fluentforward `json:"fluentforward,omitempty"`
	OTLPHTTP       *OTLPHTTP      `json:"otlphttp,omitempty"`
	Authentication *OutputAuth    `json:"authentication,omitempty"`
	Batch          *Batch         `json:"batch,omitempty"`
}

OutputSpec defines the desired state of Output

func (*OutputSpec) DeepCopy

func (in *OutputSpec) DeepCopy() *OutputSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputSpec.

func (*OutputSpec) DeepCopyInto

func (in *OutputSpec) DeepCopyInto(out *OutputSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OutputStatus

type OutputStatus struct {
}

OutputStatus defines the observed state of Output

func (*OutputStatus) DeepCopy

func (in *OutputStatus) DeepCopy() *OutputStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputStatus.

func (*OutputStatus) DeepCopyInto

func (in *OutputStatus) DeepCopyInto(out *OutputStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PersistenceConfig

type PersistenceConfig struct {
	// Determines whether file storage is enabled or not.
	EnableFileStorage bool `json:"enableFileStorage,omitempty"`

	// The directory where logs will be persisted.
	// If unset or an invalid path is given, then an OS specific
	// default value will be used.
	// The cluster administrator must ensure that the directory
	// is unique for each tenant.
	// If unset /var/lib/otelcol/file_storage/<tenant_name> will be used.
	Directory string `json:"directory,omitempty"`
}

Configuration for persistence, will be used to generate the filestorage extension.

func (*PersistenceConfig) DeepCopy

func (in *PersistenceConfig) DeepCopy() *PersistenceConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistenceConfig.

func (*PersistenceConfig) DeepCopyInto

func (in *PersistenceConfig) DeepCopyInto(out *PersistenceConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QueueSettings

type QueueSettings struct {
	// NumConsumers is the number of consumers from the queue.
	NumConsumers *int `json:"num_consumers,omitempty"`

	// QueueSize is the maximum number of batches allowed in queue at a given time.
	// Default value is 100.
	QueueSize *int `json:"queue_size,omitempty"`
}

QueueSettings defines configuration for queueing batches before sending to the consumerSender.

func (*QueueSettings) DeepCopy

func (in *QueueSettings) DeepCopy() *QueueSettings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueSettings.

func (*QueueSettings) DeepCopyInto

func (in *QueueSettings) DeepCopyInto(out *QueueSettings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteConfig

type RouteConfig struct {
	// Contains the list of pipelines to use when a record does not meet any of specified conditions.
	DefaultPipelines []string `json:"defaultPipelines,omitempty"` // TODO: Provide users with a guide to determine generated pipeline names

	// ErrorMode specifies how errors are handled while processing a statement
	// vaid options are: ignore, silent, propagate; (default: propagate)
	ErrorMode string `json:"errorMode,omitempty"`

	// Determines whether the connector matches multiple statements or not.
	// If enabled, the payload will be routed to the first pipeline in the table whose routing condition is met.
	// May only be false when used with resource context.
	MatchOnce bool `json:"matchOnce,omitempty"`
}

RouteConfig defines the routing configuration for a tenant it will be used to generate routing connectors.

func (*RouteConfig) DeepCopy

func (in *RouteConfig) DeepCopy() *RouteConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfig.

func (*RouteConfig) DeepCopyInto

func (in *RouteConfig) DeepCopyInto(out *RouteConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type State

type State string
const (
	StateReady  State = "ready"
	StateFailed State = "failed"
)

type Subscription

type Subscription struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SubscriptionSpec   `json:"spec,omitempty"`
	Status SubscriptionStatus `json:"status,omitempty"`
}

Subscription is the Schema for the subscriptions API

func (*Subscription) DeepCopy

func (in *Subscription) DeepCopy() *Subscription

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subscription.

func (*Subscription) DeepCopyInto

func (in *Subscription) DeepCopyInto(out *Subscription)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Subscription) DeepCopyObject

func (in *Subscription) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Subscription) NamespacedName

func (s *Subscription) NamespacedName() NamespacedName

type SubscriptionList

type SubscriptionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Subscription `json:"items"`
}

SubscriptionList contains a list of Subscription

func (*SubscriptionList) DeepCopy

func (in *SubscriptionList) DeepCopy() *SubscriptionList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionList.

func (*SubscriptionList) DeepCopyInto

func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubscriptionList) DeepCopyObject

func (in *SubscriptionList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SubscriptionSpec

type SubscriptionSpec struct {

	// The condition which must be satisfied in order to forward telemetry to the outputs.
	Condition string `json:"condition"`

	// The outputs to which the logs will be routed if the condition evaluates to true.
	Outputs []NamespacedName `json:"outputs"`
}

SubscriptionSpec defines the desired state of Subscription

func (*SubscriptionSpec) DeepCopy

func (in *SubscriptionSpec) DeepCopy() *SubscriptionSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionSpec.

func (*SubscriptionSpec) DeepCopyInto

func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubscriptionStatus

type SubscriptionStatus struct {
	Tenant  string           `json:"tenant,omitempty"`
	Outputs []NamespacedName `json:"outputs,omitempty"`
	State   State            `json:"state,omitempty"`
}

SubscriptionStatus defines the observed state of Subscription

func (*SubscriptionStatus) DeepCopy

func (in *SubscriptionStatus) DeepCopy() *SubscriptionStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionStatus.

func (*SubscriptionStatus) DeepCopyInto

func (in *SubscriptionStatus) DeepCopyInto(out *SubscriptionStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TCPClientSettings

type TCPClientSettings struct {

	// Endpoint to send logs to.
	*Endpoint `json:"endpoint"`

	// Connection Timeout parameter configures `net.Dialer`.
	ConnectionTimeout *string `json:"connection_timeout,omitempty"`

	// TLSSetting struct exposes TLS client configuration.
	TLSSetting *TLSClientSetting `json:"tls,omitempty"`

	// SharedKey is used for authorization with the server that knows it.
	SharedKey *string `json:"shared_key,omitempty"`
}

TCPClientSettings defines common settings for a TCP client.

func (*TCPClientSettings) DeepCopy

func (in *TCPClientSettings) DeepCopy() *TCPClientSettings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TCPClientSettings.

func (*TCPClientSettings) DeepCopyInto

func (in *TCPClientSettings) DeepCopyInto(out *TCPClientSettings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TLSClientSetting

type TLSClientSetting struct {
	// squash ensures fields are correctly decoded in embedded struct.
	TLSSetting `json:",inline"`

	// In gRPC when set to true, this is used to disable the client transport security.
	// See https://godoc.org/google.golang.org/grpc#WithInsecure.
	// In HTTP, this disables verifying the server's certificate chain and host name
	// (InsecureSkipVerify in the tls Config). Please refer to
	// https://godoc.org/crypto/tls#Config for more information.
	// (optional, default false)
	Insecure bool `json:"insecure,omitempty"`

	// InsecureSkipVerify will enable TLS but not verify the certificate.
	InsecureSkipVerify bool `json:"insecure_skip_verify,omitempty"`

	// ServerName requested by client for virtual hosting.
	// This sets the ServerName in the TLSConfig. Please refer to
	// https://godoc.org/crypto/tls#Config for more information. (optional)
	ServerName string `json:"server_name_override,omitempty"`
}

TLSClientSetting contains TLS configurations that are specific to client connections in addition to the common configurations. This should be used by components configuring TLS client connections.

func (*TLSClientSetting) DeepCopy

func (in *TLSClientSetting) DeepCopy() *TLSClientSetting

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSClientSetting.

func (*TLSClientSetting) DeepCopyInto

func (in *TLSClientSetting) DeepCopyInto(out *TLSClientSetting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TLSSetting

type TLSSetting struct {
	// Path to the CA cert. For a client this verifies the server certificate.
	// For a server this verifies client certificates. If empty uses system root CA.
	// (optional)
	CAFile string `json:"ca_file,omitempty"`

	// In memory PEM encoded cert. (optional)
	CAPem string `json:"ca_pem,omitempty"`

	// Path to the TLS cert to use for TLS required connections. (optional)
	CertFile string `json:"cert_file,omitempty"`

	// In memory PEM encoded TLS cert to use for TLS required connections. (optional)
	CertPem string `json:"cert_pem,omitempty"`

	// Path to the TLS key to use for TLS required connections. (optional)
	KeyFile string `json:"key_file,omitempty"`

	// In memory PEM encoded TLS key to use for TLS required connections. (optional)
	KeyPem string `json:"key_pem,omitempty"`

	// MinVersion sets the minimum TLS version that is acceptable.
	// If not set, TLS 1.2 will be used. (optional)
	MinVersion string `json:"min_version,omitempty"`

	// MaxVersion sets the maximum TLS version that is acceptable.
	// If not set, refer to crypto/tls for defaults. (optional)
	MaxVersion string `json:"max_version,omitempty"`

	// ReloadInterval specifies the duration after which the certificate will be reloaded
	// If not set, it will never be reloaded (optional)
	ReloadInterval time.Duration `json:"reload_interval,omitempty"`
}

TLSSetting exposes the common client and server TLS configurations. Note: Since there isn't anything specific to a server connection. Components with server connections should use TLSSetting.

func (*TLSSetting) DeepCopy

func (in *TLSSetting) DeepCopy() *TLSSetting

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSSetting.

func (*TLSSetting) DeepCopyInto

func (in *TLSSetting) DeepCopyInto(out *TLSSetting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Tenant

type Tenant struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TenantSpec   `json:"spec,omitempty"`
	Status TenantStatus `json:"status,omitempty"`
}

Tenant is the Schema for the tenants API

func (*Tenant) DeepCopy

func (in *Tenant) DeepCopy() *Tenant

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tenant.

func (*Tenant) DeepCopyInto

func (in *Tenant) DeepCopyInto(out *Tenant)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Tenant) DeepCopyObject

func (in *Tenant) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TenantList

type TenantList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Tenant `json:"items"`
}

TenantList contains a list of Tenant

func (*TenantList) DeepCopy

func (in *TenantList) DeepCopy() *TenantList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantList.

func (*TenantList) DeepCopyInto

func (in *TenantList) DeepCopyInto(out *TenantList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TenantList) DeepCopyObject

func (in *TenantList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TenantSpec

type TenantSpec struct {
	// Determines the namespaces from which subscriptions are collected by this tenant.
	SubscriptionNamespaceSelectors []metav1.LabelSelector `json:"subscriptionNamespaceSelectors,omitempty"`

	// Determines the namespaces from which logs are collected by this tenant.
	// Cannot be used together with SelectFromAllNamespaces.
	LogSourceNamespaceSelectors []metav1.LabelSelector `json:"logSourceNamespaceSelectors,omitempty"`

	// If true, logs are collected from all namespaces.
	// Cannot be used together with LogSourceNamespaceSelectors.
	SelectFromAllNamespaces bool `json:"selectFromAllNamespaces,omitempty"`
	Transform               `json:"transform,omitempty"`
	RouteConfig             `json:"routeConfig,omitempty"`
	PersistenceConfig       `json:"persistenceConfig,omitempty"`
}

TenantSpec defines the desired state of Tenant

func (*TenantSpec) DeepCopy

func (in *TenantSpec) DeepCopy() *TenantSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantSpec.

func (*TenantSpec) DeepCopyInto

func (in *TenantSpec) DeepCopyInto(out *TenantSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TenantStatus

type TenantStatus struct {
	Subscriptions       []NamespacedName `json:"subscriptions,omitempty"`
	LogSourceNamespaces []string         `json:"logSourceNamespaces,omitempty"`
	ConnectedBridges    []string         `json:"connectedBridges,omitempty"`
	State               State            `json:"state,omitempty"`
}

TenantStatus defines the observed state of Tenant

func (*TenantStatus) DeepCopy

func (in *TenantStatus) DeepCopy() *TenantStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantStatus.

func (*TenantStatus) DeepCopyInto

func (in *TenantStatus) DeepCopyInto(out *TenantStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TimeoutSettings

type TimeoutSettings struct {
	// Timeout is the timeout for every attempt to send data to the backend.
	// A zero timeout means no timeout.
	Timeout *time.Duration `json:"timeout,omitempty"`
}

func (*TimeoutSettings) DeepCopy

func (in *TimeoutSettings) DeepCopy() *TimeoutSettings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TimeoutSettings.

func (*TimeoutSettings) DeepCopyInto

func (in *TimeoutSettings) DeepCopyInto(out *TimeoutSettings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Transform

type Transform struct {
	// Name of the Transform processor
	Name string `json:"name,omitempty"`

	// When FlattenData is true, the processor provides each log record with
	// a distinct copy of its resource and scope. Then, after applying all transformations,
	// the log records are regrouped by resource and scope.
	FlattenData bool `json:"flattenData,omitempty"`

	// ErrorMode specifies how errors are handled while processing a statement
	// vaid options are: ignore, silent, propagate; (default: propagate)
	ErrorMode string `json:"errorMode,omitempty"`

	TraceStatements  []TransformStatement `json:"traceStatements,omitempty"`
	MetricStatements []TransformStatement `json:"metricStatements,omitempty"`
	LogStatements    []TransformStatement `json:"logStatements,omitempty"`
}

Transform represents the Transform processor, which modifies telemetry based on its configuration.

func (*Transform) DeepCopy

func (in *Transform) DeepCopy() *Transform

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Transform.

func (*Transform) DeepCopyInto

func (in *Transform) DeepCopyInto(out *Transform)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TransformStatement

type TransformStatement struct {
	Context    string   `json:"context,omitempty"`
	Conditions []string `json:"conditions,omitempty"`
	Statements []string `json:"statements,omitempty"`
}

TransformStatement represents a single statement in a Transform processor. ref: https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/transformprocessor

func (*TransformStatement) DeepCopy

func (in *TransformStatement) DeepCopy() *TransformStatement

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformStatement.

func (*TransformStatement) DeepCopyInto

func (in *TransformStatement) DeepCopyInto(out *TransformStatement)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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