v1alpha1

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=slo.grafana.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "slo.grafana.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	SLO_Kind             = "SLO"
	SLO_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SLO_Kind}.String()
	SLO_KindAPIVersion   = SLO_Kind + "." + CRDGroupVersion.String()
	SLO_GroupVersionKind = CRDGroupVersion.WithKind(SLO_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AlertingInitParameters

type AlertingInitParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations will be attached to all alerts generated by any of these rules.
	Annotation []AnnotationInitParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Fast Burn alerts (see below for nested schema)
	// Alerting Rules generated for Fast Burn alerts
	Fastburn []FastburnInitParameters `json:"fastburn,omitempty" tf:"fastburn,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels will be attached to all alerts generated by any of these rules.
	Label []AlertingLabelInitParameters `json:"label,omitempty" tf:"label,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Slow Burn alerts (see below for nested schema)
	// Alerting Rules generated for Slow Burn alerts
	Slowburn []SlowburnInitParameters `json:"slowburn,omitempty" tf:"slowburn,omitempty"`
}

func (*AlertingInitParameters) DeepCopy

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

func (*AlertingInitParameters) DeepCopyInto

func (in *AlertingInitParameters) DeepCopyInto(out *AlertingInitParameters)

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

type AlertingLabelInitParameters

type AlertingLabelInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*AlertingLabelInitParameters) DeepCopy

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

func (*AlertingLabelInitParameters) DeepCopyInto

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

type AlertingLabelObservation

type AlertingLabelObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*AlertingLabelObservation) DeepCopy

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

func (*AlertingLabelObservation) DeepCopyInto

func (in *AlertingLabelObservation) DeepCopyInto(out *AlertingLabelObservation)

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

type AlertingLabelParameters

type AlertingLabelParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*AlertingLabelParameters) DeepCopy

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

func (*AlertingLabelParameters) DeepCopyInto

func (in *AlertingLabelParameters) DeepCopyInto(out *AlertingLabelParameters)

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

type AlertingObservation

type AlertingObservation struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations will be attached to all alerts generated by any of these rules.
	Annotation []AnnotationObservation `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Fast Burn alerts (see below for nested schema)
	// Alerting Rules generated for Fast Burn alerts
	Fastburn []FastburnObservation `json:"fastburn,omitempty" tf:"fastburn,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels will be attached to all alerts generated by any of these rules.
	Label []AlertingLabelObservation `json:"label,omitempty" tf:"label,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Slow Burn alerts (see below for nested schema)
	// Alerting Rules generated for Slow Burn alerts
	Slowburn []SlowburnObservation `json:"slowburn,omitempty" tf:"slowburn,omitempty"`
}

func (*AlertingObservation) DeepCopy

func (in *AlertingObservation) DeepCopy() *AlertingObservation

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

func (*AlertingObservation) DeepCopyInto

func (in *AlertingObservation) DeepCopyInto(out *AlertingObservation)

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

type AlertingParameters

type AlertingParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations will be attached to all alerts generated by any of these rules.
	// +kubebuilder:validation:Optional
	Annotation []AnnotationParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Fast Burn alerts (see below for nested schema)
	// Alerting Rules generated for Fast Burn alerts
	// +kubebuilder:validation:Optional
	Fastburn []FastburnParameters `json:"fastburn,omitempty" tf:"fastburn,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels will be attached to all alerts generated by any of these rules.
	// +kubebuilder:validation:Optional
	Label []AlertingLabelParameters `json:"label,omitempty" tf:"label,omitempty"`

	// (Block List, Max: 1) Alerting Rules generated for Slow Burn alerts (see below for nested schema)
	// Alerting Rules generated for Slow Burn alerts
	// +kubebuilder:validation:Optional
	Slowburn []SlowburnParameters `json:"slowburn,omitempty" tf:"slowburn,omitempty"`
}

func (*AlertingParameters) DeepCopy

func (in *AlertingParameters) DeepCopy() *AlertingParameters

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

func (*AlertingParameters) DeepCopyInto

func (in *AlertingParameters) DeepCopyInto(out *AlertingParameters)

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

type AnnotationInitParameters

type AnnotationInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*AnnotationInitParameters) DeepCopy

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

func (*AnnotationInitParameters) DeepCopyInto

func (in *AnnotationInitParameters) DeepCopyInto(out *AnnotationInitParameters)

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

type AnnotationObservation

type AnnotationObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*AnnotationObservation) DeepCopy

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

func (*AnnotationObservation) DeepCopyInto

func (in *AnnotationObservation) DeepCopyInto(out *AnnotationObservation)

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

type AnnotationParameters

type AnnotationParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*AnnotationParameters) DeepCopy

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

func (*AnnotationParameters) DeepCopyInto

func (in *AnnotationParameters) DeepCopyInto(out *AnnotationParameters)

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

type DestinationDatasourceInitParameters

type DestinationDatasourceInitParameters struct {

	// Reference to a DataSource in oss to populate uid.
	// +kubebuilder:validation:Optional
	Ref *v1.Reference `json:"ref,omitempty" tf:"-"`

	// Selector for a DataSource in oss to populate uid.
	// +kubebuilder:validation:Optional
	Selector *v1.Selector `json:"selector,omitempty" tf:"-"`

	// (String) UID for the Mimir Datasource
	// UID for the Mimir Datasource
	// +crossplane:generate:reference:type=github.com/grafana/crossplane-provider-grafana/apis/oss/v1alpha1.DataSource
	// +crossplane:generate:reference:extractor=github.com/grafana/crossplane-provider-grafana/config/grafana.OptionalFieldExtractor("uid")
	// +crossplane:generate:reference:refFieldName=Ref
	// +crossplane:generate:reference:selectorFieldName=Selector
	UID *string `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*DestinationDatasourceInitParameters) DeepCopy

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

func (*DestinationDatasourceInitParameters) DeepCopyInto

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

type DestinationDatasourceObservation

type DestinationDatasourceObservation struct {

	// (String) UID for the Mimir Datasource
	// UID for the Mimir Datasource
	UID *string `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*DestinationDatasourceObservation) DeepCopy

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

func (*DestinationDatasourceObservation) DeepCopyInto

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

type DestinationDatasourceParameters

type DestinationDatasourceParameters struct {

	// Reference to a DataSource in oss to populate uid.
	// +kubebuilder:validation:Optional
	Ref *v1.Reference `json:"ref,omitempty" tf:"-"`

	// Selector for a DataSource in oss to populate uid.
	// +kubebuilder:validation:Optional
	Selector *v1.Selector `json:"selector,omitempty" tf:"-"`

	// (String) UID for the Mimir Datasource
	// UID for the Mimir Datasource
	// +crossplane:generate:reference:type=github.com/grafana/crossplane-provider-grafana/apis/oss/v1alpha1.DataSource
	// +crossplane:generate:reference:extractor=github.com/grafana/crossplane-provider-grafana/config/grafana.OptionalFieldExtractor("uid")
	// +crossplane:generate:reference:refFieldName=Ref
	// +crossplane:generate:reference:selectorFieldName=Selector
	// +kubebuilder:validation:Optional
	UID *string `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*DestinationDatasourceParameters) DeepCopy

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

func (*DestinationDatasourceParameters) DeepCopyInto

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

type FastburnAnnotationInitParameters

type FastburnAnnotationInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*FastburnAnnotationInitParameters) DeepCopy

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

func (*FastburnAnnotationInitParameters) DeepCopyInto

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

type FastburnAnnotationObservation

type FastburnAnnotationObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*FastburnAnnotationObservation) DeepCopy

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

func (*FastburnAnnotationObservation) DeepCopyInto

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

type FastburnAnnotationParameters

type FastburnAnnotationParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*FastburnAnnotationParameters) DeepCopy

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

func (*FastburnAnnotationParameters) DeepCopyInto

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

type FastburnInitParameters

type FastburnInitParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Fast Burn alerts.
	Annotation []FastburnAnnotationInitParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Fast Burn alerts.
	Label []LabelInitParameters `json:"label,omitempty" tf:"label,omitempty"`
}

func (*FastburnInitParameters) DeepCopy

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

func (*FastburnInitParameters) DeepCopyInto

func (in *FastburnInitParameters) DeepCopyInto(out *FastburnInitParameters)

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

type FastburnObservation

type FastburnObservation struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Fast Burn alerts.
	Annotation []FastburnAnnotationObservation `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Fast Burn alerts.
	Label []LabelObservation `json:"label,omitempty" tf:"label,omitempty"`
}

func (*FastburnObservation) DeepCopy

func (in *FastburnObservation) DeepCopy() *FastburnObservation

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

func (*FastburnObservation) DeepCopyInto

func (in *FastburnObservation) DeepCopyInto(out *FastburnObservation)

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

type FastburnParameters

type FastburnParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Fast Burn alerts.
	// +kubebuilder:validation:Optional
	Annotation []FastburnAnnotationParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Fast Burn alerts.
	// +kubebuilder:validation:Optional
	Label []LabelParameters `json:"label,omitempty" tf:"label,omitempty"`
}

func (*FastburnParameters) DeepCopy

func (in *FastburnParameters) DeepCopy() *FastburnParameters

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

func (*FastburnParameters) DeepCopyInto

func (in *FastburnParameters) DeepCopyInto(out *FastburnParameters)

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

type FreeformInitParameters

type FreeformInitParameters struct {

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Freeform Query Field
	Query *string `json:"query,omitempty" tf:"query,omitempty"`
}

func (*FreeformInitParameters) DeepCopy

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

func (*FreeformInitParameters) DeepCopyInto

func (in *FreeformInitParameters) DeepCopyInto(out *FreeformInitParameters)

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

type FreeformObservation

type FreeformObservation struct {

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Freeform Query Field
	Query *string `json:"query,omitempty" tf:"query,omitempty"`
}

func (*FreeformObservation) DeepCopy

func (in *FreeformObservation) DeepCopy() *FreeformObservation

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

func (*FreeformObservation) DeepCopyInto

func (in *FreeformObservation) DeepCopyInto(out *FreeformObservation)

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

type FreeformParameters

type FreeformParameters struct {

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Freeform Query Field
	// +kubebuilder:validation:Optional
	Query *string `json:"query" tf:"query,omitempty"`
}

func (*FreeformParameters) DeepCopy

func (in *FreeformParameters) DeepCopy() *FreeformParameters

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

func (*FreeformParameters) DeepCopyInto

func (in *FreeformParameters) DeepCopyInto(out *FreeformParameters)

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

type LabelInitParameters

type LabelInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*LabelInitParameters) DeepCopy

func (in *LabelInitParameters) DeepCopy() *LabelInitParameters

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

func (*LabelInitParameters) DeepCopyInto

func (in *LabelInitParameters) DeepCopyInto(out *LabelInitParameters)

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

type LabelObservation

type LabelObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*LabelObservation) DeepCopy

func (in *LabelObservation) DeepCopy() *LabelObservation

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

func (*LabelObservation) DeepCopyInto

func (in *LabelObservation) DeepCopyInto(out *LabelObservation)

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

type LabelParameters

type LabelParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*LabelParameters) DeepCopy

func (in *LabelParameters) DeepCopy() *LabelParameters

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

func (*LabelParameters) DeepCopyInto

func (in *LabelParameters) DeepCopyInto(out *LabelParameters)

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

type ObjectivesInitParameters

type ObjectivesInitParameters struct {

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *float64 `json:"value,omitempty" tf:"value,omitempty"`

	// parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	// A Prometheus-parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	Window *string `json:"window,omitempty" tf:"window,omitempty"`
}

func (*ObjectivesInitParameters) DeepCopy

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

func (*ObjectivesInitParameters) DeepCopyInto

func (in *ObjectivesInitParameters) DeepCopyInto(out *ObjectivesInitParameters)

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

type ObjectivesObservation

type ObjectivesObservation struct {

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *float64 `json:"value,omitempty" tf:"value,omitempty"`

	// parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	// A Prometheus-parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	Window *string `json:"window,omitempty" tf:"window,omitempty"`
}

func (*ObjectivesObservation) DeepCopy

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

func (*ObjectivesObservation) DeepCopyInto

func (in *ObjectivesObservation) DeepCopyInto(out *ObjectivesObservation)

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

type ObjectivesParameters

type ObjectivesParameters struct {

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *float64 `json:"value" tf:"value,omitempty"`

	// parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	// A Prometheus-parsable time duration string like 24h, 60m. This is the time window the objective is measured over.
	// +kubebuilder:validation:Optional
	Window *string `json:"window" tf:"window,omitempty"`
}

func (*ObjectivesParameters) DeepCopy

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

func (*ObjectivesParameters) DeepCopyInto

func (in *ObjectivesParameters) DeepCopyInto(out *ObjectivesParameters)

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

type QueryInitParameters

type QueryInitParameters struct {

	// (Block List, Max: 1) (see below for nested schema)
	Freeform []FreeformInitParameters `json:"freeform,omitempty" tf:"freeform,omitempty"`

	// (Block List, Max: 1) (see below for nested schema)
	Ratio []RatioInitParameters `json:"ratio,omitempty" tf:"ratio,omitempty"`

	// (String) Query type must be one of: "freeform", "query", "ratio", or "threshold"
	// Query type must be one of: "freeform", "query", "ratio", or "threshold"
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*QueryInitParameters) DeepCopy

func (in *QueryInitParameters) DeepCopy() *QueryInitParameters

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

func (*QueryInitParameters) DeepCopyInto

func (in *QueryInitParameters) DeepCopyInto(out *QueryInitParameters)

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

type QueryObservation

type QueryObservation struct {

	// (Block List, Max: 1) (see below for nested schema)
	Freeform []FreeformObservation `json:"freeform,omitempty" tf:"freeform,omitempty"`

	// (Block List, Max: 1) (see below for nested schema)
	Ratio []RatioObservation `json:"ratio,omitempty" tf:"ratio,omitempty"`

	// (String) Query type must be one of: "freeform", "query", "ratio", or "threshold"
	// Query type must be one of: "freeform", "query", "ratio", or "threshold"
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*QueryObservation) DeepCopy

func (in *QueryObservation) DeepCopy() *QueryObservation

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

func (*QueryObservation) DeepCopyInto

func (in *QueryObservation) DeepCopyInto(out *QueryObservation)

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

type QueryParameters

type QueryParameters struct {

	// (Block List, Max: 1) (see below for nested schema)
	// +kubebuilder:validation:Optional
	Freeform []FreeformParameters `json:"freeform,omitempty" tf:"freeform,omitempty"`

	// (Block List, Max: 1) (see below for nested schema)
	// +kubebuilder:validation:Optional
	Ratio []RatioParameters `json:"ratio,omitempty" tf:"ratio,omitempty"`

	// (String) Query type must be one of: "freeform", "query", "ratio", or "threshold"
	// Query type must be one of: "freeform", "query", "ratio", or "threshold"
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*QueryParameters) DeepCopy

func (in *QueryParameters) DeepCopy() *QueryParameters

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

func (*QueryParameters) DeepCopyInto

func (in *QueryParameters) DeepCopyInto(out *QueryParameters)

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

type RatioInitParameters

type RatioInitParameters struct {

	// label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	// Defines Group By Labels used for per-label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	GroupByLabels []*string `json:"groupByLabels,omitempty" tf:"group_by_labels,omitempty"`

	// (String) Counter metric for success events (numerator)
	// Counter metric for success events (numerator)
	SuccessMetric *string `json:"successMetric,omitempty" tf:"success_metric,omitempty"`

	// (String) Metric for total events (denominator)
	// Metric for total events (denominator)
	TotalMetric *string `json:"totalMetric,omitempty" tf:"total_metric,omitempty"`
}

func (*RatioInitParameters) DeepCopy

func (in *RatioInitParameters) DeepCopy() *RatioInitParameters

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

func (*RatioInitParameters) DeepCopyInto

func (in *RatioInitParameters) DeepCopyInto(out *RatioInitParameters)

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

type RatioObservation

type RatioObservation struct {

	// label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	// Defines Group By Labels used for per-label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	GroupByLabels []*string `json:"groupByLabels,omitempty" tf:"group_by_labels,omitempty"`

	// (String) Counter metric for success events (numerator)
	// Counter metric for success events (numerator)
	SuccessMetric *string `json:"successMetric,omitempty" tf:"success_metric,omitempty"`

	// (String) Metric for total events (denominator)
	// Metric for total events (denominator)
	TotalMetric *string `json:"totalMetric,omitempty" tf:"total_metric,omitempty"`
}

func (*RatioObservation) DeepCopy

func (in *RatioObservation) DeepCopy() *RatioObservation

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

func (*RatioObservation) DeepCopyInto

func (in *RatioObservation) DeepCopyInto(out *RatioObservation)

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

type RatioParameters

type RatioParameters struct {

	// label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	// Defines Group By Labels used for per-label alerting. These appear as variables on SLO dashboards to enable filtering and aggregation. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	// +kubebuilder:validation:Optional
	GroupByLabels []*string `json:"groupByLabels,omitempty" tf:"group_by_labels,omitempty"`

	// (String) Counter metric for success events (numerator)
	// Counter metric for success events (numerator)
	// +kubebuilder:validation:Optional
	SuccessMetric *string `json:"successMetric" tf:"success_metric,omitempty"`

	// (String) Metric for total events (denominator)
	// Metric for total events (denominator)
	// +kubebuilder:validation:Optional
	TotalMetric *string `json:"totalMetric" tf:"total_metric,omitempty"`
}

func (*RatioParameters) DeepCopy

func (in *RatioParameters) DeepCopy() *RatioParameters

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

func (*RatioParameters) DeepCopyInto

func (in *RatioParameters) DeepCopyInto(out *RatioParameters)

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

type SLO

type SLO struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.description) || (has(self.initProvider) && has(self.initProvider.description))",message="spec.forProvider.description is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectives) || (has(self.initProvider) && has(self.initProvider.objectives))",message="spec.forProvider.objectives is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.query) || (has(self.initProvider) && has(self.initProvider.query))",message="spec.forProvider.query is a required parameter"
	Spec   SLOSpec   `json:"spec"`
	Status SLOStatus `json:"status,omitempty"`
}

SLO is the Schema for the SLOs API. Resource manages Grafana SLOs. Official documentation https://grafana.com/docs/grafana-cloud/alerting-and-irm/slo/API documentation https://grafana.com/docs/grafana-cloud/alerting-and-irm/slo/api/Additional Information On Alerting Rule Annotations and Labels https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/#templating/ +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,grafana}

func (*SLO) DeepCopy

func (in *SLO) DeepCopy() *SLO

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

func (*SLO) DeepCopyInto

func (in *SLO) DeepCopyInto(out *SLO)

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

func (*SLO) DeepCopyObject

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

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

func (*SLO) GetCondition

func (mg *SLO) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SLO.

func (*SLO) GetConnectionDetailsMapping

func (tr *SLO) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SLO

func (*SLO) GetDeletionPolicy

func (mg *SLO) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SLO.

func (*SLO) GetID

func (tr *SLO) GetID() string

GetID returns ID of underlying Terraform resource of this SLO

func (*SLO) GetInitParameters

func (tr *SLO) GetInitParameters() (map[string]any, error)

GetInitParameters of this SLO

func (*SLO) GetManagementPolicies

func (mg *SLO) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SLO.

func (*SLO) GetMergedParameters

func (tr *SLO) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SLO

func (*SLO) GetObservation

func (tr *SLO) GetObservation() (map[string]any, error)

GetObservation of this SLO

func (*SLO) GetParameters

func (tr *SLO) GetParameters() (map[string]any, error)

GetParameters of this SLO

func (*SLO) GetProviderConfigReference

func (mg *SLO) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SLO.

func (*SLO) GetPublishConnectionDetailsTo

func (mg *SLO) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this SLO.

func (*SLO) GetTerraformResourceType

func (mg *SLO) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SLO

func (*SLO) GetTerraformSchemaVersion

func (tr *SLO) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SLO) GetWriteConnectionSecretToReference

func (mg *SLO) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SLO.

func (*SLO) Hub

func (tr *SLO) Hub()

Hub marks this type as a conversion hub.

func (*SLO) LateInitialize

func (tr *SLO) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SLO using its observed tfState. returns True if there are any spec changes for the resource.

func (*SLO) ResolveReferences

func (mg *SLO) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this SLO.

func (*SLO) SetConditions

func (mg *SLO) SetConditions(c ...xpv1.Condition)

SetConditions of this SLO.

func (*SLO) SetDeletionPolicy

func (mg *SLO) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SLO.

func (*SLO) SetManagementPolicies

func (mg *SLO) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SLO.

func (*SLO) SetObservation

func (tr *SLO) SetObservation(obs map[string]any) error

SetObservation for this SLO

func (*SLO) SetParameters

func (tr *SLO) SetParameters(params map[string]any) error

SetParameters for this SLO

func (*SLO) SetProviderConfigReference

func (mg *SLO) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SLO.

func (*SLO) SetPublishConnectionDetailsTo

func (mg *SLO) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this SLO.

func (*SLO) SetWriteConnectionSecretToReference

func (mg *SLO) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SLO.

type SLOInitParameters

type SLOInitParameters struct {

	// term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating. (see below for nested schema)
	// Configures the alerting rules that will be generated for each
	// time window associated with the SLO. Grafana SLOs can generate
	// alerts when the short-term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating.
	Alerting []AlertingInitParameters `json:"alerting,omitempty" tf:"alerting,omitempty"`

	// text field that can provide more context to an SLO.
	// Description is a free-text field that can provide more context to an SLO.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// (Block List, Max: 1) Destination Datasource sets the datasource defined for an SLO (see below for nested schema)
	// Destination Datasource sets the datasource defined for an SLO
	DestinationDatasource []DestinationDatasourceInitParameters `json:"destinationDatasource,omitempty" tf:"destination_datasource,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Additional labels that will be attached to all metrics generated from the query. These labels are useful for grouping SLOs in dashboard views that you create by hand. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	Label []SLOLabelInitParameters `json:"label,omitempty" tf:"label,omitempty"`

	// (String) Name should be a short description of your indicator. Consider names like "API Availability"
	// Name should be a short description of your indicator. Consider names like "API Availability"
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// (Block List, Min: 1) Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget. (see below for nested schema)
	// Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget.
	Objectives []ObjectivesInitParameters `json:"objectives,omitempty" tf:"objectives,omitempty"`

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported.
	Query []QueryInitParameters `json:"query,omitempty" tf:"query,omitempty"`
}

func (*SLOInitParameters) DeepCopy

func (in *SLOInitParameters) DeepCopy() *SLOInitParameters

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

func (*SLOInitParameters) DeepCopyInto

func (in *SLOInitParameters) DeepCopyInto(out *SLOInitParameters)

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

type SLOLabelInitParameters

type SLOLabelInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SLOLabelInitParameters) DeepCopy

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

func (*SLOLabelInitParameters) DeepCopyInto

func (in *SLOLabelInitParameters) DeepCopyInto(out *SLOLabelInitParameters)

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

type SLOLabelObservation

type SLOLabelObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SLOLabelObservation) DeepCopy

func (in *SLOLabelObservation) DeepCopy() *SLOLabelObservation

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

func (*SLOLabelObservation) DeepCopyInto

func (in *SLOLabelObservation) DeepCopyInto(out *SLOLabelObservation)

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

type SLOLabelParameters

type SLOLabelParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*SLOLabelParameters) DeepCopy

func (in *SLOLabelParameters) DeepCopy() *SLOLabelParameters

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

func (*SLOLabelParameters) DeepCopyInto

func (in *SLOLabelParameters) DeepCopyInto(out *SLOLabelParameters)

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

type SLOList

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

SLOList contains a list of SLOs

func (*SLOList) DeepCopy

func (in *SLOList) DeepCopy() *SLOList

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

func (*SLOList) DeepCopyInto

func (in *SLOList) DeepCopyInto(out *SLOList)

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

func (*SLOList) DeepCopyObject

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

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

func (*SLOList) GetItems

func (l *SLOList) GetItems() []resource.Managed

GetItems of this SLOList.

type SLOObservation

type SLOObservation struct {

	// term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating. (see below for nested schema)
	// Configures the alerting rules that will be generated for each
	// time window associated with the SLO. Grafana SLOs can generate
	// alerts when the short-term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating.
	Alerting []AlertingObservation `json:"alerting,omitempty" tf:"alerting,omitempty"`

	// text field that can provide more context to an SLO.
	// Description is a free-text field that can provide more context to an SLO.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// (Block List, Max: 1) Destination Datasource sets the datasource defined for an SLO (see below for nested schema)
	// Destination Datasource sets the datasource defined for an SLO
	DestinationDatasource []DestinationDatasourceObservation `json:"destinationDatasource,omitempty" tf:"destination_datasource,omitempty"`

	// (String) The ID of this resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Additional labels that will be attached to all metrics generated from the query. These labels are useful for grouping SLOs in dashboard views that you create by hand. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	Label []SLOLabelObservation `json:"label,omitempty" tf:"label,omitempty"`

	// (String) Name should be a short description of your indicator. Consider names like "API Availability"
	// Name should be a short description of your indicator. Consider names like "API Availability"
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// (Block List, Min: 1) Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget. (see below for nested schema)
	// Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget.
	Objectives []ObjectivesObservation `json:"objectives,omitempty" tf:"objectives,omitempty"`

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported.
	Query []QueryObservation `json:"query,omitempty" tf:"query,omitempty"`
}

func (*SLOObservation) DeepCopy

func (in *SLOObservation) DeepCopy() *SLOObservation

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

func (*SLOObservation) DeepCopyInto

func (in *SLOObservation) DeepCopyInto(out *SLOObservation)

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

type SLOParameters

type SLOParameters struct {

	// term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating. (see below for nested schema)
	// Configures the alerting rules that will be generated for each
	// time window associated with the SLO. Grafana SLOs can generate
	// alerts when the short-term error budget burn is very high, the
	// long-term error budget burn rate is high, or when the remaining
	// error budget is below a certain threshold. Annotations and Labels support templating.
	// +kubebuilder:validation:Optional
	Alerting []AlertingParameters `json:"alerting,omitempty" tf:"alerting,omitempty"`

	// text field that can provide more context to an SLO.
	// Description is a free-text field that can provide more context to an SLO.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// (Block List, Max: 1) Destination Datasource sets the datasource defined for an SLO (see below for nested schema)
	// Destination Datasource sets the datasource defined for an SLO
	// +kubebuilder:validation:Optional
	DestinationDatasource []DestinationDatasourceParameters `json:"destinationDatasource,omitempty" tf:"destination_datasource,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Additional labels that will be attached to all metrics generated from the query. These labels are useful for grouping SLOs in dashboard views that you create by hand. Labels must adhere to Prometheus label name schema - "^[a-zA-Z_][a-zA-Z0-9_]*$"
	// +kubebuilder:validation:Optional
	Label []SLOLabelParameters `json:"label,omitempty" tf:"label,omitempty"`

	// (String) Name should be a short description of your indicator. Consider names like "API Availability"
	// Name should be a short description of your indicator. Consider names like "API Availability"
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// (Block List, Min: 1) Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget. (see below for nested schema)
	// Over each rolling time window, the remaining error budget will be calculated, and separate alerts can be generated for each time window based on the SLO burn rate or remaining error budget.
	// +kubebuilder:validation:Optional
	Objectives []ObjectivesParameters `json:"objectives,omitempty" tf:"objectives,omitempty"`

	// (Block List, Min: 1) Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported. (see below for nested schema)
	// Query describes the indicator that will be measured against the objective. Freeform Query types are currently supported.
	// +kubebuilder:validation:Optional
	Query []QueryParameters `json:"query,omitempty" tf:"query,omitempty"`
}

func (*SLOParameters) DeepCopy

func (in *SLOParameters) DeepCopy() *SLOParameters

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

func (*SLOParameters) DeepCopyInto

func (in *SLOParameters) DeepCopyInto(out *SLOParameters)

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

type SLOSpec

type SLOSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SLOParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider SLOInitParameters `json:"initProvider,omitempty"`
}

SLOSpec defines the desired state of SLO

func (*SLOSpec) DeepCopy

func (in *SLOSpec) DeepCopy() *SLOSpec

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

func (*SLOSpec) DeepCopyInto

func (in *SLOSpec) DeepCopyInto(out *SLOSpec)

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

type SLOStatus

type SLOStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SLOObservation `json:"atProvider,omitempty"`
}

SLOStatus defines the observed state of SLO.

func (*SLOStatus) DeepCopy

func (in *SLOStatus) DeepCopy() *SLOStatus

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

func (*SLOStatus) DeepCopyInto

func (in *SLOStatus) DeepCopyInto(out *SLOStatus)

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

type SlowburnAnnotationInitParameters

type SlowburnAnnotationInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SlowburnAnnotationInitParameters) DeepCopy

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

func (*SlowburnAnnotationInitParameters) DeepCopyInto

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

type SlowburnAnnotationObservation

type SlowburnAnnotationObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SlowburnAnnotationObservation) DeepCopy

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

func (*SlowburnAnnotationObservation) DeepCopyInto

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

type SlowburnAnnotationParameters

type SlowburnAnnotationParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*SlowburnAnnotationParameters) DeepCopy

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

func (*SlowburnAnnotationParameters) DeepCopyInto

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

type SlowburnInitParameters

type SlowburnInitParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Slow Burn alerts.
	Annotation []SlowburnAnnotationInitParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Slow Burn alerts.
	Label []SlowburnLabelInitParameters `json:"label,omitempty" tf:"label,omitempty"`
}

func (*SlowburnInitParameters) DeepCopy

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

func (*SlowburnInitParameters) DeepCopyInto

func (in *SlowburnInitParameters) DeepCopyInto(out *SlowburnInitParameters)

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

type SlowburnLabelInitParameters

type SlowburnLabelInitParameters struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SlowburnLabelInitParameters) DeepCopy

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

func (*SlowburnLabelInitParameters) DeepCopyInto

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

type SlowburnLabelObservation

type SlowburnLabelObservation struct {

	// (String)
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*SlowburnLabelObservation) DeepCopy

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

func (*SlowburnLabelObservation) DeepCopyInto

func (in *SlowburnLabelObservation) DeepCopyInto(out *SlowburnLabelObservation)

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

type SlowburnLabelParameters

type SlowburnLabelParameters struct {

	// (String)
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// (Number) Value between 0 and 1. If the value of the query is above the objective, the SLO is met.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*SlowburnLabelParameters) DeepCopy

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

func (*SlowburnLabelParameters) DeepCopyInto

func (in *SlowburnLabelParameters) DeepCopyInto(out *SlowburnLabelParameters)

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

type SlowburnObservation

type SlowburnObservation struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Slow Burn alerts.
	Annotation []SlowburnAnnotationObservation `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Slow Burn alerts.
	Label []SlowburnLabelObservation `json:"label,omitempty" tf:"label,omitempty"`
}

func (*SlowburnObservation) DeepCopy

func (in *SlowburnObservation) DeepCopy() *SlowburnObservation

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

func (*SlowburnObservation) DeepCopyInto

func (in *SlowburnObservation) DeepCopyInto(out *SlowburnObservation)

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

type SlowburnParameters

type SlowburnParameters struct {

	// (Block List) Annotations will be attached to all alerts generated by any of these rules. (see below for nested schema)
	// Annotations to attach only to Slow Burn alerts.
	// +kubebuilder:validation:Optional
	Annotation []SlowburnAnnotationParameters `json:"annotation,omitempty" tf:"annotation,omitempty"`

	// "^[a-zA-Z_][a-zA-Z0-9_]*$" (see below for nested schema)
	// Labels to attach only to Slow Burn alerts.
	// +kubebuilder:validation:Optional
	Label []SlowburnLabelParameters `json:"label,omitempty" tf:"label,omitempty"`
}

func (*SlowburnParameters) DeepCopy

func (in *SlowburnParameters) DeepCopy() *SlowburnParameters

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

func (*SlowburnParameters) DeepCopyInto

func (in *SlowburnParameters) DeepCopyInto(out *SlowburnParameters)

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