config

package
v0.44.0 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2025 License: Apache-2.0 Imports: 6 Imported by: 1

Documentation

Index

Constants

View Source
const (
	AWSClusterKind         = "AWSCluster"
	AWSClusterKindProvider = "capa"

	AWSManagedClusterKind         = "AWSManagedCluster"
	AWSManagedClusterKindProvider = "eks"

	AzureClusterKind         = "AzureCluster"
	AzureClusterKindProvider = "capz"

	AzureManagedClusterKind         = "AzureManagedCluster"
	AzureManagedClusterKindProvider = "aks"

	VCDClusterKind         = "VCDCluster"
	VCDClusterKindProvider = "cloud-director"

	VSphereClusterKind         = "VSphereCluster"
	VSphereClusterKindProvider = "vsphere"

	GCPClusterKind         = "GCPCluster"
	GCPClusterKindProvider = "gcp"

	GCPManagedClusterKind         = "GCPManagedCluster"
	GCPManagedClusterKindProvider = "gke"
)
View Source
const MonitoringLabel = "giantswarm.io/monitoring"

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterConfig added in v0.43.0

type ClusterConfig struct {
	// BaseDomain is the base domain of the management cluster.
	BaseDomain string
	// Customer is the customer name of the management cluster.
	Customer string
	// InsecureCA is a flag to indicate if the management cluster has an insecure CA that should be trusted
	InsecureCA bool
	// Name is the name of the management cluster.
	Name string
	// Pipeline is the pipeline name of the management cluster.
	Pipeline string
	// Region is the region of the management cluster.
	Region string
}

ClusterConfig represents the configuration for the management cluster.

func (ClusterConfig) GetClusterProvider added in v0.43.0

func (c ClusterConfig) GetClusterProvider(cluster *clusterv1.Cluster) (string, error)

GetClusterProvider returns the provider for the given cluster.

func (ClusterConfig) GetClusterType added in v0.43.0

func (c ClusterConfig) GetClusterType(cluster *clusterv1.Cluster) string

GetClusterType returns the type of the cluster (management_cluster or workload_cluster).

func (ClusterConfig) IsWorkloadCluster added in v0.43.0

func (c ClusterConfig) IsWorkloadCluster(cluster *clusterv1.Cluster) bool

IsWorkloadCluster determines if the given cluster is a workload cluster (not the management cluster).

func (ClusterConfig) Validate added in v0.43.0

func (c ClusterConfig) Validate() error

Validate validates the cluster configuration.

type Config

type Config struct {
	// Operator-level configuration
	Operator OperatorConfig

	// Subsystem configurations
	Logging    LoggingConfig
	Grafana    GrafanaConfig
	Monitoring MonitoringConfig
	Tracing    TracingConfig

	// Management cluster configuration
	Cluster ClusterConfig

	// Environment and runtime settings
	Environment EnvironmentConfig
}

Config represents the main configuration for the observability operator.

func (Config) Validate added in v0.43.0

func (c Config) Validate() error

Validate validates the entire configuration.

type EnvironmentConfig added in v0.43.0

type EnvironmentConfig struct {
	OpsgenieApiKey string `env:"OPSGENIE_API_KEY,required=true"`
}

EnvironmentConfig represents environment-specific configuration.

type GrafanaConfig added in v0.43.0

type GrafanaConfig struct {
	URL *url.URL
}

GrafanaConfig represents the Grafana-specific configuration.

func (GrafanaConfig) Validate added in v0.43.0

func (c GrafanaConfig) Validate() error

Validate validates the Grafana configuration

type LoggingConfig added in v0.43.0

type LoggingConfig struct {
	Enabled bool
}

LoggingConfig represents the configuration used by the logging package.

func (LoggingConfig) Validate added in v0.43.0

func (c LoggingConfig) Validate() error

Validate validates the logging configuration

type MonitoringConfig added in v0.43.0

type MonitoringConfig struct {
	Enabled bool

	AlertmanagerSecretName string
	AlertmanagerURL        string
	AlertmanagerEnabled    bool

	MonitoringAgent         string
	DefaultShardingStrategy sharding.Strategy
	// WALTruncateFrequency is the frequency at which the WAL segments should be truncated.
	WALTruncateFrequency time.Duration
	PrometheusVersion    string
	MetricsQueryURL      string
	QueueConfig          QueueConfig
}

MonitoringConfig represents the configuration used by the monitoring package.

func (MonitoringConfig) IsMonitored added in v0.43.0

func (c MonitoringConfig) IsMonitored(cluster *clusterv1.Cluster) bool

IsMonitored should be enabled when all conditions are met:

  • global monitoring flag is enabled
  • monitoring label is not set or is set to true on the cluster object

func (MonitoringConfig) Validate added in v0.43.0

func (c MonitoringConfig) Validate() error

Validate validates the monitoring configuration

type OperatorConfig added in v0.43.0

type OperatorConfig struct {
	MetricsAddr          string
	EnableLeaderElection bool
	ProbeAddr            string
	SecureMetrics        bool
	EnableHTTP2          bool
	WebhookCertPath      string
	OperatorNamespace    string
}

OperatorConfig represents the operator-level configuration.

func (OperatorConfig) Validate added in v0.43.0

func (c OperatorConfig) Validate() error

Validate validates the operator configuration

type QueueConfig added in v0.43.0

type QueueConfig struct {
	BatchSendDeadline *string
	Capacity          *int
	MaxBackoff        *string
	MaxSamplesPerSend *int
	MaxShards         *int
	MinBackoff        *string
	MinShards         *int
	RetryOnHttp429    *bool
	SampleAgeLimit    *string
}

QueueConfig represents the configuration for the remote write queue.

type TracingConfig added in v0.43.0

type TracingConfig struct {
	Enabled bool
}

TracingConfig represents the configuration for tracing support in Grafana.

func (TracingConfig) Validate added in v0.43.0

func (c TracingConfig) Validate() error

Validate validates the tracing configuration

Jump to

Keyboard shortcuts

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