tracepipeline

package
v0.0.0-...-44822b5 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2023 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AttributeAction

type AttributeAction struct {
	Action string `yaml:"action"`
	Key    string `yaml:"key"`
	Value  string `yaml:"value"`
}

type BatchProcessorConfig

type BatchProcessorConfig struct {
	SendBatchSize    int    `yaml:"send_batch_size"`
	Timeout          string `yaml:"timeout"`
	SendBatchMaxSize int    `yaml:"send_batch_max_size"`
}

type Config

type Config struct {
	BaseName          string
	Namespace         string
	OverrideConfigMap types.NamespacedName

	Deployment DeploymentConfig
	Service    ServiceConfig
	Overrides  overrides.Config
}

type DeploymentConfig

type DeploymentConfig struct {
	Image             string
	PriorityClassName string
	CPULimit          resource.Quantity
	MemoryLimit       resource.Quantity
	CPURequest        resource.Quantity
	MemoryRequest     resource.Quantity
}

type DeploymentProber

type DeploymentProber interface {
	IsReady(ctx context.Context, name types.NamespacedName) (bool, error)
}

type ExporterConfig

type ExporterConfig struct {
	OTLP     OTLPExporterConfig    `yaml:"otlp,omitempty"`
	OTLPHTTP OTLPExporterConfig    `yaml:"otlphttp,omitempty"`
	Logging  LoggingExporterConfig `yaml:"logging,omitempty"`
}

type ExtensionsConfig

type ExtensionsConfig struct {
	HealthCheck map[string]any `yaml:"health_check"`
}

type ExtractK8sMetadataConfig

type ExtractK8sMetadataConfig struct {
	Metadata []string `yaml:"metadata"`
}

type FilterProcessorConfig

type FilterProcessorConfig struct {
	Traces TraceConfig `yaml:"traces,omitempty"`
}

type K8sAttributesProcessorConfig

type K8sAttributesProcessorConfig struct {
	AuthType       string                   `yaml:"auth_type"`
	Passthrough    bool                     `yaml:"passthrough"`
	Extract        ExtractK8sMetadataConfig `yaml:"extract"`
	PodAssociation []PodAssociations        `yaml:"pod_association"`
}

type LoggingConfig

type LoggingConfig struct {
	Level string `yaml:"level"`
}

type LoggingExporterConfig

type LoggingExporterConfig struct {
	Verbosity string `yaml:"verbosity"`
}

type MemoryLimiterConfig

type MemoryLimiterConfig struct {
	CheckInterval        string `yaml:"check_interval"`
	LimitPercentage      int    `yaml:"limit_percentage"`
	SpikeLimitPercentage int    `yaml:"spike_limit_percentage"`
}

type MetricsConfig

type MetricsConfig struct {
	Address string `yaml:"address"`
}

type OTELCollectorConfig

type OTELCollectorConfig struct {
	Receivers  ReceiverConfig    `yaml:"receivers"`
	Exporters  ExporterConfig    `yaml:"exporters"`
	Processors ProcessorsConfig  `yaml:"processors"`
	Extensions ExtensionsConfig  `yaml:"extensions"`
	Service    OTLPServiceConfig `yaml:"service"`
}

type OTLPExporterConfig

type OTLPExporterConfig struct {
	Endpoint       string               `yaml:"endpoint,omitempty"`
	Headers        map[string]string    `yaml:"headers,omitempty"`
	TLS            TLSConfig            `yaml:"tls,omitempty"`
	SendingQueue   SendingQueueConfig   `yaml:"sending_queue,omitempty"`
	RetryOnFailure RetryOnFailureConfig `yaml:"retry_on_failure,omitempty"`
}

type OTLPServiceConfig

type OTLPServiceConfig struct {
	Pipelines  PipelinesConfig `yaml:"pipelines,omitempty"`
	Telemetry  TelemetryConfig `yaml:"telemetry,omitempty"`
	Extensions []string        `yaml:"extensions,omitempty"`
}

type PipelineConfig

type PipelineConfig struct {
	Receivers  []string `yaml:"receivers"`
	Processors []string `yaml:"processors"`
	Exporters  []string `yaml:"exporters"`
}

type PipelinesConfig

type PipelinesConfig struct {
	Traces PipelineConfig `yaml:"traces"`
}

type PodAssociation

type PodAssociation struct {
	From string `yaml:"from"`
	Name string `yaml:"name,omitempty"`
}

type PodAssociations

type PodAssociations struct {
	Sources []PodAssociation `yaml:"sources"`
}

type ProcessorsConfig

type ProcessorsConfig struct {
	Batch         BatchProcessorConfig         `yaml:"batch,omitempty"`
	MemoryLimiter MemoryLimiterConfig          `yaml:"memory_limiter,omitempty"`
	K8sAttributes K8sAttributesProcessorConfig `yaml:"k8sattributes,omitempty"`
	Resource      ResourceProcessorConfig      `yaml:"resource,omitempty"`
	Filter        FilterProcessorConfig        `yaml:"filter,omitempty"`
}

type ReceiverConfig

type ReceiverConfig struct {
	OpenCensus map[string]any `yaml:"opencensus"`
	OTLP       map[string]any `yaml:"otlp"`
}

type Reconciler

type Reconciler struct {
	client.Client

	Scheme *runtime.Scheme
	// contains filtered or unexported fields
}

func NewReconciler

func NewReconciler(client client.Client, config Config, prober DeploymentProber, scheme *runtime.Scheme, handler *overrides.Handler) *Reconciler

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (reconcileResult ctrl.Result, reconcileErr error)

func (*Reconciler) SetupWithManager

func (r *Reconciler) SetupWithManager(mgr ctrl.Manager) error

type ResourceProcessorConfig

type ResourceProcessorConfig struct {
	Attributes []AttributeAction `yaml:"attributes"`
}

type RetryOnFailureConfig

type RetryOnFailureConfig struct {
	Enabled         bool   `yaml:"enabled"`
	InitialInterval string `yaml:"initial_interval"`
	MaxInterval     string `yaml:"max_interval"`
	MaxElapsedTime  string `yaml:"max_elapsed_time"`
}

type SendingQueueConfig

type SendingQueueConfig struct {
	Enabled   bool `yaml:"enabled"`
	QueueSize int  `yaml:"queue_size"`
}

type ServiceConfig

type ServiceConfig struct {
	OTLPServiceName string
}

type TLSConfig

type TLSConfig struct {
	Insecure bool `yaml:"insecure"`
}

type TelemetryConfig

type TelemetryConfig struct {
	Metrics MetricsConfig `yaml:"metrics"`
	Logs    LoggingConfig `yaml:"logs"`
}

type TraceConfig

type TraceConfig struct {
	Span []string `yaml:"span"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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