v1beta2

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=monitoring.gcp.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "monitoring.gcp.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

View Source
var (
	AlertPolicy_Kind             = "AlertPolicy"
	AlertPolicy_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AlertPolicy_Kind}.String()
	AlertPolicy_KindAPIVersion   = AlertPolicy_Kind + "." + CRDGroupVersion.String()
	AlertPolicy_GroupVersionKind = CRDGroupVersion.WithKind(AlertPolicy_Kind)
)

Repository type metadata.

View Source
var (
	CustomService_Kind             = "CustomService"
	CustomService_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CustomService_Kind}.String()
	CustomService_KindAPIVersion   = CustomService_Kind + "." + CRDGroupVersion.String()
	CustomService_GroupVersionKind = CRDGroupVersion.WithKind(CustomService_Kind)
)

Repository type metadata.

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 (
	MetricDescriptor_Kind             = "MetricDescriptor"
	MetricDescriptor_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: MetricDescriptor_Kind}.String()
	MetricDescriptor_KindAPIVersion   = MetricDescriptor_Kind + "." + CRDGroupVersion.String()
	MetricDescriptor_GroupVersionKind = CRDGroupVersion.WithKind(MetricDescriptor_Kind)
)

Repository type metadata.

View Source
var (
	NotificationChannel_Kind             = "NotificationChannel"
	NotificationChannel_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NotificationChannel_Kind}.String()
	NotificationChannel_KindAPIVersion   = NotificationChannel_Kind + "." + CRDGroupVersion.String()
	NotificationChannel_GroupVersionKind = CRDGroupVersion.WithKind(NotificationChannel_Kind)
)

Repository type metadata.

View Source
var (
	Service_Kind             = "Service"
	Service_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Service_Kind}.String()
	Service_KindAPIVersion   = Service_Kind + "." + CRDGroupVersion.String()
	Service_GroupVersionKind = CRDGroupVersion.WithKind(Service_Kind)
)

Repository type metadata.

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.

View Source
var (
	UptimeCheckConfig_Kind             = "UptimeCheckConfig"
	UptimeCheckConfig_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: UptimeCheckConfig_Kind}.String()
	UptimeCheckConfig_KindAPIVersion   = UptimeCheckConfig_Kind + "." + CRDGroupVersion.String()
	UptimeCheckConfig_GroupVersionKind = CRDGroupVersion.WithKind(UptimeCheckConfig_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AcceptedResponseStatusCodesInitParameters

type AcceptedResponseStatusCodesInitParameters struct {

	// A class of status codes to accept.
	// Possible values are: STATUS_CLASS_1XX, STATUS_CLASS_2XX, STATUS_CLASS_3XX, STATUS_CLASS_4XX, STATUS_CLASS_5XX, STATUS_CLASS_ANY.
	StatusClass *string `json:"statusClass,omitempty" tf:"status_class,omitempty"`

	// A status code to accept.
	StatusValue *float64 `json:"statusValue,omitempty" tf:"status_value,omitempty"`
}

func (*AcceptedResponseStatusCodesInitParameters) DeepCopy

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

func (*AcceptedResponseStatusCodesInitParameters) DeepCopyInto

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

type AcceptedResponseStatusCodesObservation

type AcceptedResponseStatusCodesObservation struct {

	// A class of status codes to accept.
	// Possible values are: STATUS_CLASS_1XX, STATUS_CLASS_2XX, STATUS_CLASS_3XX, STATUS_CLASS_4XX, STATUS_CLASS_5XX, STATUS_CLASS_ANY.
	StatusClass *string `json:"statusClass,omitempty" tf:"status_class,omitempty"`

	// A status code to accept.
	StatusValue *float64 `json:"statusValue,omitempty" tf:"status_value,omitempty"`
}

func (*AcceptedResponseStatusCodesObservation) DeepCopy

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

func (*AcceptedResponseStatusCodesObservation) DeepCopyInto

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

type AcceptedResponseStatusCodesParameters

type AcceptedResponseStatusCodesParameters struct {

	// A class of status codes to accept.
	// Possible values are: STATUS_CLASS_1XX, STATUS_CLASS_2XX, STATUS_CLASS_3XX, STATUS_CLASS_4XX, STATUS_CLASS_5XX, STATUS_CLASS_ANY.
	// +kubebuilder:validation:Optional
	StatusClass *string `json:"statusClass,omitempty" tf:"status_class,omitempty"`

	// A status code to accept.
	// +kubebuilder:validation:Optional
	StatusValue *float64 `json:"statusValue,omitempty" tf:"status_value,omitempty"`
}

func (*AcceptedResponseStatusCodesParameters) DeepCopy

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

func (*AcceptedResponseStatusCodesParameters) DeepCopyInto

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

type AggregationsInitParameters

type AggregationsInitParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*AggregationsInitParameters) DeepCopy

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

func (*AggregationsInitParameters) DeepCopyInto

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

type AggregationsObservation

type AggregationsObservation struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*AggregationsObservation) DeepCopy

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

func (*AggregationsObservation) DeepCopyInto

func (in *AggregationsObservation) DeepCopyInto(out *AggregationsObservation)

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

type AggregationsParameters

type AggregationsParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	// +kubebuilder:validation:Optional
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	// +kubebuilder:validation:Optional
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	// +kubebuilder:validation:Optional
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	// +kubebuilder:validation:Optional
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*AggregationsParameters) DeepCopy

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

func (*AggregationsParameters) DeepCopyInto

func (in *AggregationsParameters) DeepCopyInto(out *AggregationsParameters)

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

type AlertPolicy

type AlertPolicy 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.combiner) || (has(self.initProvider) && has(self.initProvider.combiner))",message="spec.forProvider.combiner is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.conditions) || (has(self.initProvider) && has(self.initProvider.conditions))",message="spec.forProvider.conditions is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || (has(self.initProvider) && has(self.initProvider.displayName))",message="spec.forProvider.displayName is a required parameter"
	Spec   AlertPolicySpec   `json:"spec"`
	Status AlertPolicyStatus `json:"status,omitempty"`
}

AlertPolicy is the Schema for the AlertPolicys API. A description of the conditions under which some aspect of your system is considered to be "unhealthy" and the ways to notify people or services about this state. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*AlertPolicy) DeepCopy

func (in *AlertPolicy) DeepCopy() *AlertPolicy

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

func (*AlertPolicy) DeepCopyInto

func (in *AlertPolicy) DeepCopyInto(out *AlertPolicy)

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

func (*AlertPolicy) DeepCopyObject

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

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

func (*AlertPolicy) GetCondition

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

GetCondition of this AlertPolicy.

func (*AlertPolicy) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this AlertPolicy

func (*AlertPolicy) GetDeletionPolicy

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

GetDeletionPolicy of this AlertPolicy.

func (*AlertPolicy) GetID

func (tr *AlertPolicy) GetID() string

GetID returns ID of underlying Terraform resource of this AlertPolicy

func (*AlertPolicy) GetInitParameters

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

GetInitParameters of this AlertPolicy

func (*AlertPolicy) GetManagementPolicies

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

GetManagementPolicies of this AlertPolicy.

func (*AlertPolicy) GetMergedParameters

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

GetInitParameters of this AlertPolicy

func (*AlertPolicy) GetObservation

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

GetObservation of this AlertPolicy

func (*AlertPolicy) GetParameters

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

GetParameters of this AlertPolicy

func (*AlertPolicy) GetProviderConfigReference

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

GetProviderConfigReference of this AlertPolicy.

func (*AlertPolicy) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this AlertPolicy.

func (*AlertPolicy) GetTerraformResourceType

func (mg *AlertPolicy) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AlertPolicy

func (*AlertPolicy) GetTerraformSchemaVersion

func (tr *AlertPolicy) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AlertPolicy) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this AlertPolicy.

func (*AlertPolicy) Hub

func (tr *AlertPolicy) Hub()

Hub marks this type as a conversion hub.

func (*AlertPolicy) LateInitialize

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

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

func (*AlertPolicy) SetConditions

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

SetConditions of this AlertPolicy.

func (*AlertPolicy) SetDeletionPolicy

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

SetDeletionPolicy of this AlertPolicy.

func (*AlertPolicy) SetManagementPolicies

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

SetManagementPolicies of this AlertPolicy.

func (*AlertPolicy) SetObservation

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

SetObservation for this AlertPolicy

func (*AlertPolicy) SetParameters

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

SetParameters for this AlertPolicy

func (*AlertPolicy) SetProviderConfigReference

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

SetProviderConfigReference of this AlertPolicy.

func (*AlertPolicy) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this AlertPolicy.

func (*AlertPolicy) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this AlertPolicy.

type AlertPolicyInitParameters

type AlertPolicyInitParameters struct {

	// Control over how this alert policy's notification channels are notified.
	// Structure is documented below.
	AlertStrategy *AlertStrategyInitParameters `json:"alertStrategy,omitempty" tf:"alert_strategy,omitempty"`

	// How to combine the results of multiple conditions to
	// determine if an incident should be opened.
	// Possible values are: AND, OR, AND_WITH_MATCHING_RESOURCE.
	Combiner *string `json:"combiner,omitempty" tf:"combiner,omitempty"`

	// A list of conditions for the policy. The conditions are combined by
	// AND or OR according to the combiner field. If the combined conditions
	// evaluate to true, then an incident is created. A policy can have from
	// one to six conditions.
	// Structure is documented below.
	Conditions []ConditionsInitParameters `json:"conditions,omitempty" tf:"conditions,omitempty"`

	// A short name or phrase used to identify the policy in
	// dashboards, notifications, and incidents. To avoid confusion, don't use
	// the same display name for multiple policies in the same project. The
	// name is limited to 512 Unicode characters.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Documentation that is included with notifications and incidents related
	// to this policy. Best practice is for the documentation to include information
	// to help responders understand, mitigate, escalate, and correct the underlying
	// problems detected by the alerting policy. Notification channels that have
	// limited capacity might not show this documentation.
	// Structure is documented below.
	Documentation *DocumentationInitParameters `json:"documentation,omitempty" tf:"documentation,omitempty"`

	// Whether or not the policy is enabled. The default is true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Identifies the notification channels to which notifications should be
	// sent when incidents are opened or closed or when new violations occur
	// on an already opened incident. Each element of this array corresponds
	// to the name field in each of the NotificationChannel objects that are
	// returned from the notificationChannels.list method. The syntax of the
	// entries in this field is
	// projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]
	NotificationChannels []*string `json:"notificationChannels,omitempty" tf:"notification_channels,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The severity of an alert policy indicates how important incidents generated
	// by that policy are. The severity level will be displayed on the Incident
	// detail page and in notifications.
	// Possible values are: CRITICAL, ERROR, WARNING.
	Severity *string `json:"severity,omitempty" tf:"severity,omitempty"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*AlertPolicyInitParameters) DeepCopy

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

func (*AlertPolicyInitParameters) DeepCopyInto

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

type AlertPolicyList

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

AlertPolicyList contains a list of AlertPolicys

func (*AlertPolicyList) DeepCopy

func (in *AlertPolicyList) DeepCopy() *AlertPolicyList

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

func (*AlertPolicyList) DeepCopyInto

func (in *AlertPolicyList) DeepCopyInto(out *AlertPolicyList)

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

func (*AlertPolicyList) DeepCopyObject

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

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

func (*AlertPolicyList) GetItems

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

GetItems of this AlertPolicyList.

type AlertPolicyObservation

type AlertPolicyObservation struct {

	// Control over how this alert policy's notification channels are notified.
	// Structure is documented below.
	AlertStrategy *AlertStrategyObservation `json:"alertStrategy,omitempty" tf:"alert_strategy,omitempty"`

	// How to combine the results of multiple conditions to
	// determine if an incident should be opened.
	// Possible values are: AND, OR, AND_WITH_MATCHING_RESOURCE.
	Combiner *string `json:"combiner,omitempty" tf:"combiner,omitempty"`

	// A list of conditions for the policy. The conditions are combined by
	// AND or OR according to the combiner field. If the combined conditions
	// evaluate to true, then an incident is created. A policy can have from
	// one to six conditions.
	// Structure is documented below.
	Conditions []ConditionsObservation `json:"conditions,omitempty" tf:"conditions,omitempty"`

	// A read-only record of the creation of the alerting policy.
	// If provided in a call to create or update, this field will
	// be ignored.
	// Structure is documented below.
	CreationRecord []CreationRecordObservation `json:"creationRecord,omitempty" tf:"creation_record,omitempty"`

	// A short name or phrase used to identify the policy in
	// dashboards, notifications, and incidents. To avoid confusion, don't use
	// the same display name for multiple policies in the same project. The
	// name is limited to 512 Unicode characters.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Documentation that is included with notifications and incidents related
	// to this policy. Best practice is for the documentation to include information
	// to help responders understand, mitigate, escalate, and correct the underlying
	// problems detected by the alerting policy. Notification channels that have
	// limited capacity might not show this documentation.
	// Structure is documented below.
	Documentation *DocumentationObservation `json:"documentation,omitempty" tf:"documentation,omitempty"`

	// Whether or not the policy is enabled. The default is true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The unique resource name for this policy.
	// Its syntax is: projects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Identifies the notification channels to which notifications should be
	// sent when incidents are opened or closed or when new violations occur
	// on an already opened incident. Each element of this array corresponds
	// to the name field in each of the NotificationChannel objects that are
	// returned from the notificationChannels.list method. The syntax of the
	// entries in this field is
	// projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]
	NotificationChannels []*string `json:"notificationChannels,omitempty" tf:"notification_channels,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The severity of an alert policy indicates how important incidents generated
	// by that policy are. The severity level will be displayed on the Incident
	// detail page and in notifications.
	// Possible values are: CRITICAL, ERROR, WARNING.
	Severity *string `json:"severity,omitempty" tf:"severity,omitempty"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*AlertPolicyObservation) DeepCopy

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

func (*AlertPolicyObservation) DeepCopyInto

func (in *AlertPolicyObservation) DeepCopyInto(out *AlertPolicyObservation)

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

type AlertPolicyParameters

type AlertPolicyParameters struct {

	// Control over how this alert policy's notification channels are notified.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AlertStrategy *AlertStrategyParameters `json:"alertStrategy,omitempty" tf:"alert_strategy,omitempty"`

	// How to combine the results of multiple conditions to
	// determine if an incident should be opened.
	// Possible values are: AND, OR, AND_WITH_MATCHING_RESOURCE.
	// +kubebuilder:validation:Optional
	Combiner *string `json:"combiner,omitempty" tf:"combiner,omitempty"`

	// A list of conditions for the policy. The conditions are combined by
	// AND or OR according to the combiner field. If the combined conditions
	// evaluate to true, then an incident is created. A policy can have from
	// one to six conditions.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Conditions []ConditionsParameters `json:"conditions,omitempty" tf:"conditions,omitempty"`

	// A short name or phrase used to identify the policy in
	// dashboards, notifications, and incidents. To avoid confusion, don't use
	// the same display name for multiple policies in the same project. The
	// name is limited to 512 Unicode characters.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Documentation that is included with notifications and incidents related
	// to this policy. Best practice is for the documentation to include information
	// to help responders understand, mitigate, escalate, and correct the underlying
	// problems detected by the alerting policy. Notification channels that have
	// limited capacity might not show this documentation.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Documentation *DocumentationParameters `json:"documentation,omitempty" tf:"documentation,omitempty"`

	// Whether or not the policy is enabled. The default is true.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Identifies the notification channels to which notifications should be
	// sent when incidents are opened or closed or when new violations occur
	// on an already opened incident. Each element of this array corresponds
	// to the name field in each of the NotificationChannel objects that are
	// returned from the notificationChannels.list method. The syntax of the
	// entries in this field is
	// projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]
	// +kubebuilder:validation:Optional
	NotificationChannels []*string `json:"notificationChannels,omitempty" tf:"notification_channels,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The severity of an alert policy indicates how important incidents generated
	// by that policy are. The severity level will be displayed on the Incident
	// detail page and in notifications.
	// Possible values are: CRITICAL, ERROR, WARNING.
	// +kubebuilder:validation:Optional
	Severity *string `json:"severity,omitempty" tf:"severity,omitempty"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*AlertPolicyParameters) DeepCopy

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

func (*AlertPolicyParameters) DeepCopyInto

func (in *AlertPolicyParameters) DeepCopyInto(out *AlertPolicyParameters)

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

type AlertPolicySpec

type AlertPolicySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     AlertPolicyParameters `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 AlertPolicyInitParameters `json:"initProvider,omitempty"`
}

AlertPolicySpec defines the desired state of AlertPolicy

func (*AlertPolicySpec) DeepCopy

func (in *AlertPolicySpec) DeepCopy() *AlertPolicySpec

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

func (*AlertPolicySpec) DeepCopyInto

func (in *AlertPolicySpec) DeepCopyInto(out *AlertPolicySpec)

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

type AlertPolicyStatus

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

AlertPolicyStatus defines the observed state of AlertPolicy.

func (*AlertPolicyStatus) DeepCopy

func (in *AlertPolicyStatus) DeepCopy() *AlertPolicyStatus

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

func (*AlertPolicyStatus) DeepCopyInto

func (in *AlertPolicyStatus) DeepCopyInto(out *AlertPolicyStatus)

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

type AlertStrategyInitParameters

type AlertStrategyInitParameters struct {

	// If an alert policy that was active has no data for this long, any open incidents will close.
	AutoClose *string `json:"autoClose,omitempty" tf:"auto_close,omitempty"`

	// Control over how the notification channels in notification_channels
	// are notified when this alert fires, on a per-channel basis.
	// Structure is documented below.
	NotificationChannelStrategy []NotificationChannelStrategyInitParameters `json:"notificationChannelStrategy,omitempty" tf:"notification_channel_strategy,omitempty"`

	// Required for alert policies with a LogMatch condition.
	// This limit is not implemented for alert policies that are not log-based.
	// Structure is documented below.
	NotificationRateLimit *NotificationRateLimitInitParameters `json:"notificationRateLimit,omitempty" tf:"notification_rate_limit,omitempty"`
}

func (*AlertStrategyInitParameters) DeepCopy

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

func (*AlertStrategyInitParameters) DeepCopyInto

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

type AlertStrategyObservation

type AlertStrategyObservation struct {

	// If an alert policy that was active has no data for this long, any open incidents will close.
	AutoClose *string `json:"autoClose,omitempty" tf:"auto_close,omitempty"`

	// Control over how the notification channels in notification_channels
	// are notified when this alert fires, on a per-channel basis.
	// Structure is documented below.
	NotificationChannelStrategy []NotificationChannelStrategyObservation `json:"notificationChannelStrategy,omitempty" tf:"notification_channel_strategy,omitempty"`

	// Required for alert policies with a LogMatch condition.
	// This limit is not implemented for alert policies that are not log-based.
	// Structure is documented below.
	NotificationRateLimit *NotificationRateLimitObservation `json:"notificationRateLimit,omitempty" tf:"notification_rate_limit,omitempty"`
}

func (*AlertStrategyObservation) DeepCopy

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

func (*AlertStrategyObservation) DeepCopyInto

func (in *AlertStrategyObservation) DeepCopyInto(out *AlertStrategyObservation)

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

type AlertStrategyParameters

type AlertStrategyParameters struct {

	// If an alert policy that was active has no data for this long, any open incidents will close.
	// +kubebuilder:validation:Optional
	AutoClose *string `json:"autoClose,omitempty" tf:"auto_close,omitempty"`

	// Control over how the notification channels in notification_channels
	// are notified when this alert fires, on a per-channel basis.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	NotificationChannelStrategy []NotificationChannelStrategyParameters `json:"notificationChannelStrategy,omitempty" tf:"notification_channel_strategy,omitempty"`

	// Required for alert policies with a LogMatch condition.
	// This limit is not implemented for alert policies that are not log-based.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	NotificationRateLimit *NotificationRateLimitParameters `json:"notificationRateLimit,omitempty" tf:"notification_rate_limit,omitempty"`
}

func (*AlertStrategyParameters) DeepCopy

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

func (*AlertStrategyParameters) DeepCopyInto

func (in *AlertStrategyParameters) DeepCopyInto(out *AlertStrategyParameters)

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

type AuthInfoInitParameters

type AuthInfoInitParameters struct {

	// The password to authenticate.
	// Note: This property is sensitive and will not be displayed in the plan.
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The username to authenticate.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AuthInfoInitParameters) DeepCopy

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

func (*AuthInfoInitParameters) DeepCopyInto

func (in *AuthInfoInitParameters) DeepCopyInto(out *AuthInfoInitParameters)

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

type AuthInfoObservation

type AuthInfoObservation struct {

	// The username to authenticate.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AuthInfoObservation) DeepCopy

func (in *AuthInfoObservation) DeepCopy() *AuthInfoObservation

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

func (*AuthInfoObservation) DeepCopyInto

func (in *AuthInfoObservation) DeepCopyInto(out *AuthInfoObservation)

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

type AuthInfoParameters

type AuthInfoParameters struct {

	// The password to authenticate.
	// Note: This property is sensitive and will not be displayed in the plan.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The username to authenticate.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*AuthInfoParameters) DeepCopy

func (in *AuthInfoParameters) DeepCopy() *AuthInfoParameters

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

func (*AuthInfoParameters) DeepCopyInto

func (in *AuthInfoParameters) DeepCopyInto(out *AuthInfoParameters)

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

type AvailabilityInitParameters

type AvailabilityInitParameters struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*AvailabilityInitParameters) DeepCopy

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

func (*AvailabilityInitParameters) DeepCopyInto

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

type AvailabilityObservation

type AvailabilityObservation struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*AvailabilityObservation) DeepCopy

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

func (*AvailabilityObservation) DeepCopyInto

func (in *AvailabilityObservation) DeepCopyInto(out *AvailabilityObservation)

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

type AvailabilityParameters

type AvailabilityParameters struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*AvailabilityParameters) DeepCopy

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

func (*AvailabilityParameters) DeepCopyInto

func (in *AvailabilityParameters) DeepCopyInto(out *AvailabilityParameters)

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

type BasicServiceInitParameters

type BasicServiceInitParameters struct {

	// Labels that specify the resource that emits the monitoring data
	// which is used for SLO reporting of this Service.
	// +mapType=granular
	ServiceLabels map[string]*string `json:"serviceLabels,omitempty" tf:"service_labels,omitempty"`

	// The type of service that this basic service defines, e.g.
	// APP_ENGINE service type
	ServiceType *string `json:"serviceType,omitempty" tf:"service_type,omitempty"`
}

func (*BasicServiceInitParameters) DeepCopy

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

func (*BasicServiceInitParameters) DeepCopyInto

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

type BasicServiceObservation

type BasicServiceObservation struct {

	// Labels that specify the resource that emits the monitoring data
	// which is used for SLO reporting of this Service.
	// +mapType=granular
	ServiceLabels map[string]*string `json:"serviceLabels,omitempty" tf:"service_labels,omitempty"`

	// The type of service that this basic service defines, e.g.
	// APP_ENGINE service type
	ServiceType *string `json:"serviceType,omitempty" tf:"service_type,omitempty"`
}

func (*BasicServiceObservation) DeepCopy

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

func (*BasicServiceObservation) DeepCopyInto

func (in *BasicServiceObservation) DeepCopyInto(out *BasicServiceObservation)

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

type BasicServiceParameters

type BasicServiceParameters struct {

	// Labels that specify the resource that emits the monitoring data
	// which is used for SLO reporting of this Service.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	ServiceLabels map[string]*string `json:"serviceLabels,omitempty" tf:"service_labels,omitempty"`

	// The type of service that this basic service defines, e.g.
	// APP_ENGINE service type
	// +kubebuilder:validation:Optional
	ServiceType *string `json:"serviceType,omitempty" tf:"service_type,omitempty"`
}

func (*BasicServiceParameters) DeepCopy

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

func (*BasicServiceParameters) DeepCopyInto

func (in *BasicServiceParameters) DeepCopyInto(out *BasicServiceParameters)

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

type BasicSliInitParameters

type BasicSliInitParameters struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	Availability *AvailabilityInitParameters `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	Latency *LatencyInitParameters `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliInitParameters) DeepCopy

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

func (*BasicSliInitParameters) DeepCopyInto

func (in *BasicSliInitParameters) DeepCopyInto(out *BasicSliInitParameters)

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

type BasicSliObservation

type BasicSliObservation struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	Availability *AvailabilityObservation `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	Latency *LatencyObservation `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliObservation) DeepCopy

func (in *BasicSliObservation) DeepCopy() *BasicSliObservation

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

func (*BasicSliObservation) DeepCopyInto

func (in *BasicSliObservation) DeepCopyInto(out *BasicSliObservation)

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

type BasicSliParameters

type BasicSliParameters struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Availability *AvailabilityParameters `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Latency *LatencyParameters `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliParameters) DeepCopy

func (in *BasicSliParameters) DeepCopy() *BasicSliParameters

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

func (*BasicSliParameters) DeepCopyInto

func (in *BasicSliParameters) DeepCopyInto(out *BasicSliParameters)

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

type BasicSliPerformanceAvailabilityInitParameters

type BasicSliPerformanceAvailabilityInitParameters struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*BasicSliPerformanceAvailabilityInitParameters) DeepCopy

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

func (*BasicSliPerformanceAvailabilityInitParameters) DeepCopyInto

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

type BasicSliPerformanceAvailabilityObservation

type BasicSliPerformanceAvailabilityObservation struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*BasicSliPerformanceAvailabilityObservation) DeepCopy

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

func (*BasicSliPerformanceAvailabilityObservation) DeepCopyInto

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

type BasicSliPerformanceAvailabilityParameters

type BasicSliPerformanceAvailabilityParameters struct {

	// Whether an availability SLI is enabled or not. Must be set to true. Defaults to true.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*BasicSliPerformanceAvailabilityParameters) DeepCopy

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

func (*BasicSliPerformanceAvailabilityParameters) DeepCopyInto

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

type BasicSliPerformanceInitParameters

type BasicSliPerformanceInitParameters struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	Availability *BasicSliPerformanceAvailabilityInitParameters `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	Latency *BasicSliPerformanceLatencyInitParameters `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliPerformanceInitParameters) DeepCopy

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

func (*BasicSliPerformanceInitParameters) DeepCopyInto

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

type BasicSliPerformanceLatencyInitParameters

type BasicSliPerformanceLatencyInitParameters struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*BasicSliPerformanceLatencyInitParameters) DeepCopy

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

func (*BasicSliPerformanceLatencyInitParameters) DeepCopyInto

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

type BasicSliPerformanceLatencyObservation

type BasicSliPerformanceLatencyObservation struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*BasicSliPerformanceLatencyObservation) DeepCopy

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

func (*BasicSliPerformanceLatencyObservation) DeepCopyInto

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

type BasicSliPerformanceLatencyParameters

type BasicSliPerformanceLatencyParameters struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	// +kubebuilder:validation:Optional
	Threshold *string `json:"threshold" tf:"threshold,omitempty"`
}

func (*BasicSliPerformanceLatencyParameters) DeepCopy

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

func (*BasicSliPerformanceLatencyParameters) DeepCopyInto

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

type BasicSliPerformanceObservation

type BasicSliPerformanceObservation struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	Availability *BasicSliPerformanceAvailabilityObservation `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	Latency *BasicSliPerformanceLatencyObservation `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliPerformanceObservation) DeepCopy

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

func (*BasicSliPerformanceObservation) DeepCopyInto

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

type BasicSliPerformanceParameters

type BasicSliPerformanceParameters struct {

	// Availability based SLI, dervied from count of requests made to this service that return successfully.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Availability *BasicSliPerformanceAvailabilityParameters `json:"availability,omitempty" tf:"availability,omitempty"`

	// Parameters for a latency threshold SLI.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Latency *BasicSliPerformanceLatencyParameters `json:"latency,omitempty" tf:"latency,omitempty"`

	// An optional set of locations to which this SLI is relevant.
	// Telemetry from other locations will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// locations in which the Service has activity. For service types
	// that don't support breaking down by location, setting this
	// field will result in an error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Location []*string `json:"location,omitempty" tf:"location,omitempty"`

	// An optional set of RPCs to which this SLI is relevant.
	// Telemetry from other methods will not be used to calculate
	// performance for this SLI. If omitted, this SLI applies to all
	// the Service's methods. For service types that don't support
	// breaking down by method, setting this field will result in an
	// error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Method []*string `json:"method,omitempty" tf:"method,omitempty"`

	// The set of API versions to which this SLI is relevant.
	// Telemetry from other API versions will not be used to
	// calculate performance for this SLI. If omitted,
	// this SLI applies to all API versions. For service types
	// that don't support breaking down by version, setting this
	// field will result in an error.
	// +kubebuilder:validation:Optional
	// +listType=set
	Version []*string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*BasicSliPerformanceParameters) DeepCopy

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

func (*BasicSliPerformanceParameters) DeepCopyInto

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

type CloudFunctionV2InitParameters

type CloudFunctionV2InitParameters struct {

	// The fully qualified name of the cloud function resource.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudfunctions2/v1beta2.Function
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Reference to a Function in cloudfunctions2 to populate name.
	// +kubebuilder:validation:Optional
	NameRef *v1.Reference `json:"nameRef,omitempty" tf:"-"`

	// Selector for a Function in cloudfunctions2 to populate name.
	// +kubebuilder:validation:Optional
	NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"`
}

func (*CloudFunctionV2InitParameters) DeepCopy

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

func (*CloudFunctionV2InitParameters) DeepCopyInto

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

type CloudFunctionV2Observation

type CloudFunctionV2Observation struct {

	// The fully qualified name of the cloud function resource.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*CloudFunctionV2Observation) DeepCopy

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

func (*CloudFunctionV2Observation) DeepCopyInto

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

type CloudFunctionV2Parameters

type CloudFunctionV2Parameters struct {

	// The fully qualified name of the cloud function resource.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudfunctions2/v1beta2.Function
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Reference to a Function in cloudfunctions2 to populate name.
	// +kubebuilder:validation:Optional
	NameRef *v1.Reference `json:"nameRef,omitempty" tf:"-"`

	// Selector for a Function in cloudfunctions2 to populate name.
	// +kubebuilder:validation:Optional
	NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"`
}

func (*CloudFunctionV2Parameters) DeepCopy

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

func (*CloudFunctionV2Parameters) DeepCopyInto

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

type ConditionAbsentInitParameters

type ConditionAbsentInitParameters struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	Aggregations []AggregationsInitParameters `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *TriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionAbsentInitParameters) DeepCopy

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

func (*ConditionAbsentInitParameters) DeepCopyInto

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

type ConditionAbsentObservation

type ConditionAbsentObservation struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	Aggregations []AggregationsObservation `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *TriggerObservation `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionAbsentObservation) DeepCopy

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

func (*ConditionAbsentObservation) DeepCopyInto

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

type ConditionAbsentParameters

type ConditionAbsentParameters struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Aggregations []AggregationsParameters `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	// +kubebuilder:validation:Optional
	Duration *string `json:"duration" tf:"duration,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Trigger *TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionAbsentParameters) DeepCopy

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

func (*ConditionAbsentParameters) DeepCopyInto

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

type ConditionMatchedLogInitParameters

type ConditionMatchedLogInitParameters struct {

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A map from a label key to an extractor expression, which is used to
	// extract the value for this label key. Each entry in this map is
	// a specification for how data should be extracted from log entries that
	// match filter. Each combination of extracted values is treated as
	// a separate rule for the purposes of triggering notifications.
	// Label keys and corresponding values can be used in notifications
	// generated by this condition.
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`
}

func (*ConditionMatchedLogInitParameters) DeepCopy

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

func (*ConditionMatchedLogInitParameters) DeepCopyInto

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

type ConditionMatchedLogObservation

type ConditionMatchedLogObservation struct {

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A map from a label key to an extractor expression, which is used to
	// extract the value for this label key. Each entry in this map is
	// a specification for how data should be extracted from log entries that
	// match filter. Each combination of extracted values is treated as
	// a separate rule for the purposes of triggering notifications.
	// Label keys and corresponding values can be used in notifications
	// generated by this condition.
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`
}

func (*ConditionMatchedLogObservation) DeepCopy

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

func (*ConditionMatchedLogObservation) DeepCopyInto

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

type ConditionMatchedLogParameters

type ConditionMatchedLogParameters struct {

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter" tf:"filter,omitempty"`

	// A map from a label key to an extractor expression, which is used to
	// extract the value for this label key. Each entry in this map is
	// a specification for how data should be extracted from log entries that
	// match filter. Each combination of extracted values is treated as
	// a separate rule for the purposes of triggering notifications.
	// Label keys and corresponding values can be used in notifications
	// generated by this condition.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`
}

func (*ConditionMatchedLogParameters) DeepCopy

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

func (*ConditionMatchedLogParameters) DeepCopyInto

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

type ConditionMonitoringQueryLanguageInitParameters

type ConditionMonitoringQueryLanguageInitParameters struct {

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *ConditionMonitoringQueryLanguageTriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionMonitoringQueryLanguageInitParameters) DeepCopy

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

func (*ConditionMonitoringQueryLanguageInitParameters) DeepCopyInto

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

type ConditionMonitoringQueryLanguageObservation

type ConditionMonitoringQueryLanguageObservation struct {

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *ConditionMonitoringQueryLanguageTriggerObservation `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionMonitoringQueryLanguageObservation) DeepCopy

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

func (*ConditionMonitoringQueryLanguageObservation) DeepCopyInto

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

type ConditionMonitoringQueryLanguageParameters

type ConditionMonitoringQueryLanguageParameters struct {

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	// +kubebuilder:validation:Optional
	Duration *string `json:"duration" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	// +kubebuilder:validation:Optional
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	// +kubebuilder:validation:Optional
	Query *string `json:"query" tf:"query,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Trigger *ConditionMonitoringQueryLanguageTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionMonitoringQueryLanguageParameters) DeepCopy

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

func (*ConditionMonitoringQueryLanguageParameters) DeepCopyInto

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

type ConditionMonitoringQueryLanguageTriggerInitParameters

type ConditionMonitoringQueryLanguageTriggerInitParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionMonitoringQueryLanguageTriggerInitParameters) DeepCopy

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

func (*ConditionMonitoringQueryLanguageTriggerInitParameters) DeepCopyInto

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

type ConditionMonitoringQueryLanguageTriggerObservation

type ConditionMonitoringQueryLanguageTriggerObservation struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionMonitoringQueryLanguageTriggerObservation) DeepCopy

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

func (*ConditionMonitoringQueryLanguageTriggerObservation) DeepCopyInto

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

type ConditionMonitoringQueryLanguageTriggerParameters

type ConditionMonitoringQueryLanguageTriggerParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionMonitoringQueryLanguageTriggerParameters) DeepCopy

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

func (*ConditionMonitoringQueryLanguageTriggerParameters) DeepCopyInto

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

type ConditionPrometheusQueryLanguageInitParameters

type ConditionPrometheusQueryLanguageInitParameters struct {

	// The alerting rule name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future.
	// This field is optional. If this field is not empty, then it must be a
	// valid Prometheus label name.
	AlertRule *string `json:"alertRule,omitempty" tf:"alert_rule,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// How often this rule should be evaluated. Must be a positive multiple
	// of 30 seconds or missing. The default value is 30 seconds. If this
	// PrometheusQueryLanguageCondition was generated from a Prometheus
	// alerting rule, then this value should be taken from the enclosing
	// rule group.
	EvaluationInterval *string `json:"evaluationInterval,omitempty" tf:"evaluation_interval,omitempty"`

	// Labels to add to or overwrite in the PromQL query result. Label names
	// must be valid.
	// Label values can be templatized by using variables. The only available
	// variable names are the names of the labels in the PromQL result, including
	// "name" and "value". "labels" may be empty. This field is intended to be
	// used for organizing and identifying the AlertPolicy
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// The rule group name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future. This field is optional.
	RuleGroup *string `json:"ruleGroup,omitempty" tf:"rule_group,omitempty"`
}

func (*ConditionPrometheusQueryLanguageInitParameters) DeepCopy

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

func (*ConditionPrometheusQueryLanguageInitParameters) DeepCopyInto

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

type ConditionPrometheusQueryLanguageObservation

type ConditionPrometheusQueryLanguageObservation struct {

	// The alerting rule name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future.
	// This field is optional. If this field is not empty, then it must be a
	// valid Prometheus label name.
	AlertRule *string `json:"alertRule,omitempty" tf:"alert_rule,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// How often this rule should be evaluated. Must be a positive multiple
	// of 30 seconds or missing. The default value is 30 seconds. If this
	// PrometheusQueryLanguageCondition was generated from a Prometheus
	// alerting rule, then this value should be taken from the enclosing
	// rule group.
	EvaluationInterval *string `json:"evaluationInterval,omitempty" tf:"evaluation_interval,omitempty"`

	// Labels to add to or overwrite in the PromQL query result. Label names
	// must be valid.
	// Label values can be templatized by using variables. The only available
	// variable names are the names of the labels in the PromQL result, including
	// "name" and "value". "labels" may be empty. This field is intended to be
	// used for organizing and identifying the AlertPolicy
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// The rule group name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future. This field is optional.
	RuleGroup *string `json:"ruleGroup,omitempty" tf:"rule_group,omitempty"`
}

func (*ConditionPrometheusQueryLanguageObservation) DeepCopy

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

func (*ConditionPrometheusQueryLanguageObservation) DeepCopyInto

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

type ConditionPrometheusQueryLanguageParameters

type ConditionPrometheusQueryLanguageParameters struct {

	// The alerting rule name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future.
	// This field is optional. If this field is not empty, then it must be a
	// valid Prometheus label name.
	// +kubebuilder:validation:Optional
	AlertRule *string `json:"alertRule,omitempty" tf:"alert_rule,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	// +kubebuilder:validation:Optional
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// How often this rule should be evaluated. Must be a positive multiple
	// of 30 seconds or missing. The default value is 30 seconds. If this
	// PrometheusQueryLanguageCondition was generated from a Prometheus
	// alerting rule, then this value should be taken from the enclosing
	// rule group.
	// +kubebuilder:validation:Optional
	EvaluationInterval *string `json:"evaluationInterval,omitempty" tf:"evaluation_interval,omitempty"`

	// Labels to add to or overwrite in the PromQL query result. Label names
	// must be valid.
	// Label values can be templatized by using variables. The only available
	// variable names are the names of the labels in the PromQL result, including
	// "name" and "value". "labels" may be empty. This field is intended to be
	// used for organizing and identifying the AlertPolicy
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The PromQL expression to evaluate. Every evaluation cycle this
	// expression is evaluated at the current time, and all resultant time
	// series become pending/firing alerts. This field must not be empty.
	// +kubebuilder:validation:Optional
	Query *string `json:"query" tf:"query,omitempty"`

	// The rule group name of this alert in the corresponding Prometheus
	// configuration file.
	// Some external tools may require this field to be populated correctly
	// in order to refer to the original Prometheus configuration file.
	// The rule group name and the alert name are necessary to update the
	// relevant AlertPolicies in case the definition of the rule group changes
	// in the future. This field is optional.
	// +kubebuilder:validation:Optional
	RuleGroup *string `json:"ruleGroup,omitempty" tf:"rule_group,omitempty"`
}

func (*ConditionPrometheusQueryLanguageParameters) DeepCopy

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

func (*ConditionPrometheusQueryLanguageParameters) DeepCopyInto

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

type ConditionThresholdAggregationsInitParameters

type ConditionThresholdAggregationsInitParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*ConditionThresholdAggregationsInitParameters) DeepCopy

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

func (*ConditionThresholdAggregationsInitParameters) DeepCopyInto

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

type ConditionThresholdAggregationsObservation

type ConditionThresholdAggregationsObservation struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*ConditionThresholdAggregationsObservation) DeepCopy

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

func (*ConditionThresholdAggregationsObservation) DeepCopyInto

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

type ConditionThresholdAggregationsParameters

type ConditionThresholdAggregationsParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	// +kubebuilder:validation:Optional
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	// +kubebuilder:validation:Optional
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	// +kubebuilder:validation:Optional
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	// +kubebuilder:validation:Optional
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*ConditionThresholdAggregationsParameters) DeepCopy

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

func (*ConditionThresholdAggregationsParameters) DeepCopyInto

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

type ConditionThresholdInitParameters

type ConditionThresholdInitParameters struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	Aggregations []ConditionThresholdAggregationsInitParameters `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The comparison to apply between the time
	// series (indicated by filter and aggregation)
	// and the threshold (indicated by
	// threshold_value). The comparison is applied
	// on each time series, with the time series on
	// the left-hand side and the threshold on the
	// right-hand side. Only COMPARISON_LT and
	// COMPARISON_GT are supported currently.
	// Possible values are: COMPARISON_GT, COMPARISON_GE, COMPARISON_LT, COMPARISON_LE, COMPARISON_EQ, COMPARISON_NE.
	Comparison *string `json:"comparison,omitempty" tf:"comparison,omitempty"`

	// Specifies the alignment of data points in
	// individual time series selected by
	// denominatorFilter as well as how to combine
	// the retrieved time series together (such as
	// when aggregating multiple streams on each
	// resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).When
	// computing ratios, the aggregations and
	// denominator_aggregations fields must use the
	// same alignment period and produce time
	// series that have the same periodicity and
	// labels.This field is similar to the one in
	// the MetricService.ListTimeSeries request. It
	// is advisable to use the ListTimeSeries
	// method when debugging this field.
	// Structure is documented below.
	DenominatorAggregations []DenominatorAggregationsInitParameters `json:"denominatorAggregations,omitempty" tf:"denominator_aggregations,omitempty"`

	// A filter that identifies a time series that
	// should be used as the denominator of a ratio
	// that will be compared with the threshold. If
	// a denominator_filter is specified, the time
	// series specified by the filter field will be
	// used as the numerator.The filter is similar
	// to the one that is specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	DenominatorFilter *string `json:"denominatorFilter,omitempty" tf:"denominator_filter,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// When this field is present, the MetricThreshold
	// condition forecasts whether the time series is
	// predicted to violate the threshold within the
	// forecastHorizon. When this field is not set, the
	// MetricThreshold tests the current value of the
	// timeseries against the threshold.
	// Structure is documented below.
	ForecastOptions *ForecastOptionsInitParameters `json:"forecastOptions,omitempty" tf:"forecast_options,omitempty"`

	// A value against which to compare the time
	// series.
	ThresholdValue *float64 `json:"thresholdValue,omitempty" tf:"threshold_value,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *ConditionThresholdTriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionThresholdInitParameters) DeepCopy

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

func (*ConditionThresholdInitParameters) DeepCopyInto

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

type ConditionThresholdObservation

type ConditionThresholdObservation struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	Aggregations []ConditionThresholdAggregationsObservation `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The comparison to apply between the time
	// series (indicated by filter and aggregation)
	// and the threshold (indicated by
	// threshold_value). The comparison is applied
	// on each time series, with the time series on
	// the left-hand side and the threshold on the
	// right-hand side. Only COMPARISON_LT and
	// COMPARISON_GT are supported currently.
	// Possible values are: COMPARISON_GT, COMPARISON_GE, COMPARISON_LT, COMPARISON_LE, COMPARISON_EQ, COMPARISON_NE.
	Comparison *string `json:"comparison,omitempty" tf:"comparison,omitempty"`

	// Specifies the alignment of data points in
	// individual time series selected by
	// denominatorFilter as well as how to combine
	// the retrieved time series together (such as
	// when aggregating multiple streams on each
	// resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).When
	// computing ratios, the aggregations and
	// denominator_aggregations fields must use the
	// same alignment period and produce time
	// series that have the same periodicity and
	// labels.This field is similar to the one in
	// the MetricService.ListTimeSeries request. It
	// is advisable to use the ListTimeSeries
	// method when debugging this field.
	// Structure is documented below.
	DenominatorAggregations []DenominatorAggregationsObservation `json:"denominatorAggregations,omitempty" tf:"denominator_aggregations,omitempty"`

	// A filter that identifies a time series that
	// should be used as the denominator of a ratio
	// that will be compared with the threshold. If
	// a denominator_filter is specified, the time
	// series specified by the filter field will be
	// used as the numerator.The filter is similar
	// to the one that is specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	DenominatorFilter *string `json:"denominatorFilter,omitempty" tf:"denominator_filter,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// When this field is present, the MetricThreshold
	// condition forecasts whether the time series is
	// predicted to violate the threshold within the
	// forecastHorizon. When this field is not set, the
	// MetricThreshold tests the current value of the
	// timeseries against the threshold.
	// Structure is documented below.
	ForecastOptions *ForecastOptionsObservation `json:"forecastOptions,omitempty" tf:"forecast_options,omitempty"`

	// A value against which to compare the time
	// series.
	ThresholdValue *float64 `json:"thresholdValue,omitempty" tf:"threshold_value,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	Trigger *ConditionThresholdTriggerObservation `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionThresholdObservation) DeepCopy

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

func (*ConditionThresholdObservation) DeepCopyInto

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

type ConditionThresholdParameters

type ConditionThresholdParameters struct {

	// Specifies the alignment of data points in
	// individual time series as well as how to
	// combine the retrieved time series together
	// (such as when aggregating multiple streams
	// on each resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).
	// Multiple aggregations are applied in the
	// order specified.This field is similar to the
	// one in the MetricService.ListTimeSeries
	// request. It is advisable to use the
	// ListTimeSeries method when debugging this
	// field.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Aggregations []ConditionThresholdAggregationsParameters `json:"aggregations,omitempty" tf:"aggregations,omitempty"`

	// The comparison to apply between the time
	// series (indicated by filter and aggregation)
	// and the threshold (indicated by
	// threshold_value). The comparison is applied
	// on each time series, with the time series on
	// the left-hand side and the threshold on the
	// right-hand side. Only COMPARISON_LT and
	// COMPARISON_GT are supported currently.
	// Possible values are: COMPARISON_GT, COMPARISON_GE, COMPARISON_LT, COMPARISON_LE, COMPARISON_EQ, COMPARISON_NE.
	// +kubebuilder:validation:Optional
	Comparison *string `json:"comparison" tf:"comparison,omitempty"`

	// Specifies the alignment of data points in
	// individual time series selected by
	// denominatorFilter as well as how to combine
	// the retrieved time series together (such as
	// when aggregating multiple streams on each
	// resource to a single stream for each
	// resource or when aggregating streams across
	// all members of a group of resources).When
	// computing ratios, the aggregations and
	// denominator_aggregations fields must use the
	// same alignment period and produce time
	// series that have the same periodicity and
	// labels.This field is similar to the one in
	// the MetricService.ListTimeSeries request. It
	// is advisable to use the ListTimeSeries
	// method when debugging this field.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	DenominatorAggregations []DenominatorAggregationsParameters `json:"denominatorAggregations,omitempty" tf:"denominator_aggregations,omitempty"`

	// A filter that identifies a time series that
	// should be used as the denominator of a ratio
	// that will be compared with the threshold. If
	// a denominator_filter is specified, the time
	// series specified by the filter field will be
	// used as the numerator.The filter is similar
	// to the one that is specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	// +kubebuilder:validation:Optional
	DenominatorFilter *string `json:"denominatorFilter,omitempty" tf:"denominator_filter,omitempty"`

	// The amount of time that a time series must
	// violate the threshold to be considered
	// failing. Currently, only values that are a
	// multiple of a minute--e.g., 0, 60, 120, or
	// 300 seconds--are supported. If an invalid
	// value is given, an error will be returned.
	// When choosing a duration, it is useful to
	// keep in mind the frequency of the underlying
	// time series data (which may also be affected
	// by any alignments specified in the
	// aggregations field); a good duration is long
	// enough so that a single outlier does not
	// generate spurious alerts, but short enough
	// that unhealthy states are detected and
	// alerted on quickly.
	// +kubebuilder:validation:Optional
	Duration *string `json:"duration" tf:"duration,omitempty"`

	// A condition control that determines how
	// metric-threshold conditions are evaluated when
	// data stops arriving.
	// Possible values are: EVALUATION_MISSING_DATA_INACTIVE, EVALUATION_MISSING_DATA_ACTIVE, EVALUATION_MISSING_DATA_NO_OP.
	// +kubebuilder:validation:Optional
	EvaluationMissingData *string `json:"evaluationMissingData,omitempty" tf:"evaluation_missing_data,omitempty"`

	// A filter that identifies which time series
	// should be compared with the threshold.The
	// filter is similar to the one that is
	// specified in the
	// MetricService.ListTimeSeries request (that
	// call is useful to verify the time series
	// that will be retrieved / processed) and must
	// specify the metric type and optionally may
	// contain restrictions on resource type,
	// resource labels, and metric labels. This
	// field may not exceed 2048 Unicode characters
	// in length.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// When this field is present, the MetricThreshold
	// condition forecasts whether the time series is
	// predicted to violate the threshold within the
	// forecastHorizon. When this field is not set, the
	// MetricThreshold tests the current value of the
	// timeseries against the threshold.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ForecastOptions *ForecastOptionsParameters `json:"forecastOptions,omitempty" tf:"forecast_options,omitempty"`

	// A value against which to compare the time
	// series.
	// +kubebuilder:validation:Optional
	ThresholdValue *float64 `json:"thresholdValue,omitempty" tf:"threshold_value,omitempty"`

	// The number/percent of time series for which
	// the comparison must hold in order for the
	// condition to trigger. If unspecified, then
	// the condition will trigger if the comparison
	// is true for any of the time series that have
	// been identified by filter and aggregations,
	// or by the ratio, if denominator_filter and
	// denominator_aggregations are specified.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Trigger *ConditionThresholdTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"`
}

func (*ConditionThresholdParameters) DeepCopy

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

func (*ConditionThresholdParameters) DeepCopyInto

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

type ConditionThresholdTriggerInitParameters

type ConditionThresholdTriggerInitParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionThresholdTriggerInitParameters) DeepCopy

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

func (*ConditionThresholdTriggerInitParameters) DeepCopyInto

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

type ConditionThresholdTriggerObservation

type ConditionThresholdTriggerObservation struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionThresholdTriggerObservation) DeepCopy

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

func (*ConditionThresholdTriggerObservation) DeepCopyInto

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

type ConditionThresholdTriggerParameters

type ConditionThresholdTriggerParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*ConditionThresholdTriggerParameters) DeepCopy

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

func (*ConditionThresholdTriggerParameters) DeepCopyInto

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

type ConditionsInitParameters

type ConditionsInitParameters struct {

	// A condition that checks that a time series
	// continues to receive new data points.
	// Structure is documented below.
	ConditionAbsent *ConditionAbsentInitParameters `json:"conditionAbsent,omitempty" tf:"condition_absent,omitempty"`

	// A condition that checks for log messages matching given constraints.
	// If set, no other conditions can be present.
	// Structure is documented below.
	ConditionMatchedLog *ConditionMatchedLogInitParameters `json:"conditionMatchedLog,omitempty" tf:"condition_matched_log,omitempty"`

	// A Monitoring Query Language query that outputs a boolean stream
	// Structure is documented below.
	ConditionMonitoringQueryLanguage *ConditionMonitoringQueryLanguageInitParameters `json:"conditionMonitoringQueryLanguage,omitempty" tf:"condition_monitoring_query_language,omitempty"`

	// A condition type that allows alert policies to be defined using
	// Prometheus Query Language (PromQL).
	// The PrometheusQueryLanguageCondition message contains information
	// from a Prometheus alerting rule and its associated rule group.
	// Structure is documented below.
	ConditionPrometheusQueryLanguage *ConditionPrometheusQueryLanguageInitParameters `json:"conditionPrometheusQueryLanguage,omitempty" tf:"condition_prometheus_query_language,omitempty"`

	// A condition that compares a time series against a
	// threshold.
	// Structure is documented below.
	ConditionThreshold *ConditionThresholdInitParameters `json:"conditionThreshold,omitempty" tf:"condition_threshold,omitempty"`

	// A short name or phrase used to identify the
	// condition in dashboards, notifications, and
	// incidents. To avoid confusion, don't use the same
	// display name for multiple conditions in the same
	// policy.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
}

func (*ConditionsInitParameters) DeepCopy

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

func (*ConditionsInitParameters) DeepCopyInto

func (in *ConditionsInitParameters) DeepCopyInto(out *ConditionsInitParameters)

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

type ConditionsObservation

type ConditionsObservation struct {

	// A condition that checks that a time series
	// continues to receive new data points.
	// Structure is documented below.
	ConditionAbsent *ConditionAbsentObservation `json:"conditionAbsent,omitempty" tf:"condition_absent,omitempty"`

	// A condition that checks for log messages matching given constraints.
	// If set, no other conditions can be present.
	// Structure is documented below.
	ConditionMatchedLog *ConditionMatchedLogObservation `json:"conditionMatchedLog,omitempty" tf:"condition_matched_log,omitempty"`

	// A Monitoring Query Language query that outputs a boolean stream
	// Structure is documented below.
	ConditionMonitoringQueryLanguage *ConditionMonitoringQueryLanguageObservation `json:"conditionMonitoringQueryLanguage,omitempty" tf:"condition_monitoring_query_language,omitempty"`

	// A condition type that allows alert policies to be defined using
	// Prometheus Query Language (PromQL).
	// The PrometheusQueryLanguageCondition message contains information
	// from a Prometheus alerting rule and its associated rule group.
	// Structure is documented below.
	ConditionPrometheusQueryLanguage *ConditionPrometheusQueryLanguageObservation `json:"conditionPrometheusQueryLanguage,omitempty" tf:"condition_prometheus_query_language,omitempty"`

	// A condition that compares a time series against a
	// threshold.
	// Structure is documented below.
	ConditionThreshold *ConditionThresholdObservation `json:"conditionThreshold,omitempty" tf:"condition_threshold,omitempty"`

	// A short name or phrase used to identify the
	// condition in dashboards, notifications, and
	// incidents. To avoid confusion, don't use the same
	// display name for multiple conditions in the same
	// policy.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// (Output)
	// The unique resource name for this condition.
	// Its syntax is:
	// projects/[PROJECT_ID]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID]
	// [CONDITION_ID] is assigned by Stackdriver Monitoring when
	// the condition is created as part of a new or updated alerting
	// policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*ConditionsObservation) DeepCopy

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

func (*ConditionsObservation) DeepCopyInto

func (in *ConditionsObservation) DeepCopyInto(out *ConditionsObservation)

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

type ConditionsParameters

type ConditionsParameters struct {

	// A condition that checks that a time series
	// continues to receive new data points.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ConditionAbsent *ConditionAbsentParameters `json:"conditionAbsent,omitempty" tf:"condition_absent,omitempty"`

	// A condition that checks for log messages matching given constraints.
	// If set, no other conditions can be present.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ConditionMatchedLog *ConditionMatchedLogParameters `json:"conditionMatchedLog,omitempty" tf:"condition_matched_log,omitempty"`

	// A Monitoring Query Language query that outputs a boolean stream
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ConditionMonitoringQueryLanguage *ConditionMonitoringQueryLanguageParameters `json:"conditionMonitoringQueryLanguage,omitempty" tf:"condition_monitoring_query_language,omitempty"`

	// A condition type that allows alert policies to be defined using
	// Prometheus Query Language (PromQL).
	// The PrometheusQueryLanguageCondition message contains information
	// from a Prometheus alerting rule and its associated rule group.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ConditionPrometheusQueryLanguage *ConditionPrometheusQueryLanguageParameters `json:"conditionPrometheusQueryLanguage,omitempty" tf:"condition_prometheus_query_language,omitempty"`

	// A condition that compares a time series against a
	// threshold.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ConditionThreshold *ConditionThresholdParameters `json:"conditionThreshold,omitempty" tf:"condition_threshold,omitempty"`

	// A short name or phrase used to identify the
	// condition in dashboards, notifications, and
	// incidents. To avoid confusion, don't use the same
	// display name for multiple conditions in the same
	// policy.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName" tf:"display_name,omitempty"`
}

func (*ConditionsParameters) DeepCopy

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

func (*ConditionsParameters) DeepCopyInto

func (in *ConditionsParameters) DeepCopyInto(out *ConditionsParameters)

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

type ContentMatchersInitParameters

type ContentMatchersInitParameters struct {

	// String or regex content to match (max 1024 bytes)
	Content *string `json:"content,omitempty" tf:"content,omitempty"`

	// Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH.
	// Structure is documented below.
	JSONPathMatcher *JSONPathMatcherInitParameters `json:"jsonPathMatcher,omitempty" tf:"json_path_matcher,omitempty"`

	// The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
	// Default value is CONTAINS_STRING.
	// Possible values are: CONTAINS_STRING, NOT_CONTAINS_STRING, MATCHES_REGEX, NOT_MATCHES_REGEX, MATCHES_JSON_PATH, NOT_MATCHES_JSON_PATH.
	Matcher *string `json:"matcher,omitempty" tf:"matcher,omitempty"`
}

func (*ContentMatchersInitParameters) DeepCopy

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

func (*ContentMatchersInitParameters) DeepCopyInto

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

type ContentMatchersObservation

type ContentMatchersObservation struct {

	// String or regex content to match (max 1024 bytes)
	Content *string `json:"content,omitempty" tf:"content,omitempty"`

	// Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH.
	// Structure is documented below.
	JSONPathMatcher *JSONPathMatcherObservation `json:"jsonPathMatcher,omitempty" tf:"json_path_matcher,omitempty"`

	// The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
	// Default value is CONTAINS_STRING.
	// Possible values are: CONTAINS_STRING, NOT_CONTAINS_STRING, MATCHES_REGEX, NOT_MATCHES_REGEX, MATCHES_JSON_PATH, NOT_MATCHES_JSON_PATH.
	Matcher *string `json:"matcher,omitempty" tf:"matcher,omitempty"`
}

func (*ContentMatchersObservation) DeepCopy

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

func (*ContentMatchersObservation) DeepCopyInto

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

type ContentMatchersParameters

type ContentMatchersParameters struct {

	// String or regex content to match (max 1024 bytes)
	// +kubebuilder:validation:Optional
	Content *string `json:"content" tf:"content,omitempty"`

	// Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	JSONPathMatcher *JSONPathMatcherParameters `json:"jsonPathMatcher,omitempty" tf:"json_path_matcher,omitempty"`

	// The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
	// Default value is CONTAINS_STRING.
	// Possible values are: CONTAINS_STRING, NOT_CONTAINS_STRING, MATCHES_REGEX, NOT_MATCHES_REGEX, MATCHES_JSON_PATH, NOT_MATCHES_JSON_PATH.
	// +kubebuilder:validation:Optional
	Matcher *string `json:"matcher,omitempty" tf:"matcher,omitempty"`
}

func (*ContentMatchersParameters) DeepCopy

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

func (*ContentMatchersParameters) DeepCopyInto

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

type CreationRecordInitParameters

type CreationRecordInitParameters struct {
}

func (*CreationRecordInitParameters) DeepCopy

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

func (*CreationRecordInitParameters) DeepCopyInto

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

type CreationRecordObservation

type CreationRecordObservation struct {

	// (Output)
	// When the change occurred.
	MutateTime *string `json:"mutateTime,omitempty" tf:"mutate_time,omitempty"`

	// (Output)
	// The email address of the user making the change.
	MutatedBy *string `json:"mutatedBy,omitempty" tf:"mutated_by,omitempty"`
}

func (*CreationRecordObservation) DeepCopy

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

func (*CreationRecordObservation) DeepCopyInto

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

type CreationRecordParameters

type CreationRecordParameters struct {
}

func (*CreationRecordParameters) DeepCopy

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

func (*CreationRecordParameters) DeepCopyInto

func (in *CreationRecordParameters) DeepCopyInto(out *CreationRecordParameters)

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

type CustomService

type CustomService struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              CustomServiceSpec   `json:"spec"`
	Status            CustomServiceStatus `json:"status,omitempty"`
}

CustomService is the Schema for the CustomServices API. A Service is a discrete, autonomous, and network-accessible unit, designed to solve an individual concern. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*CustomService) DeepCopy

func (in *CustomService) DeepCopy() *CustomService

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

func (*CustomService) DeepCopyInto

func (in *CustomService) DeepCopyInto(out *CustomService)

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

func (*CustomService) DeepCopyObject

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

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

func (*CustomService) GetCondition

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

GetCondition of this CustomService.

func (*CustomService) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this CustomService

func (*CustomService) GetDeletionPolicy

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

GetDeletionPolicy of this CustomService.

func (*CustomService) GetID

func (tr *CustomService) GetID() string

GetID returns ID of underlying Terraform resource of this CustomService

func (*CustomService) GetInitParameters

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

GetInitParameters of this CustomService

func (*CustomService) GetManagementPolicies

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

GetManagementPolicies of this CustomService.

func (*CustomService) GetMergedParameters

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

GetInitParameters of this CustomService

func (*CustomService) GetObservation

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

GetObservation of this CustomService

func (*CustomService) GetParameters

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

GetParameters of this CustomService

func (*CustomService) GetProviderConfigReference

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

GetProviderConfigReference of this CustomService.

func (*CustomService) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this CustomService.

func (*CustomService) GetTerraformResourceType

func (mg *CustomService) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CustomService

func (*CustomService) GetTerraformSchemaVersion

func (tr *CustomService) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CustomService) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this CustomService.

func (*CustomService) Hub

func (tr *CustomService) Hub()

Hub marks this type as a conversion hub.

func (*CustomService) LateInitialize

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

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

func (*CustomService) SetConditions

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

SetConditions of this CustomService.

func (*CustomService) SetDeletionPolicy

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

SetDeletionPolicy of this CustomService.

func (*CustomService) SetManagementPolicies

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

SetManagementPolicies of this CustomService.

func (*CustomService) SetObservation

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

SetObservation for this CustomService

func (*CustomService) SetParameters

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

SetParameters for this CustomService

func (*CustomService) SetProviderConfigReference

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

SetProviderConfigReference of this CustomService.

func (*CustomService) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this CustomService.

func (*CustomService) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this CustomService.

type CustomServiceInitParameters

type CustomServiceInitParameters struct {

	// Name used for UI elements listing this Service.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// An optional service ID to use. If not given, the server will generate a
	// service ID.
	ServiceID *string `json:"serviceId,omitempty" tf:"service_id,omitempty"`

	// Configuration for how to query telemetry on a Service.
	// Structure is documented below.
	Telemetry *TelemetryInitParameters `json:"telemetry,omitempty" tf:"telemetry,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*CustomServiceInitParameters) DeepCopy

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

func (*CustomServiceInitParameters) DeepCopyInto

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

type CustomServiceList

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

CustomServiceList contains a list of CustomServices

func (*CustomServiceList) DeepCopy

func (in *CustomServiceList) DeepCopy() *CustomServiceList

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

func (*CustomServiceList) DeepCopyInto

func (in *CustomServiceList) DeepCopyInto(out *CustomServiceList)

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

func (*CustomServiceList) DeepCopyObject

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

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

func (*CustomServiceList) GetItems

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

GetItems of this CustomServiceList.

type CustomServiceObservation

type CustomServiceObservation struct {

	// Name used for UI elements listing this Service.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The full resource name for this service. The syntax is:
	// projects/[PROJECT_ID]/services/[SERVICE_ID].
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// An optional service ID to use. If not given, the server will generate a
	// service ID.
	ServiceID *string `json:"serviceId,omitempty" tf:"service_id,omitempty"`

	// Configuration for how to query telemetry on a Service.
	// Structure is documented below.
	Telemetry *TelemetryObservation `json:"telemetry,omitempty" tf:"telemetry,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*CustomServiceObservation) DeepCopy

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

func (*CustomServiceObservation) DeepCopyInto

func (in *CustomServiceObservation) DeepCopyInto(out *CustomServiceObservation)

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

type CustomServiceParameters

type CustomServiceParameters struct {

	// Name used for UI elements listing this Service.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// An optional service ID to use. If not given, the server will generate a
	// service ID.
	// +kubebuilder:validation:Optional
	ServiceID *string `json:"serviceId,omitempty" tf:"service_id,omitempty"`

	// Configuration for how to query telemetry on a Service.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Telemetry *TelemetryParameters `json:"telemetry,omitempty" tf:"telemetry,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*CustomServiceParameters) DeepCopy

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

func (*CustomServiceParameters) DeepCopyInto

func (in *CustomServiceParameters) DeepCopyInto(out *CustomServiceParameters)

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

type CustomServiceSpec

type CustomServiceSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CustomServiceParameters `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 CustomServiceInitParameters `json:"initProvider,omitempty"`
}

CustomServiceSpec defines the desired state of CustomService

func (*CustomServiceSpec) DeepCopy

func (in *CustomServiceSpec) DeepCopy() *CustomServiceSpec

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

func (*CustomServiceSpec) DeepCopyInto

func (in *CustomServiceSpec) DeepCopyInto(out *CustomServiceSpec)

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

type CustomServiceStatus

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

CustomServiceStatus defines the observed state of CustomService.

func (*CustomServiceStatus) DeepCopy

func (in *CustomServiceStatus) DeepCopy() *CustomServiceStatus

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

func (*CustomServiceStatus) DeepCopyInto

func (in *CustomServiceStatus) DeepCopyInto(out *CustomServiceStatus)

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

type DenominatorAggregationsInitParameters

type DenominatorAggregationsInitParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*DenominatorAggregationsInitParameters) DeepCopy

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

func (*DenominatorAggregationsInitParameters) DeepCopyInto

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

type DenominatorAggregationsObservation

type DenominatorAggregationsObservation struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*DenominatorAggregationsObservation) DeepCopy

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

func (*DenominatorAggregationsObservation) DeepCopyInto

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

type DenominatorAggregationsParameters

type DenominatorAggregationsParameters struct {

	// The alignment period for per-time
	// series alignment. If present,
	// alignmentPeriod must be at least
	// 60 seconds. After per-time series
	// alignment, each time series will
	// contain data points only on the
	// period boundaries. If
	// perSeriesAligner is not specified
	// or equals ALIGN_NONE, then this
	// field is ignored. If
	// perSeriesAligner is specified and
	// does not equal ALIGN_NONE, then
	// this field must be defined;
	// otherwise an error is returned.
	// +kubebuilder:validation:Optional
	AlignmentPeriod *string `json:"alignmentPeriod,omitempty" tf:"alignment_period,omitempty"`

	// The approach to be used to combine
	// time series. Not all reducer
	// functions may be applied to all
	// time series, depending on the
	// metric type and the value type of
	// the original time series.
	// Reduction may change the metric
	// type of value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: REDUCE_NONE, REDUCE_MEAN, REDUCE_MIN, REDUCE_MAX, REDUCE_SUM, REDUCE_STDDEV, REDUCE_COUNT, REDUCE_COUNT_TRUE, REDUCE_COUNT_FALSE, REDUCE_FRACTION_TRUE, REDUCE_PERCENTILE_99, REDUCE_PERCENTILE_95, REDUCE_PERCENTILE_50, REDUCE_PERCENTILE_05.
	// +kubebuilder:validation:Optional
	CrossSeriesReducer *string `json:"crossSeriesReducer,omitempty" tf:"cross_series_reducer,omitempty"`

	// The set of fields to preserve when
	// crossSeriesReducer is specified.
	// The groupByFields determine how
	// the time series are partitioned
	// into subsets prior to applying the
	// aggregation function. Each subset
	// contains time series that have the
	// same value for each of the
	// grouping fields. Each individual
	// time series is a member of exactly
	// one subset. The crossSeriesReducer
	// is applied to each subset of time
	// series. It is not possible to
	// reduce across different resource
	// types, so this field implicitly
	// contains resource.type. Fields not
	// specified in groupByFields are
	// aggregated away. If groupByFields
	// is not specified and all the time
	// series have the same resource
	// type, then the time series are
	// aggregated into a single output
	// time series. If crossSeriesReducer
	// is not defined, this field is
	// ignored.
	// +kubebuilder:validation:Optional
	GroupByFields []*string `json:"groupByFields,omitempty" tf:"group_by_fields,omitempty"`

	// The approach to be used to align
	// individual time series. Not all
	// alignment functions may be applied
	// to all time series, depending on
	// the metric type and value type of
	// the original time series.
	// Alignment may change the metric
	// type or the value type of the time
	// series.Time series data must be
	// aligned in order to perform cross-
	// time series reduction. If
	// crossSeriesReducer is specified,
	// then perSeriesAligner must be
	// specified and not equal ALIGN_NONE
	// and alignmentPeriod must be
	// specified; otherwise, an error is
	// returned.
	// Possible values are: ALIGN_NONE, ALIGN_DELTA, ALIGN_RATE, ALIGN_INTERPOLATE, ALIGN_NEXT_OLDER, ALIGN_MIN, ALIGN_MAX, ALIGN_MEAN, ALIGN_COUNT, ALIGN_SUM, ALIGN_STDDEV, ALIGN_COUNT_TRUE, ALIGN_COUNT_FALSE, ALIGN_FRACTION_TRUE, ALIGN_PERCENTILE_99, ALIGN_PERCENTILE_95, ALIGN_PERCENTILE_50, ALIGN_PERCENTILE_05, ALIGN_PERCENT_CHANGE.
	// +kubebuilder:validation:Optional
	PerSeriesAligner *string `json:"perSeriesAligner,omitempty" tf:"per_series_aligner,omitempty"`
}

func (*DenominatorAggregationsParameters) DeepCopy

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

func (*DenominatorAggregationsParameters) DeepCopyInto

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

type DistributionCutInitParameters

type DistributionCutInitParameters struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	DistributionFilter *string `json:"distributionFilter,omitempty" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *RangeInitParameters `json:"range,omitempty" tf:"range,omitempty"`
}

func (*DistributionCutInitParameters) DeepCopy

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

func (*DistributionCutInitParameters) DeepCopyInto

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

type DistributionCutObservation

type DistributionCutObservation struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	DistributionFilter *string `json:"distributionFilter,omitempty" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *RangeObservation `json:"range,omitempty" tf:"range,omitempty"`
}

func (*DistributionCutObservation) DeepCopy

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

func (*DistributionCutObservation) DeepCopyInto

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

type DistributionCutParameters

type DistributionCutParameters struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	// +kubebuilder:validation:Optional
	DistributionFilter *string `json:"distributionFilter" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Range *RangeParameters `json:"range" tf:"range,omitempty"`
}

func (*DistributionCutParameters) DeepCopy

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

func (*DistributionCutParameters) DeepCopyInto

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

type DistributionCutRangeInitParameters

type DistributionCutRangeInitParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*DistributionCutRangeInitParameters) DeepCopy

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

func (*DistributionCutRangeInitParameters) DeepCopyInto

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

type DistributionCutRangeObservation

type DistributionCutRangeObservation struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*DistributionCutRangeObservation) DeepCopy

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

func (*DistributionCutRangeObservation) DeepCopyInto

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

type DistributionCutRangeParameters

type DistributionCutRangeParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*DistributionCutRangeParameters) DeepCopy

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

func (*DistributionCutRangeParameters) DeepCopyInto

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

type DocumentationInitParameters

type DocumentationInitParameters struct {

	// The text of the documentation, interpreted according to mimeType.
	// The content may not exceed 8,192 Unicode characters and may not
	// exceed more than 10,240 bytes when encoded in UTF-8 format,
	// whichever is smaller.
	Content *string `json:"content,omitempty" tf:"content,omitempty"`

	// The format of the content field. Presently, only the value
	// "text/markdown" is supported.
	MimeType *string `json:"mimeType,omitempty" tf:"mime_type,omitempty"`

	// The subject line of the notification. The subject line may not
	// exceed 10,240 bytes. In notifications generated by this policy the contents
	// of the subject line after variable expansion will be truncated to 255 bytes
	// or shorter at the latest UTF-8 character boundary.
	Subject *string `json:"subject,omitempty" tf:"subject,omitempty"`
}

func (*DocumentationInitParameters) DeepCopy

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

func (*DocumentationInitParameters) DeepCopyInto

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

type DocumentationObservation

type DocumentationObservation struct {

	// The text of the documentation, interpreted according to mimeType.
	// The content may not exceed 8,192 Unicode characters and may not
	// exceed more than 10,240 bytes when encoded in UTF-8 format,
	// whichever is smaller.
	Content *string `json:"content,omitempty" tf:"content,omitempty"`

	// The format of the content field. Presently, only the value
	// "text/markdown" is supported.
	MimeType *string `json:"mimeType,omitempty" tf:"mime_type,omitempty"`

	// The subject line of the notification. The subject line may not
	// exceed 10,240 bytes. In notifications generated by this policy the contents
	// of the subject line after variable expansion will be truncated to 255 bytes
	// or shorter at the latest UTF-8 character boundary.
	Subject *string `json:"subject,omitempty" tf:"subject,omitempty"`
}

func (*DocumentationObservation) DeepCopy

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

func (*DocumentationObservation) DeepCopyInto

func (in *DocumentationObservation) DeepCopyInto(out *DocumentationObservation)

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

type DocumentationParameters

type DocumentationParameters struct {

	// The text of the documentation, interpreted according to mimeType.
	// The content may not exceed 8,192 Unicode characters and may not
	// exceed more than 10,240 bytes when encoded in UTF-8 format,
	// whichever is smaller.
	// +kubebuilder:validation:Optional
	Content *string `json:"content,omitempty" tf:"content,omitempty"`

	// The format of the content field. Presently, only the value
	// "text/markdown" is supported.
	// +kubebuilder:validation:Optional
	MimeType *string `json:"mimeType,omitempty" tf:"mime_type,omitempty"`

	// The subject line of the notification. The subject line may not
	// exceed 10,240 bytes. In notifications generated by this policy the contents
	// of the subject line after variable expansion will be truncated to 255 bytes
	// or shorter at the latest UTF-8 character boundary.
	// +kubebuilder:validation:Optional
	Subject *string `json:"subject,omitempty" tf:"subject,omitempty"`
}

func (*DocumentationParameters) DeepCopy

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

func (*DocumentationParameters) DeepCopyInto

func (in *DocumentationParameters) DeepCopyInto(out *DocumentationParameters)

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

type ForecastOptionsInitParameters

type ForecastOptionsInitParameters struct {

	// The length of time into the future to forecast
	// whether a timeseries will violate the threshold.
	// If the predicted value is found to violate the
	// threshold, and the violation is observed in all
	// forecasts made for the Configured duration,
	// then the timeseries is considered to be failing.
	ForecastHorizon *string `json:"forecastHorizon,omitempty" tf:"forecast_horizon,omitempty"`
}

func (*ForecastOptionsInitParameters) DeepCopy

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

func (*ForecastOptionsInitParameters) DeepCopyInto

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

type ForecastOptionsObservation

type ForecastOptionsObservation struct {

	// The length of time into the future to forecast
	// whether a timeseries will violate the threshold.
	// If the predicted value is found to violate the
	// threshold, and the violation is observed in all
	// forecasts made for the Configured duration,
	// then the timeseries is considered to be failing.
	ForecastHorizon *string `json:"forecastHorizon,omitempty" tf:"forecast_horizon,omitempty"`
}

func (*ForecastOptionsObservation) DeepCopy

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

func (*ForecastOptionsObservation) DeepCopyInto

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

type ForecastOptionsParameters

type ForecastOptionsParameters struct {

	// The length of time into the future to forecast
	// whether a timeseries will violate the threshold.
	// If the predicted value is found to violate the
	// threshold, and the violation is observed in all
	// forecasts made for the Configured duration,
	// then the timeseries is considered to be failing.
	// +kubebuilder:validation:Optional
	ForecastHorizon *string `json:"forecastHorizon" tf:"forecast_horizon,omitempty"`
}

func (*ForecastOptionsParameters) DeepCopy

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

func (*ForecastOptionsParameters) DeepCopyInto

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

type GoodTotalRatioInitParameters

type GoodTotalRatioInitParameters struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*GoodTotalRatioInitParameters) DeepCopy

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

func (*GoodTotalRatioInitParameters) DeepCopyInto

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

type GoodTotalRatioObservation

type GoodTotalRatioObservation struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*GoodTotalRatioObservation) DeepCopy

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

func (*GoodTotalRatioObservation) DeepCopyInto

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

type GoodTotalRatioParameters

type GoodTotalRatioParameters struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*GoodTotalRatioParameters) DeepCopy

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

func (*GoodTotalRatioParameters) DeepCopyInto

func (in *GoodTotalRatioParameters) DeepCopyInto(out *GoodTotalRatioParameters)

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

type GoodTotalRatioThresholdInitParameters

type GoodTotalRatioThresholdInitParameters struct {

	// Basic SLI to evaluate to judge window quality.
	// Structure is documented below.
	BasicSliPerformance *BasicSliPerformanceInitParameters `json:"basicSliPerformance,omitempty" tf:"basic_sli_performance,omitempty"`

	// Request-based SLI to evaluate to judge window quality.
	// Structure is documented below.
	Performance *PerformanceInitParameters `json:"performance,omitempty" tf:"performance,omitempty"`

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*GoodTotalRatioThresholdInitParameters) DeepCopy

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

func (*GoodTotalRatioThresholdInitParameters) DeepCopyInto

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

type GoodTotalRatioThresholdObservation

type GoodTotalRatioThresholdObservation struct {

	// Basic SLI to evaluate to judge window quality.
	// Structure is documented below.
	BasicSliPerformance *BasicSliPerformanceObservation `json:"basicSliPerformance,omitempty" tf:"basic_sli_performance,omitempty"`

	// Request-based SLI to evaluate to judge window quality.
	// Structure is documented below.
	Performance *PerformanceObservation `json:"performance,omitempty" tf:"performance,omitempty"`

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*GoodTotalRatioThresholdObservation) DeepCopy

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

func (*GoodTotalRatioThresholdObservation) DeepCopyInto

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

type GoodTotalRatioThresholdParameters

type GoodTotalRatioThresholdParameters struct {

	// Basic SLI to evaluate to judge window quality.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	BasicSliPerformance *BasicSliPerformanceParameters `json:"basicSliPerformance,omitempty" tf:"basic_sli_performance,omitempty"`

	// Request-based SLI to evaluate to judge window quality.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Performance *PerformanceParameters `json:"performance,omitempty" tf:"performance,omitempty"`

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	// +kubebuilder:validation:Optional
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*GoodTotalRatioThresholdParameters) DeepCopy

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

func (*GoodTotalRatioThresholdParameters) DeepCopyInto

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

type HTTPCheckInitParameters

type HTTPCheckInitParameters struct {

	// If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
	// Structure is documented below.
	AcceptedResponseStatusCodes []AcceptedResponseStatusCodesInitParameters `json:"acceptedResponseStatusCodes,omitempty" tf:"accepted_response_status_codes,omitempty"`

	// The authentication information. Optional when creating an HTTP check; defaults to empty.
	// Structure is documented below.
	AuthInfo *AuthInfoInitParameters `json:"authInfo,omitempty" tf:"auth_info,omitempty"`

	// The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte. Note - As with all bytes fields JSON representations are base64 encoded. e.g. foo=bar in URL-encoded form is foo%3Dbar and in base64 encoding is Zm9vJTI1M0RiYXI=.
	Body *string `json:"body,omitempty" tf:"body,omitempty"`

	// The content type to use for the check.
	// Possible values are: TYPE_UNSPECIFIED, URL_ENCODED, USER_PROVIDED.
	ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"`

	// A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following 1. content_typeisURL_ENCODEDandcustom_content_typeis set. 2.content_typeisUSER_PROVIDEDandcustom_content_type` is not set.
	CustomContentType *string `json:"customContentType,omitempty" tf:"custom_content_type,omitempty"`

	// The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described in RFC 2616 (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
	// +mapType=granular
	Headers map[string]*string `json:"headers,omitempty" tf:"headers,omitempty"`

	// Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
	MaskHeaders *bool `json:"maskHeaders,omitempty" tf:"mask_headers,omitempty"`

	// The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. If the provided path does not begin with /, a / will be prepended automatically. Optional (defaults to /).
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// Contains information needed to add pings to an HTTP check.
	// Structure is documented below.
	PingConfig *PingConfigInitParameters `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) and path to construct the full URL. Optional (defaults to 80 without SSL, or 443 with SSL).
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
	// Default value is GET.
	// Possible values are: METHOD_UNSPECIFIED, GET, POST.
	RequestMethod *string `json:"requestMethod,omitempty" tf:"request_method,omitempty"`

	// If true, use HTTPS instead of HTTP to run the check.
	UseSSL *bool `json:"useSsl,omitempty" tf:"use_ssl,omitempty"`

	// Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
	ValidateSSL *bool `json:"validateSsl,omitempty" tf:"validate_ssl,omitempty"`
}

func (*HTTPCheckInitParameters) DeepCopy

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

func (*HTTPCheckInitParameters) DeepCopyInto

func (in *HTTPCheckInitParameters) DeepCopyInto(out *HTTPCheckInitParameters)

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

type HTTPCheckObservation

type HTTPCheckObservation struct {

	// If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
	// Structure is documented below.
	AcceptedResponseStatusCodes []AcceptedResponseStatusCodesObservation `json:"acceptedResponseStatusCodes,omitempty" tf:"accepted_response_status_codes,omitempty"`

	// The authentication information. Optional when creating an HTTP check; defaults to empty.
	// Structure is documented below.
	AuthInfo *AuthInfoObservation `json:"authInfo,omitempty" tf:"auth_info,omitempty"`

	// The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte. Note - As with all bytes fields JSON representations are base64 encoded. e.g. foo=bar in URL-encoded form is foo%3Dbar and in base64 encoding is Zm9vJTI1M0RiYXI=.
	Body *string `json:"body,omitempty" tf:"body,omitempty"`

	// The content type to use for the check.
	// Possible values are: TYPE_UNSPECIFIED, URL_ENCODED, USER_PROVIDED.
	ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"`

	// A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following 1. content_typeisURL_ENCODEDandcustom_content_typeis set. 2.content_typeisUSER_PROVIDEDandcustom_content_type` is not set.
	CustomContentType *string `json:"customContentType,omitempty" tf:"custom_content_type,omitempty"`

	// The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described in RFC 2616 (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
	// +mapType=granular
	Headers map[string]*string `json:"headers,omitempty" tf:"headers,omitempty"`

	// Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
	MaskHeaders *bool `json:"maskHeaders,omitempty" tf:"mask_headers,omitempty"`

	// The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. If the provided path does not begin with /, a / will be prepended automatically. Optional (defaults to /).
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// Contains information needed to add pings to an HTTP check.
	// Structure is documented below.
	PingConfig *PingConfigObservation `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) and path to construct the full URL. Optional (defaults to 80 without SSL, or 443 with SSL).
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
	// Default value is GET.
	// Possible values are: METHOD_UNSPECIFIED, GET, POST.
	RequestMethod *string `json:"requestMethod,omitempty" tf:"request_method,omitempty"`

	// If true, use HTTPS instead of HTTP to run the check.
	UseSSL *bool `json:"useSsl,omitempty" tf:"use_ssl,omitempty"`

	// Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
	ValidateSSL *bool `json:"validateSsl,omitempty" tf:"validate_ssl,omitempty"`
}

func (*HTTPCheckObservation) DeepCopy

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

func (*HTTPCheckObservation) DeepCopyInto

func (in *HTTPCheckObservation) DeepCopyInto(out *HTTPCheckObservation)

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

type HTTPCheckParameters

type HTTPCheckParameters struct {

	// If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AcceptedResponseStatusCodes []AcceptedResponseStatusCodesParameters `json:"acceptedResponseStatusCodes,omitempty" tf:"accepted_response_status_codes,omitempty"`

	// The authentication information. Optional when creating an HTTP check; defaults to empty.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AuthInfo *AuthInfoParameters `json:"authInfo,omitempty" tf:"auth_info,omitempty"`

	// The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte. Note - As with all bytes fields JSON representations are base64 encoded. e.g. foo=bar in URL-encoded form is foo%3Dbar and in base64 encoding is Zm9vJTI1M0RiYXI=.
	// +kubebuilder:validation:Optional
	Body *string `json:"body,omitempty" tf:"body,omitempty"`

	// The content type to use for the check.
	// Possible values are: TYPE_UNSPECIFIED, URL_ENCODED, USER_PROVIDED.
	// +kubebuilder:validation:Optional
	ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"`

	// A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following 1. content_typeisURL_ENCODEDandcustom_content_typeis set. 2.content_typeisUSER_PROVIDEDandcustom_content_type` is not set.
	// +kubebuilder:validation:Optional
	CustomContentType *string `json:"customContentType,omitempty" tf:"custom_content_type,omitempty"`

	// The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described in RFC 2616 (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Headers map[string]*string `json:"headers,omitempty" tf:"headers,omitempty"`

	// Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
	// +kubebuilder:validation:Optional
	MaskHeaders *bool `json:"maskHeaders,omitempty" tf:"mask_headers,omitempty"`

	// The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. If the provided path does not begin with /, a / will be prepended automatically. Optional (defaults to /).
	// +kubebuilder:validation:Optional
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// Contains information needed to add pings to an HTTP check.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	PingConfig *PingConfigParameters `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) and path to construct the full URL. Optional (defaults to 80 without SSL, or 443 with SSL).
	// +kubebuilder:validation:Optional
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
	// Default value is GET.
	// Possible values are: METHOD_UNSPECIFIED, GET, POST.
	// +kubebuilder:validation:Optional
	RequestMethod *string `json:"requestMethod,omitempty" tf:"request_method,omitempty"`

	// If true, use HTTPS instead of HTTP to run the check.
	// +kubebuilder:validation:Optional
	UseSSL *bool `json:"useSsl,omitempty" tf:"use_ssl,omitempty"`

	// Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
	// +kubebuilder:validation:Optional
	ValidateSSL *bool `json:"validateSsl,omitempty" tf:"validate_ssl,omitempty"`
}

func (*HTTPCheckParameters) DeepCopy

func (in *HTTPCheckParameters) DeepCopy() *HTTPCheckParameters

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

func (*HTTPCheckParameters) DeepCopyInto

func (in *HTTPCheckParameters) DeepCopyInto(out *HTTPCheckParameters)

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

type JSONPathMatcherInitParameters

type JSONPathMatcherInitParameters struct {

	// Options to perform JSONPath content matching.
	// Default value is EXACT_MATCH.
	// Possible values are: EXACT_MATCH, REGEX_MATCH.
	JSONMatcher *string `json:"jsonMatcher,omitempty" tf:"json_matcher,omitempty"`

	// JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
	JSONPath *string `json:"jsonPath,omitempty" tf:"json_path,omitempty"`
}

func (*JSONPathMatcherInitParameters) DeepCopy

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

func (*JSONPathMatcherInitParameters) DeepCopyInto

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

type JSONPathMatcherObservation

type JSONPathMatcherObservation struct {

	// Options to perform JSONPath content matching.
	// Default value is EXACT_MATCH.
	// Possible values are: EXACT_MATCH, REGEX_MATCH.
	JSONMatcher *string `json:"jsonMatcher,omitempty" tf:"json_matcher,omitempty"`

	// JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
	JSONPath *string `json:"jsonPath,omitempty" tf:"json_path,omitempty"`
}

func (*JSONPathMatcherObservation) DeepCopy

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

func (*JSONPathMatcherObservation) DeepCopyInto

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

type JSONPathMatcherParameters

type JSONPathMatcherParameters struct {

	// Options to perform JSONPath content matching.
	// Default value is EXACT_MATCH.
	// Possible values are: EXACT_MATCH, REGEX_MATCH.
	// +kubebuilder:validation:Optional
	JSONMatcher *string `json:"jsonMatcher,omitempty" tf:"json_matcher,omitempty"`

	// JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
	// +kubebuilder:validation:Optional
	JSONPath *string `json:"jsonPath" tf:"json_path,omitempty"`
}

func (*JSONPathMatcherParameters) DeepCopy

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

func (*JSONPathMatcherParameters) DeepCopyInto

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

type LabelsInitParameters

type LabelsInitParameters struct {

	// A human-readable description for the label.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The key for this label. The key must not exceed 100 characters. The first character of the key must be an upper- or lower-case letter, the remaining characters must be letters, digits or underscores, and the key must match the regular expression [a-zA-Z][a-zA-Z0-9_]*
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// The type of data that can be assigned to the label.
	// Default value is STRING.
	// Possible values are: STRING, BOOL, INT64.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsInitParameters) DeepCopy

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

func (*LabelsInitParameters) DeepCopyInto

func (in *LabelsInitParameters) DeepCopyInto(out *LabelsInitParameters)

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

type LabelsObservation

type LabelsObservation struct {

	// A human-readable description for the label.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The key for this label. The key must not exceed 100 characters. The first character of the key must be an upper- or lower-case letter, the remaining characters must be letters, digits or underscores, and the key must match the regular expression [a-zA-Z][a-zA-Z0-9_]*
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// The type of data that can be assigned to the label.
	// Default value is STRING.
	// Possible values are: STRING, BOOL, INT64.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsObservation) DeepCopy

func (in *LabelsObservation) DeepCopy() *LabelsObservation

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

func (*LabelsObservation) DeepCopyInto

func (in *LabelsObservation) DeepCopyInto(out *LabelsObservation)

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

type LabelsParameters

type LabelsParameters struct {

	// A human-readable description for the label.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The key for this label. The key must not exceed 100 characters. The first character of the key must be an upper- or lower-case letter, the remaining characters must be letters, digits or underscores, and the key must match the regular expression [a-zA-Z][a-zA-Z0-9_]*
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// The type of data that can be assigned to the label.
	// Default value is STRING.
	// Possible values are: STRING, BOOL, INT64.
	// +kubebuilder:validation:Optional
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsParameters) DeepCopy

func (in *LabelsParameters) DeepCopy() *LabelsParameters

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

func (*LabelsParameters) DeepCopyInto

func (in *LabelsParameters) DeepCopyInto(out *LabelsParameters)

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

type LatencyInitParameters

type LatencyInitParameters struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*LatencyInitParameters) DeepCopy

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

func (*LatencyInitParameters) DeepCopyInto

func (in *LatencyInitParameters) DeepCopyInto(out *LatencyInitParameters)

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

type LatencyObservation

type LatencyObservation struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*LatencyObservation) DeepCopy

func (in *LatencyObservation) DeepCopy() *LatencyObservation

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

func (*LatencyObservation) DeepCopyInto

func (in *LatencyObservation) DeepCopyInto(out *LatencyObservation)

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

type LatencyParameters

type LatencyParameters struct {

	// A duration string, e.g. 10s.
	// Good service is defined to be the count of requests made to
	// this service that return in no more than threshold.
	// +kubebuilder:validation:Optional
	Threshold *string `json:"threshold" tf:"threshold,omitempty"`
}

func (*LatencyParameters) DeepCopy

func (in *LatencyParameters) DeepCopy() *LatencyParameters

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

func (*LatencyParameters) DeepCopyInto

func (in *LatencyParameters) DeepCopyInto(out *LatencyParameters)

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

type MetadataInitParameters

type MetadataInitParameters struct {

	// The delay of data points caused by ingestion. Data points older than this age are guaranteed to be ingested and available to be read, excluding data loss due to errors. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	IngestDelay *string `json:"ingestDelay,omitempty" tf:"ingest_delay,omitempty"`

	// The sampling period of metric data points. For metrics which are written periodically, consecutive data points are stored at this time interval, excluding data loss due to errors. Metrics with a higher granularity have a smaller sampling period. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	SamplePeriod *string `json:"samplePeriod,omitempty" tf:"sample_period,omitempty"`
}

func (*MetadataInitParameters) DeepCopy

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

func (*MetadataInitParameters) DeepCopyInto

func (in *MetadataInitParameters) DeepCopyInto(out *MetadataInitParameters)

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

type MetadataObservation

type MetadataObservation struct {

	// The delay of data points caused by ingestion. Data points older than this age are guaranteed to be ingested and available to be read, excluding data loss due to errors. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	IngestDelay *string `json:"ingestDelay,omitempty" tf:"ingest_delay,omitempty"`

	// The sampling period of metric data points. For metrics which are written periodically, consecutive data points are stored at this time interval, excluding data loss due to errors. Metrics with a higher granularity have a smaller sampling period. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	SamplePeriod *string `json:"samplePeriod,omitempty" tf:"sample_period,omitempty"`
}

func (*MetadataObservation) DeepCopy

func (in *MetadataObservation) DeepCopy() *MetadataObservation

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

func (*MetadataObservation) DeepCopyInto

func (in *MetadataObservation) DeepCopyInto(out *MetadataObservation)

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

type MetadataParameters

type MetadataParameters struct {

	// The delay of data points caused by ingestion. Data points older than this age are guaranteed to be ingested and available to be read, excluding data loss due to errors. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	// +kubebuilder:validation:Optional
	IngestDelay *string `json:"ingestDelay,omitempty" tf:"ingest_delay,omitempty"`

	// The sampling period of metric data points. For metrics which are written periodically, consecutive data points are stored at this time interval, excluding data loss due to errors. Metrics with a higher granularity have a smaller sampling period. In [duration format](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?&_ga=2.264881487.1507873253.1593446723-935052455.1591817775#google.protobuf.Duration).
	// +kubebuilder:validation:Optional
	SamplePeriod *string `json:"samplePeriod,omitempty" tf:"sample_period,omitempty"`
}

func (*MetadataParameters) DeepCopy

func (in *MetadataParameters) DeepCopy() *MetadataParameters

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

func (*MetadataParameters) DeepCopyInto

func (in *MetadataParameters) DeepCopyInto(out *MetadataParameters)

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

type MetricDescriptor

type MetricDescriptor 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.displayName) || (has(self.initProvider) && has(self.initProvider.displayName))",message="spec.forProvider.displayName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.metricKind) || (has(self.initProvider) && has(self.initProvider.metricKind))",message="spec.forProvider.metricKind is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || (has(self.initProvider) && has(self.initProvider.type))",message="spec.forProvider.type is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.valueType) || (has(self.initProvider) && has(self.initProvider.valueType))",message="spec.forProvider.valueType is a required parameter"
	Spec   MetricDescriptorSpec   `json:"spec"`
	Status MetricDescriptorStatus `json:"status,omitempty"`
}

MetricDescriptor is the Schema for the MetricDescriptors API. Defines a metric type and its schema. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*MetricDescriptor) DeepCopy

func (in *MetricDescriptor) DeepCopy() *MetricDescriptor

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

func (*MetricDescriptor) DeepCopyInto

func (in *MetricDescriptor) DeepCopyInto(out *MetricDescriptor)

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

func (*MetricDescriptor) DeepCopyObject

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

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

func (*MetricDescriptor) GetCondition

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

GetCondition of this MetricDescriptor.

func (*MetricDescriptor) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this MetricDescriptor

func (*MetricDescriptor) GetDeletionPolicy

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

GetDeletionPolicy of this MetricDescriptor.

func (*MetricDescriptor) GetID

func (tr *MetricDescriptor) GetID() string

GetID returns ID of underlying Terraform resource of this MetricDescriptor

func (*MetricDescriptor) GetInitParameters

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

GetInitParameters of this MetricDescriptor

func (*MetricDescriptor) GetManagementPolicies

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

GetManagementPolicies of this MetricDescriptor.

func (*MetricDescriptor) GetMergedParameters

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

GetInitParameters of this MetricDescriptor

func (*MetricDescriptor) GetObservation

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

GetObservation of this MetricDescriptor

func (*MetricDescriptor) GetParameters

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

GetParameters of this MetricDescriptor

func (*MetricDescriptor) GetProviderConfigReference

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

GetProviderConfigReference of this MetricDescriptor.

func (*MetricDescriptor) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this MetricDescriptor.

func (*MetricDescriptor) GetTerraformResourceType

func (mg *MetricDescriptor) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this MetricDescriptor

func (*MetricDescriptor) GetTerraformSchemaVersion

func (tr *MetricDescriptor) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*MetricDescriptor) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this MetricDescriptor.

func (*MetricDescriptor) Hub

func (tr *MetricDescriptor) Hub()

Hub marks this type as a conversion hub.

func (*MetricDescriptor) LateInitialize

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

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

func (*MetricDescriptor) SetConditions

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

SetConditions of this MetricDescriptor.

func (*MetricDescriptor) SetDeletionPolicy

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

SetDeletionPolicy of this MetricDescriptor.

func (*MetricDescriptor) SetManagementPolicies

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

SetManagementPolicies of this MetricDescriptor.

func (*MetricDescriptor) SetObservation

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

SetObservation for this MetricDescriptor

func (*MetricDescriptor) SetParameters

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

SetParameters for this MetricDescriptor

func (*MetricDescriptor) SetProviderConfigReference

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

SetProviderConfigReference of this MetricDescriptor.

func (*MetricDescriptor) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this MetricDescriptor.

func (*MetricDescriptor) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this MetricDescriptor.

type MetricDescriptorInitParameters

type MetricDescriptorInitParameters struct {

	// A detailed description of the metric, which can be used in documentation.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count".
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. In order to delete a label, the entire resource must be deleted, then created with the desired labels.
	// Structure is documented below.
	Labels []LabelsInitParameters `json:"labels,omitempty" tf:"labels,omitempty"`

	// The launch stage of the metric definition.
	// Possible values are: LAUNCH_STAGE_UNSPECIFIED, UNIMPLEMENTED, PRELAUNCH, EARLY_ACCESS, ALPHA, BETA, GA, DEPRECATED.
	LaunchStage *string `json:"launchStage,omitempty" tf:"launch_stage,omitempty"`

	// Metadata which can be used to guide usage of the metric.
	// Structure is documented below.
	Metadata *MetadataInitParameters `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: METRIC_KIND_UNSPECIFIED, GAUGE, DELTA, CUMULATIVE.
	MetricKind *string `json:"metricKind,omitempty" tf:"metric_kind,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The metric type, including its DNS name prefix. The type is not URL-encoded. All service defined metrics must be prefixed with the service name, in the format of {service name}/{relative metric name}, such as cloudsql.googleapis.com/database/cpu/utilization. The relative metric name must have only upper and lower-case letters, digits, '/' and underscores '_' are allowed. Additionally, the maximum number of characters allowed for the relative_metric_name is 100. All user-defined metric types have the DNS name custom.googleapis.com, external.googleapis.com, or logging.googleapis.com/user/.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The units in which the metric value is reported. It is only applicable if the
	// valueType is INT64, DOUBLE, or DISTRIBUTION. The unit defines the representation of
	// the stored metric values.
	// Different systems may scale the values to be more easily displayed (so a value of
	// 0.02KBy might be displayed as 20By, and a value of 3523KBy might be displayed as
	// 3.5MBy). However, if the unit is KBy, then the value of the metric is always in
	// thousands of bytes, no matter how it may be displayed.
	// If you want a custom metric to record the exact number of CPU-seconds used by a job,
	// you can create an INT64 CUMULATIVE metric whose unit is s{CPU} (or equivalently
	// 1s{CPU} or just s). If the job uses 12,005 CPU-seconds, then the value is written as
	// 12005.
	// Alternatively, if you want a custom metric to record data in a more granular way, you
	// can create a DOUBLE CUMULATIVE metric whose unit is ks{CPU}, and then write the value
	// 12.005 (which is 12005/1000), or use Kis{CPU} and write 11.723 (which is 12005/1024).
	// The supported units are a subset of The Unified Code for Units of Measure standard.
	// More info can be found in the API documentation
	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.metricDescriptors).
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*MetricDescriptorInitParameters) DeepCopy

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

func (*MetricDescriptorInitParameters) DeepCopyInto

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

type MetricDescriptorList

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

MetricDescriptorList contains a list of MetricDescriptors

func (*MetricDescriptorList) DeepCopy

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

func (*MetricDescriptorList) DeepCopyInto

func (in *MetricDescriptorList) DeepCopyInto(out *MetricDescriptorList)

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

func (*MetricDescriptorList) DeepCopyObject

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

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

func (*MetricDescriptorList) GetItems

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

GetItems of this MetricDescriptorList.

type MetricDescriptorObservation

type MetricDescriptorObservation struct {

	// A detailed description of the metric, which can be used in documentation.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count".
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. In order to delete a label, the entire resource must be deleted, then created with the desired labels.
	// Structure is documented below.
	Labels []LabelsObservation `json:"labels,omitempty" tf:"labels,omitempty"`

	// The launch stage of the metric definition.
	// Possible values are: LAUNCH_STAGE_UNSPECIFIED, UNIMPLEMENTED, PRELAUNCH, EARLY_ACCESS, ALPHA, BETA, GA, DEPRECATED.
	LaunchStage *string `json:"launchStage,omitempty" tf:"launch_stage,omitempty"`

	// Metadata which can be used to guide usage of the metric.
	// Structure is documented below.
	Metadata *MetadataObservation `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: METRIC_KIND_UNSPECIFIED, GAUGE, DELTA, CUMULATIVE.
	MetricKind *string `json:"metricKind,omitempty" tf:"metric_kind,omitempty"`

	// If present, then a time series, which is identified partially by a metric type and a MonitoredResourceDescriptor, that is associated with this metric type can only be associated with one of the monitored resource types listed here. This field allows time series to be associated with the intersection of this metric type and the monitored resource types in this list.
	// +listType=set
	MonitoredResourceTypes []*string `json:"monitoredResourceTypes,omitempty" tf:"monitored_resource_types,omitempty"`

	// The resource name of the metric descriptor.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The metric type, including its DNS name prefix. The type is not URL-encoded. All service defined metrics must be prefixed with the service name, in the format of {service name}/{relative metric name}, such as cloudsql.googleapis.com/database/cpu/utilization. The relative metric name must have only upper and lower-case letters, digits, '/' and underscores '_' are allowed. Additionally, the maximum number of characters allowed for the relative_metric_name is 100. All user-defined metric types have the DNS name custom.googleapis.com, external.googleapis.com, or logging.googleapis.com/user/.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The units in which the metric value is reported. It is only applicable if the
	// valueType is INT64, DOUBLE, or DISTRIBUTION. The unit defines the representation of
	// the stored metric values.
	// Different systems may scale the values to be more easily displayed (so a value of
	// 0.02KBy might be displayed as 20By, and a value of 3523KBy might be displayed as
	// 3.5MBy). However, if the unit is KBy, then the value of the metric is always in
	// thousands of bytes, no matter how it may be displayed.
	// If you want a custom metric to record the exact number of CPU-seconds used by a job,
	// you can create an INT64 CUMULATIVE metric whose unit is s{CPU} (or equivalently
	// 1s{CPU} or just s). If the job uses 12,005 CPU-seconds, then the value is written as
	// 12005.
	// Alternatively, if you want a custom metric to record data in a more granular way, you
	// can create a DOUBLE CUMULATIVE metric whose unit is ks{CPU}, and then write the value
	// 12.005 (which is 12005/1000), or use Kis{CPU} and write 11.723 (which is 12005/1024).
	// The supported units are a subset of The Unified Code for Units of Measure standard.
	// More info can be found in the API documentation
	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.metricDescriptors).
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*MetricDescriptorObservation) DeepCopy

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

func (*MetricDescriptorObservation) DeepCopyInto

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

type MetricDescriptorParameters

type MetricDescriptorParameters struct {

	// A detailed description of the metric, which can be used in documentation.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count".
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. In order to delete a label, the entire resource must be deleted, then created with the desired labels.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Labels []LabelsParameters `json:"labels,omitempty" tf:"labels,omitempty"`

	// The launch stage of the metric definition.
	// Possible values are: LAUNCH_STAGE_UNSPECIFIED, UNIMPLEMENTED, PRELAUNCH, EARLY_ACCESS, ALPHA, BETA, GA, DEPRECATED.
	// +kubebuilder:validation:Optional
	LaunchStage *string `json:"launchStage,omitempty" tf:"launch_stage,omitempty"`

	// Metadata which can be used to guide usage of the metric.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Metadata *MetadataParameters `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: METRIC_KIND_UNSPECIFIED, GAUGE, DELTA, CUMULATIVE.
	// +kubebuilder:validation:Optional
	MetricKind *string `json:"metricKind,omitempty" tf:"metric_kind,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The metric type, including its DNS name prefix. The type is not URL-encoded. All service defined metrics must be prefixed with the service name, in the format of {service name}/{relative metric name}, such as cloudsql.googleapis.com/database/cpu/utilization. The relative metric name must have only upper and lower-case letters, digits, '/' and underscores '_' are allowed. Additionally, the maximum number of characters allowed for the relative_metric_name is 100. All user-defined metric types have the DNS name custom.googleapis.com, external.googleapis.com, or logging.googleapis.com/user/.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The units in which the metric value is reported. It is only applicable if the
	// valueType is INT64, DOUBLE, or DISTRIBUTION. The unit defines the representation of
	// the stored metric values.
	// Different systems may scale the values to be more easily displayed (so a value of
	// 0.02KBy might be displayed as 20By, and a value of 3523KBy might be displayed as
	// 3.5MBy). However, if the unit is KBy, then the value of the metric is always in
	// thousands of bytes, no matter how it may be displayed.
	// If you want a custom metric to record the exact number of CPU-seconds used by a job,
	// you can create an INT64 CUMULATIVE metric whose unit is s{CPU} (or equivalently
	// 1s{CPU} or just s). If the job uses 12,005 CPU-seconds, then the value is written as
	// 12005.
	// Alternatively, if you want a custom metric to record data in a more granular way, you
	// can create a DOUBLE CUMULATIVE metric whose unit is ks{CPU}, and then write the value
	// 12.005 (which is 12005/1000), or use Kis{CPU} and write 11.723 (which is 12005/1024).
	// The supported units are a subset of The Unified Code for Units of Measure standard.
	// More info can be found in the API documentation
	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.metricDescriptors).
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc. Some combinations of metricKind and valueType might not be supported.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION.
	// +kubebuilder:validation:Optional
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*MetricDescriptorParameters) DeepCopy

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

func (*MetricDescriptorParameters) DeepCopyInto

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

type MetricDescriptorSpec

type MetricDescriptorSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     MetricDescriptorParameters `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 MetricDescriptorInitParameters `json:"initProvider,omitempty"`
}

MetricDescriptorSpec defines the desired state of MetricDescriptor

func (*MetricDescriptorSpec) DeepCopy

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

func (*MetricDescriptorSpec) DeepCopyInto

func (in *MetricDescriptorSpec) DeepCopyInto(out *MetricDescriptorSpec)

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

type MetricDescriptorStatus

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

MetricDescriptorStatus defines the observed state of MetricDescriptor.

func (*MetricDescriptorStatus) DeepCopy

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

func (*MetricDescriptorStatus) DeepCopyInto

func (in *MetricDescriptorStatus) DeepCopyInto(out *MetricDescriptorStatus)

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

type MetricMeanInRangeInitParameters

type MetricMeanInRangeInitParameters struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *MetricMeanInRangeRangeInitParameters `json:"range,omitempty" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	TimeSeries *string `json:"timeSeries,omitempty" tf:"time_series,omitempty"`
}

func (*MetricMeanInRangeInitParameters) DeepCopy

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

func (*MetricMeanInRangeInitParameters) DeepCopyInto

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

type MetricMeanInRangeObservation

type MetricMeanInRangeObservation struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *MetricMeanInRangeRangeObservation `json:"range,omitempty" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	TimeSeries *string `json:"timeSeries,omitempty" tf:"time_series,omitempty"`
}

func (*MetricMeanInRangeObservation) DeepCopy

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

func (*MetricMeanInRangeObservation) DeepCopyInto

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

type MetricMeanInRangeParameters

type MetricMeanInRangeParameters struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Range *MetricMeanInRangeRangeParameters `json:"range" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// +kubebuilder:validation:Optional
	TimeSeries *string `json:"timeSeries" tf:"time_series,omitempty"`
}

func (*MetricMeanInRangeParameters) DeepCopy

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

func (*MetricMeanInRangeParameters) DeepCopyInto

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

type MetricMeanInRangeRangeInitParameters

type MetricMeanInRangeRangeInitParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricMeanInRangeRangeInitParameters) DeepCopy

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

func (*MetricMeanInRangeRangeInitParameters) DeepCopyInto

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

type MetricMeanInRangeRangeObservation

type MetricMeanInRangeRangeObservation struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricMeanInRangeRangeObservation) DeepCopy

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

func (*MetricMeanInRangeRangeObservation) DeepCopyInto

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

type MetricMeanInRangeRangeParameters

type MetricMeanInRangeRangeParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricMeanInRangeRangeParameters) DeepCopy

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

func (*MetricMeanInRangeRangeParameters) DeepCopyInto

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

type MetricSumInRangeInitParameters

type MetricSumInRangeInitParameters struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *MetricSumInRangeRangeInitParameters `json:"range,omitempty" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	TimeSeries *string `json:"timeSeries,omitempty" tf:"time_series,omitempty"`
}

func (*MetricSumInRangeInitParameters) DeepCopy

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

func (*MetricSumInRangeInitParameters) DeepCopyInto

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

type MetricSumInRangeObservation

type MetricSumInRangeObservation struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *MetricSumInRangeRangeObservation `json:"range,omitempty" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	TimeSeries *string `json:"timeSeries,omitempty" tf:"time_series,omitempty"`
}

func (*MetricSumInRangeObservation) DeepCopy

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

func (*MetricSumInRangeObservation) DeepCopyInto

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

type MetricSumInRangeParameters

type MetricSumInRangeParameters struct {

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Range *MetricSumInRangeRangeParameters `json:"range" tf:"range,omitempty"`

	// A monitoring filter
	// specifying the TimeSeries to use for evaluating window
	// quality. The provided TimeSeries must have
	// ValueType = INT64 or ValueType = DOUBLE and
	// MetricKind = GAUGE.
	// Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// +kubebuilder:validation:Optional
	TimeSeries *string `json:"timeSeries" tf:"time_series,omitempty"`
}

func (*MetricSumInRangeParameters) DeepCopy

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

func (*MetricSumInRangeParameters) DeepCopyInto

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

type MetricSumInRangeRangeInitParameters

type MetricSumInRangeRangeInitParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricSumInRangeRangeInitParameters) DeepCopy

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

func (*MetricSumInRangeRangeInitParameters) DeepCopyInto

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

type MetricSumInRangeRangeObservation

type MetricSumInRangeRangeObservation struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricSumInRangeRangeObservation) DeepCopy

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

func (*MetricSumInRangeRangeObservation) DeepCopyInto

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

type MetricSumInRangeRangeParameters

type MetricSumInRangeRangeParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MetricSumInRangeRangeParameters) DeepCopy

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

func (*MetricSumInRangeRangeParameters) DeepCopyInto

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

type MonitoredResourceInitParameters

type MonitoredResourceInitParameters struct {

	// Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels project_id, instance_id, and zone.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types and Logging resource types.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*MonitoredResourceInitParameters) DeepCopy

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

func (*MonitoredResourceInitParameters) DeepCopyInto

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

type MonitoredResourceObservation

type MonitoredResourceObservation struct {

	// Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels project_id, instance_id, and zone.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types and Logging resource types.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*MonitoredResourceObservation) DeepCopy

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

func (*MonitoredResourceObservation) DeepCopyInto

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

type MonitoredResourceParameters

type MonitoredResourceParameters struct {

	// Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels project_id, instance_id, and zone.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels" tf:"labels,omitempty"`

	// The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types and Logging resource types.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*MonitoredResourceParameters) DeepCopy

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

func (*MonitoredResourceParameters) DeepCopyInto

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

type NotificationChannel

type NotificationChannel 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.type) || (has(self.initProvider) && has(self.initProvider.type))",message="spec.forProvider.type is a required parameter"
	Spec   NotificationChannelSpec   `json:"spec"`
	Status NotificationChannelStatus `json:"status,omitempty"`
}

NotificationChannel is the Schema for the NotificationChannels API. A NotificationChannel is a medium through which an alert is delivered when a policy violation is detected. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*NotificationChannel) DeepCopy

func (in *NotificationChannel) DeepCopy() *NotificationChannel

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

func (*NotificationChannel) DeepCopyInto

func (in *NotificationChannel) DeepCopyInto(out *NotificationChannel)

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

func (*NotificationChannel) DeepCopyObject

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

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

func (*NotificationChannel) GetCondition

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

GetCondition of this NotificationChannel.

func (*NotificationChannel) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this NotificationChannel

func (*NotificationChannel) GetDeletionPolicy

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

GetDeletionPolicy of this NotificationChannel.

func (*NotificationChannel) GetID

func (tr *NotificationChannel) GetID() string

GetID returns ID of underlying Terraform resource of this NotificationChannel

func (*NotificationChannel) GetInitParameters

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

GetInitParameters of this NotificationChannel

func (*NotificationChannel) GetManagementPolicies

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

GetManagementPolicies of this NotificationChannel.

func (*NotificationChannel) GetMergedParameters

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

GetInitParameters of this NotificationChannel

func (*NotificationChannel) GetObservation

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

GetObservation of this NotificationChannel

func (*NotificationChannel) GetParameters

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

GetParameters of this NotificationChannel

func (*NotificationChannel) GetProviderConfigReference

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

GetProviderConfigReference of this NotificationChannel.

func (*NotificationChannel) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this NotificationChannel.

func (*NotificationChannel) GetTerraformResourceType

func (mg *NotificationChannel) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NotificationChannel

func (*NotificationChannel) GetTerraformSchemaVersion

func (tr *NotificationChannel) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NotificationChannel) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this NotificationChannel.

func (*NotificationChannel) Hub

func (tr *NotificationChannel) Hub()

Hub marks this type as a conversion hub.

func (*NotificationChannel) LateInitialize

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

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

func (*NotificationChannel) SetConditions

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

SetConditions of this NotificationChannel.

func (*NotificationChannel) SetDeletionPolicy

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

SetDeletionPolicy of this NotificationChannel.

func (*NotificationChannel) SetManagementPolicies

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

SetManagementPolicies of this NotificationChannel.

func (*NotificationChannel) SetObservation

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

SetObservation for this NotificationChannel

func (*NotificationChannel) SetParameters

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

SetParameters for this NotificationChannel

func (*NotificationChannel) SetProviderConfigReference

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

SetProviderConfigReference of this NotificationChannel.

func (*NotificationChannel) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this NotificationChannel.

func (*NotificationChannel) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this NotificationChannel.

type NotificationChannelInitParameters

type NotificationChannelInitParameters struct {

	// An optional human-readable description of this notification channel. This description may provide additional details, beyond the display name, for the channel. This may not exceed 1024 Unicode characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// An optional human-readable name for this notification channel. It is recommended that you specify a non-empty and unique name in order to make it easier to identify the channels in your project, though this is not enforced. The display name is limited to 512 Unicode characters.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Whether notifications are forwarded to the described channel. This makes it possible to disable delivery of notifications to a particular channel without removing the channel from all alerting policies that reference the channel. This is a more convenient approach when the change is temporary and you want to receive notifications from the same set of alerting policies on the channel at some point in the future.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If true, the notification channel will be deleted regardless
	// of its use in alert policies (the policies will be updated
	// to remove the channel). If false, channels that are still
	// referenced by an existing alerting policy will fail to be
	// deleted in a delete operation.
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// Configuration fields that define the channel and its behavior. The
	// permissible and required labels are specified in the
	// NotificationChannelDescriptor corresponding to the type field. They can also be configured via
	// the sensitive_labels block, but cannot be configured in both places.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Different notification type behaviors are configured primarily using the the labels field on this
	// resource. This block contains the labels which contain secrets or passwords so that they can be marked
	// sensitive and hidden from plan output. The name of the field, eg: password, will be the key
	// in the labels map in the api request.
	// Credentials may not be specified in both locations and will cause an error. Changing from one location
	// to a different credential configuration in the config will require an apply to update state.
	// Structure is documented below.
	SensitiveLabels *SensitiveLabelsInitParameters `json:"sensitiveLabels,omitempty" tf:"sensitive_labels,omitempty"`

	// The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field. See https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.notificationChannelDescriptors/list to get the list of valid values such as "email", "slack", etc...
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// User-supplied key/value data that does not need to conform to the corresponding NotificationChannelDescriptor's schema, unlike the labels field. This field is intended to be used for organizing and identifying the NotificationChannel objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*NotificationChannelInitParameters) DeepCopy

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

func (*NotificationChannelInitParameters) DeepCopyInto

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

type NotificationChannelList

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

NotificationChannelList contains a list of NotificationChannels

func (*NotificationChannelList) DeepCopy

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

func (*NotificationChannelList) DeepCopyInto

func (in *NotificationChannelList) DeepCopyInto(out *NotificationChannelList)

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

func (*NotificationChannelList) DeepCopyObject

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

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

func (*NotificationChannelList) GetItems

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

GetItems of this NotificationChannelList.

type NotificationChannelObservation

type NotificationChannelObservation struct {

	// An optional human-readable description of this notification channel. This description may provide additional details, beyond the display name, for the channel. This may not exceed 1024 Unicode characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// An optional human-readable name for this notification channel. It is recommended that you specify a non-empty and unique name in order to make it easier to identify the channels in your project, though this is not enforced. The display name is limited to 512 Unicode characters.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Whether notifications are forwarded to the described channel. This makes it possible to disable delivery of notifications to a particular channel without removing the channel from all alerting policies that reference the channel. This is a more convenient approach when the change is temporary and you want to receive notifications from the same set of alerting policies on the channel at some point in the future.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If true, the notification channel will be deleted regardless
	// of its use in alert policies (the policies will be updated
	// to remove the channel). If false, channels that are still
	// referenced by an existing alerting policy will fail to be
	// deleted in a delete operation.
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Configuration fields that define the channel and its behavior. The
	// permissible and required labels are specified in the
	// NotificationChannelDescriptor corresponding to the type field. They can also be configured via
	// the sensitive_labels block, but cannot be configured in both places.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The full REST resource name for this channel. The syntax is:
	// projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]
	// The [CHANNEL_ID] is automatically assigned by the server on creation.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Different notification type behaviors are configured primarily using the the labels field on this
	// resource. This block contains the labels which contain secrets or passwords so that they can be marked
	// sensitive and hidden from plan output. The name of the field, eg: password, will be the key
	// in the labels map in the api request.
	// Credentials may not be specified in both locations and will cause an error. Changing from one location
	// to a different credential configuration in the config will require an apply to update state.
	// Structure is documented below.
	SensitiveLabels *SensitiveLabelsParameters `json:"sensitiveLabels,omitempty" tf:"sensitive_labels,omitempty"`

	// The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field. See https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.notificationChannelDescriptors/list to get the list of valid values such as "email", "slack", etc...
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// User-supplied key/value data that does not need to conform to the corresponding NotificationChannelDescriptor's schema, unlike the labels field. This field is intended to be used for organizing and identifying the NotificationChannel objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`

	// Indicates whether this channel has been verified or not. On a ListNotificationChannels or GetNotificationChannel operation, this field is expected to be populated.If the value is UNVERIFIED, then it indicates that the channel is non-functioning (it both requires verification and lacks verification); otherwise, it is assumed that the channel works.If the channel is neither VERIFIED nor UNVERIFIED, it implies that the channel is of a type that does not require verification or that this specific channel has been exempted from verification because it was created prior to verification being required for channels of this type.This field cannot be modified using a standard UpdateNotificationChannel operation. To change the value of this field, you must call VerifyNotificationChannel.
	VerificationStatus *string `json:"verificationStatus,omitempty" tf:"verification_status,omitempty"`
}

func (*NotificationChannelObservation) DeepCopy

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

func (*NotificationChannelObservation) DeepCopyInto

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

type NotificationChannelParameters

type NotificationChannelParameters struct {

	// An optional human-readable description of this notification channel. This description may provide additional details, beyond the display name, for the channel. This may not exceed 1024 Unicode characters.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// An optional human-readable name for this notification channel. It is recommended that you specify a non-empty and unique name in order to make it easier to identify the channels in your project, though this is not enforced. The display name is limited to 512 Unicode characters.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Whether notifications are forwarded to the described channel. This makes it possible to disable delivery of notifications to a particular channel without removing the channel from all alerting policies that reference the channel. This is a more convenient approach when the change is temporary and you want to receive notifications from the same set of alerting policies on the channel at some point in the future.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If true, the notification channel will be deleted regardless
	// of its use in alert policies (the policies will be updated
	// to remove the channel). If false, channels that are still
	// referenced by an existing alerting policy will fail to be
	// deleted in a delete operation.
	// +kubebuilder:validation:Optional
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// Configuration fields that define the channel and its behavior. The
	// permissible and required labels are specified in the
	// NotificationChannelDescriptor corresponding to the type field. They can also be configured via
	// the sensitive_labels block, but cannot be configured in both places.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Different notification type behaviors are configured primarily using the the labels field on this
	// resource. This block contains the labels which contain secrets or passwords so that they can be marked
	// sensitive and hidden from plan output. The name of the field, eg: password, will be the key
	// in the labels map in the api request.
	// Credentials may not be specified in both locations and will cause an error. Changing from one location
	// to a different credential configuration in the config will require an apply to update state.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	SensitiveLabels *SensitiveLabelsParameters `json:"sensitiveLabels,omitempty" tf:"sensitive_labels,omitempty"`

	// The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field. See https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.notificationChannelDescriptors/list to get the list of valid values such as "email", "slack", etc...
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// User-supplied key/value data that does not need to conform to the corresponding NotificationChannelDescriptor's schema, unlike the labels field. This field is intended to be used for organizing and identifying the NotificationChannel objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*NotificationChannelParameters) DeepCopy

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

func (*NotificationChannelParameters) DeepCopyInto

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

type NotificationChannelSpec

type NotificationChannelSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NotificationChannelParameters `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 NotificationChannelInitParameters `json:"initProvider,omitempty"`
}

NotificationChannelSpec defines the desired state of NotificationChannel

func (*NotificationChannelSpec) DeepCopy

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

func (*NotificationChannelSpec) DeepCopyInto

func (in *NotificationChannelSpec) DeepCopyInto(out *NotificationChannelSpec)

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

type NotificationChannelStatus

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

NotificationChannelStatus defines the observed state of NotificationChannel.

func (*NotificationChannelStatus) DeepCopy

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

func (*NotificationChannelStatus) DeepCopyInto

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

type NotificationChannelStrategyInitParameters

type NotificationChannelStrategyInitParameters struct {

	// The notification channels that these settings apply to. Each of these
	// correspond to the name field in one of the NotificationChannel objects
	// referenced in the notification_channels field of this AlertPolicy. The format is
	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
	NotificationChannelNames []*string `json:"notificationChannelNames,omitempty" tf:"notification_channel_names,omitempty"`

	// The frequency at which to send reminder notifications for open incidents.
	RenotifyInterval *string `json:"renotifyInterval,omitempty" tf:"renotify_interval,omitempty"`
}

func (*NotificationChannelStrategyInitParameters) DeepCopy

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

func (*NotificationChannelStrategyInitParameters) DeepCopyInto

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

type NotificationChannelStrategyObservation

type NotificationChannelStrategyObservation struct {

	// The notification channels that these settings apply to. Each of these
	// correspond to the name field in one of the NotificationChannel objects
	// referenced in the notification_channels field of this AlertPolicy. The format is
	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
	NotificationChannelNames []*string `json:"notificationChannelNames,omitempty" tf:"notification_channel_names,omitempty"`

	// The frequency at which to send reminder notifications for open incidents.
	RenotifyInterval *string `json:"renotifyInterval,omitempty" tf:"renotify_interval,omitempty"`
}

func (*NotificationChannelStrategyObservation) DeepCopy

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

func (*NotificationChannelStrategyObservation) DeepCopyInto

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

type NotificationChannelStrategyParameters

type NotificationChannelStrategyParameters struct {

	// The notification channels that these settings apply to. Each of these
	// correspond to the name field in one of the NotificationChannel objects
	// referenced in the notification_channels field of this AlertPolicy. The format is
	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
	// +kubebuilder:validation:Optional
	NotificationChannelNames []*string `json:"notificationChannelNames,omitempty" tf:"notification_channel_names,omitempty"`

	// The frequency at which to send reminder notifications for open incidents.
	// +kubebuilder:validation:Optional
	RenotifyInterval *string `json:"renotifyInterval,omitempty" tf:"renotify_interval,omitempty"`
}

func (*NotificationChannelStrategyParameters) DeepCopy

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

func (*NotificationChannelStrategyParameters) DeepCopyInto

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

type NotificationRateLimitInitParameters

type NotificationRateLimitInitParameters struct {

	// Not more than one notification per period.
	Period *string `json:"period,omitempty" tf:"period,omitempty"`
}

func (*NotificationRateLimitInitParameters) DeepCopy

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

func (*NotificationRateLimitInitParameters) DeepCopyInto

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

type NotificationRateLimitObservation

type NotificationRateLimitObservation struct {

	// Not more than one notification per period.
	Period *string `json:"period,omitempty" tf:"period,omitempty"`
}

func (*NotificationRateLimitObservation) DeepCopy

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

func (*NotificationRateLimitObservation) DeepCopyInto

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

type NotificationRateLimitParameters

type NotificationRateLimitParameters struct {

	// Not more than one notification per period.
	// +kubebuilder:validation:Optional
	Period *string `json:"period,omitempty" tf:"period,omitempty"`
}

func (*NotificationRateLimitParameters) DeepCopy

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

func (*NotificationRateLimitParameters) DeepCopyInto

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

type PerformanceDistributionCutInitParameters

type PerformanceDistributionCutInitParameters struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	DistributionFilter *string `json:"distributionFilter,omitempty" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *DistributionCutRangeInitParameters `json:"range,omitempty" tf:"range,omitempty"`
}

func (*PerformanceDistributionCutInitParameters) DeepCopy

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

func (*PerformanceDistributionCutInitParameters) DeepCopyInto

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

type PerformanceDistributionCutObservation

type PerformanceDistributionCutObservation struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	DistributionFilter *string `json:"distributionFilter,omitempty" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	Range *DistributionCutRangeObservation `json:"range,omitempty" tf:"range,omitempty"`
}

func (*PerformanceDistributionCutObservation) DeepCopy

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

func (*PerformanceDistributionCutObservation) DeepCopyInto

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

type PerformanceDistributionCutParameters

type PerformanceDistributionCutParameters struct {

	// A TimeSeries monitoring filter
	// aggregating values to quantify the good service provided.
	// Must have ValueType = DISTRIBUTION and
	// MetricKind = DELTA or MetricKind = CUMULATIVE.
	// +kubebuilder:validation:Optional
	DistributionFilter *string `json:"distributionFilter" tf:"distribution_filter,omitempty"`

	// Range of numerical values. The computed good_service
	// will be the count of values x in the Distribution such
	// that range.min <= x <= range.max. inclusive of min and
	// max. Open ranges can be defined by setting
	// just one of min or max. Summed value X should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Range *DistributionCutRangeParameters `json:"range" tf:"range,omitempty"`
}

func (*PerformanceDistributionCutParameters) DeepCopy

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

func (*PerformanceDistributionCutParameters) DeepCopyInto

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

type PerformanceGoodTotalRatioInitParameters

type PerformanceGoodTotalRatioInitParameters struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*PerformanceGoodTotalRatioInitParameters) DeepCopy

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

func (*PerformanceGoodTotalRatioInitParameters) DeepCopyInto

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

type PerformanceGoodTotalRatioObservation

type PerformanceGoodTotalRatioObservation struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*PerformanceGoodTotalRatioObservation) DeepCopy

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

func (*PerformanceGoodTotalRatioObservation) DeepCopyInto

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

type PerformanceGoodTotalRatioParameters

type PerformanceGoodTotalRatioParameters struct {

	// A TimeSeries monitoring filter
	// quantifying bad service provided, either demanded service that
	// was not provided or demanded service that was of inadequate
	// quality.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	BadServiceFilter *string `json:"badServiceFilter,omitempty" tf:"bad_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying good service provided.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	GoodServiceFilter *string `json:"goodServiceFilter,omitempty" tf:"good_service_filter,omitempty"`

	// A TimeSeries monitoring filter
	// quantifying total demanded service.
	// Must have ValueType = DOUBLE or ValueType = INT64 and
	// must have MetricKind = DELTA or MetricKind = CUMULATIVE.
	// Exactly two of good_service_filter,bad_service_filter,total_service_filter
	// must be set (good + bad = total is assumed).
	// +kubebuilder:validation:Optional
	TotalServiceFilter *string `json:"totalServiceFilter,omitempty" tf:"total_service_filter,omitempty"`
}

func (*PerformanceGoodTotalRatioParameters) DeepCopy

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

func (*PerformanceGoodTotalRatioParameters) DeepCopyInto

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

type PerformanceInitParameters

type PerformanceInitParameters struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	DistributionCut *PerformanceDistributionCutInitParameters `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	GoodTotalRatio *PerformanceGoodTotalRatioInitParameters `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*PerformanceInitParameters) DeepCopy

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

func (*PerformanceInitParameters) DeepCopyInto

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

type PerformanceObservation

type PerformanceObservation struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	DistributionCut *PerformanceDistributionCutObservation `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	GoodTotalRatio *PerformanceGoodTotalRatioObservation `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*PerformanceObservation) DeepCopy

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

func (*PerformanceObservation) DeepCopyInto

func (in *PerformanceObservation) DeepCopyInto(out *PerformanceObservation)

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

type PerformanceParameters

type PerformanceParameters struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	DistributionCut *PerformanceDistributionCutParameters `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	GoodTotalRatio *PerformanceGoodTotalRatioParameters `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*PerformanceParameters) DeepCopy

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

func (*PerformanceParameters) DeepCopyInto

func (in *PerformanceParameters) DeepCopyInto(out *PerformanceParameters)

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

type PingConfigInitParameters

type PingConfigInitParameters struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	PingsCount *float64 `json:"pingsCount,omitempty" tf:"pings_count,omitempty"`
}

func (*PingConfigInitParameters) DeepCopy

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

func (*PingConfigInitParameters) DeepCopyInto

func (in *PingConfigInitParameters) DeepCopyInto(out *PingConfigInitParameters)

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

type PingConfigObservation

type PingConfigObservation struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	PingsCount *float64 `json:"pingsCount,omitempty" tf:"pings_count,omitempty"`
}

func (*PingConfigObservation) DeepCopy

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

func (*PingConfigObservation) DeepCopyInto

func (in *PingConfigObservation) DeepCopyInto(out *PingConfigObservation)

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

type PingConfigParameters

type PingConfigParameters struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	// +kubebuilder:validation:Optional
	PingsCount *float64 `json:"pingsCount" tf:"pings_count,omitempty"`
}

func (*PingConfigParameters) DeepCopy

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

func (*PingConfigParameters) DeepCopyInto

func (in *PingConfigParameters) DeepCopyInto(out *PingConfigParameters)

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

type RangeInitParameters

type RangeInitParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*RangeInitParameters) DeepCopy

func (in *RangeInitParameters) DeepCopy() *RangeInitParameters

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

func (*RangeInitParameters) DeepCopyInto

func (in *RangeInitParameters) DeepCopyInto(out *RangeInitParameters)

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

type RangeObservation

type RangeObservation struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*RangeObservation) DeepCopy

func (in *RangeObservation) DeepCopy() *RangeObservation

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

func (*RangeObservation) DeepCopyInto

func (in *RangeObservation) DeepCopyInto(out *RangeObservation)

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

type RangeParameters

type RangeParameters struct {

	// max value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Min value for the range (inclusive). If not given,
	// will be set to 0
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*RangeParameters) DeepCopy

func (in *RangeParameters) DeepCopy() *RangeParameters

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

func (*RangeParameters) DeepCopyInto

func (in *RangeParameters) DeepCopyInto(out *RangeParameters)

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

type RequestBasedSliInitParameters

type RequestBasedSliInitParameters struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	DistributionCut *DistributionCutInitParameters `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	GoodTotalRatio *GoodTotalRatioInitParameters `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*RequestBasedSliInitParameters) DeepCopy

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

func (*RequestBasedSliInitParameters) DeepCopyInto

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

type RequestBasedSliObservation

type RequestBasedSliObservation struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	DistributionCut *DistributionCutObservation `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	GoodTotalRatio *GoodTotalRatioObservation `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*RequestBasedSliObservation) DeepCopy

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

func (*RequestBasedSliObservation) DeepCopyInto

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

type RequestBasedSliParameters

type RequestBasedSliParameters struct {

	// Used when good_service is defined by a count of values aggregated in a
	// Distribution that fall into a good range. The total_service is the
	// total count of all values aggregated in the Distribution.
	// Defines a distribution TimeSeries filter and thresholds used for
	// measuring good service and total service.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	DistributionCut *DistributionCutParameters `json:"distributionCut,omitempty" tf:"distribution_cut,omitempty"`

	// A means to compute a ratio of good_service to total_service.
	// Defines computing this ratio with two TimeSeries monitoring filters
	// Must specify exactly two of good, bad, and total service filters.
	// The relationship good_service + bad_service = total_service
	// will be assumed.
	// Exactly one of distribution_cut or good_total_ratio can be set.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	GoodTotalRatio *GoodTotalRatioParameters `json:"goodTotalRatio,omitempty" tf:"good_total_ratio,omitempty"`
}

func (*RequestBasedSliParameters) DeepCopy

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

func (*RequestBasedSliParameters) DeepCopyInto

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

type ResourceGroupInitParameters

type ResourceGroupInitParameters struct {

	// The group of resources being monitored. Should be the name of a group
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/monitoring/v1beta1.Group
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("name",true)
	GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"`

	// Reference to a Group in monitoring to populate groupId.
	// +kubebuilder:validation:Optional
	GroupIDRef *v1.Reference `json:"groupIdRef,omitempty" tf:"-"`

	// Selector for a Group in monitoring to populate groupId.
	// +kubebuilder:validation:Optional
	GroupIDSelector *v1.Selector `json:"groupIdSelector,omitempty" tf:"-"`

	// The resource type of the group members.
	// Possible values are: RESOURCE_TYPE_UNSPECIFIED, INSTANCE, AWS_ELB_LOAD_BALANCER.
	ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"`
}

func (*ResourceGroupInitParameters) DeepCopy

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

func (*ResourceGroupInitParameters) DeepCopyInto

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

type ResourceGroupObservation

type ResourceGroupObservation struct {

	// The group of resources being monitored. Should be the name of a group
	GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"`

	// The resource type of the group members.
	// Possible values are: RESOURCE_TYPE_UNSPECIFIED, INSTANCE, AWS_ELB_LOAD_BALANCER.
	ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"`
}

func (*ResourceGroupObservation) DeepCopy

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

func (*ResourceGroupObservation) DeepCopyInto

func (in *ResourceGroupObservation) DeepCopyInto(out *ResourceGroupObservation)

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

type ResourceGroupParameters

type ResourceGroupParameters struct {

	// The group of resources being monitored. Should be the name of a group
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/monitoring/v1beta1.Group
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("name",true)
	// +kubebuilder:validation:Optional
	GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"`

	// Reference to a Group in monitoring to populate groupId.
	// +kubebuilder:validation:Optional
	GroupIDRef *v1.Reference `json:"groupIdRef,omitempty" tf:"-"`

	// Selector for a Group in monitoring to populate groupId.
	// +kubebuilder:validation:Optional
	GroupIDSelector *v1.Selector `json:"groupIdSelector,omitempty" tf:"-"`

	// The resource type of the group members.
	// Possible values are: RESOURCE_TYPE_UNSPECIFIED, INSTANCE, AWS_ELB_LOAD_BALANCER.
	// +kubebuilder:validation:Optional
	ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"`
}

func (*ResourceGroupParameters) DeepCopy

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

func (*ResourceGroupParameters) DeepCopyInto

func (in *ResourceGroupParameters) DeepCopyInto(out *ResourceGroupParameters)

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.goal) || (has(self.initProvider) && has(self.initProvider.goal))",message="spec.forProvider.goal is a required parameter"
	Spec   SLOSpec   `json:"spec"`
	Status SLOStatus `json:"status,omitempty"`
}

SLO is the Schema for the SLOs API. A Service-Level Objective (SLO) describes the level of desired good service. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp},path=sloes

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

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 {

	// Basic Service-Level Indicator (SLI) on a well-known service type.
	// Performance will be computed on the basis of pre-defined metrics.
	// SLIs are used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	BasicSli *BasicSliInitParameters `json:"basicSli,omitempty" tf:"basic_sli,omitempty"`

	// A calendar period, semantically "since the start of the current
	// ".
	// Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
	CalendarPeriod *string `json:"calendarPeriod,omitempty" tf:"calendar_period,omitempty"`

	// Name used for UI elements listing this SLO.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The fraction of service that must be good in order for this objective
	// to be met. 0 < goal <= 0.999
	Goal *float64 `json:"goal,omitempty" tf:"goal,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// A request-based SLI defines a SLI for which atomic units of
	// service are counted directly.
	// A SLI describes a good service.
	// It is used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	RequestBasedSli *RequestBasedSliInitParameters `json:"requestBasedSli,omitempty" tf:"request_based_sli,omitempty"`

	// A rolling time period, semantically "in the past X days".
	// Must be between 1 to 30 days, inclusive.
	RollingPeriodDays *float64 `json:"rollingPeriodDays,omitempty" tf:"rolling_period_days,omitempty"`

	// The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
	SLOID *string `json:"sloId,omitempty" tf:"slo_id,omitempty"`

	// ID of the service to which this SLO belongs.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/monitoring/v1beta2.CustomService
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("service_id",false)
	Service *string `json:"service,omitempty" tf:"service,omitempty"`

	// Reference to a CustomService in monitoring to populate service.
	// +kubebuilder:validation:Optional
	ServiceRef *v1.Reference `json:"serviceRef,omitempty" tf:"-"`

	// Selector for a CustomService in monitoring to populate service.
	// +kubebuilder:validation:Optional
	ServiceSelector *v1.Selector `json:"serviceSelector,omitempty" tf:"-"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`

	// A windows-based SLI defines the criteria for time windows.
	// good_service is defined based off the count of these time windows
	// for which the provided service was of good quality.
	// A SLI describes a good service. It is used to measure and calculate
	// the quality of the Service's performance with respect to a single
	// aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	WindowsBasedSli *WindowsBasedSliInitParameters `json:"windowsBasedSli,omitempty" tf:"windows_based_sli,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 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 {

	// Basic Service-Level Indicator (SLI) on a well-known service type.
	// Performance will be computed on the basis of pre-defined metrics.
	// SLIs are used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	BasicSli *BasicSliObservation `json:"basicSli,omitempty" tf:"basic_sli,omitempty"`

	// A calendar period, semantically "since the start of the current
	// ".
	// Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
	CalendarPeriod *string `json:"calendarPeriod,omitempty" tf:"calendar_period,omitempty"`

	// Name used for UI elements listing this SLO.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The fraction of service that must be good in order for this objective
	// to be met. 0 < goal <= 0.999
	Goal *float64 `json:"goal,omitempty" tf:"goal,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The full resource name for this service. The syntax is:
	// projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// A request-based SLI defines a SLI for which atomic units of
	// service are counted directly.
	// A SLI describes a good service.
	// It is used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	RequestBasedSli *RequestBasedSliObservation `json:"requestBasedSli,omitempty" tf:"request_based_sli,omitempty"`

	// A rolling time period, semantically "in the past X days".
	// Must be between 1 to 30 days, inclusive.
	RollingPeriodDays *float64 `json:"rollingPeriodDays,omitempty" tf:"rolling_period_days,omitempty"`

	// The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
	SLOID *string `json:"sloId,omitempty" tf:"slo_id,omitempty"`

	// ID of the service to which this SLO belongs.
	Service *string `json:"service,omitempty" tf:"service,omitempty"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`

	// A windows-based SLI defines the criteria for time windows.
	// good_service is defined based off the count of these time windows
	// for which the provided service was of good quality.
	// A SLI describes a good service. It is used to measure and calculate
	// the quality of the Service's performance with respect to a single
	// aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	WindowsBasedSli *WindowsBasedSliObservation `json:"windowsBasedSli,omitempty" tf:"windows_based_sli,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 {

	// Basic Service-Level Indicator (SLI) on a well-known service type.
	// Performance will be computed on the basis of pre-defined metrics.
	// SLIs are used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	BasicSli *BasicSliParameters `json:"basicSli,omitempty" tf:"basic_sli,omitempty"`

	// A calendar period, semantically "since the start of the current
	// ".
	// Possible values are: DAY, WEEK, FORTNIGHT, MONTH.
	// +kubebuilder:validation:Optional
	CalendarPeriod *string `json:"calendarPeriod,omitempty" tf:"calendar_period,omitempty"`

	// Name used for UI elements listing this SLO.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The fraction of service that must be good in order for this objective
	// to be met. 0 < goal <= 0.999
	// +kubebuilder:validation:Optional
	Goal *float64 `json:"goal,omitempty" tf:"goal,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// A request-based SLI defines a SLI for which atomic units of
	// service are counted directly.
	// A SLI describes a good service.
	// It is used to measure and calculate the quality of the Service's
	// performance with respect to a single aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	RequestBasedSli *RequestBasedSliParameters `json:"requestBasedSli,omitempty" tf:"request_based_sli,omitempty"`

	// A rolling time period, semantically "in the past X days".
	// Must be between 1 to 30 days, inclusive.
	// +kubebuilder:validation:Optional
	RollingPeriodDays *float64 `json:"rollingPeriodDays,omitempty" tf:"rolling_period_days,omitempty"`

	// The id to use for this ServiceLevelObjective. If omitted, an id will be generated instead.
	// +kubebuilder:validation:Optional
	SLOID *string `json:"sloId,omitempty" tf:"slo_id,omitempty"`

	// ID of the service to which this SLO belongs.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/monitoring/v1beta2.CustomService
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("service_id",false)
	// +kubebuilder:validation:Optional
	Service *string `json:"service,omitempty" tf:"service,omitempty"`

	// Reference to a CustomService in monitoring to populate service.
	// +kubebuilder:validation:Optional
	ServiceRef *v1.Reference `json:"serviceRef,omitempty" tf:"-"`

	// Selector for a CustomService in monitoring to populate service.
	// +kubebuilder:validation:Optional
	ServiceSelector *v1.Selector `json:"serviceSelector,omitempty" tf:"-"`

	// This field is intended to be used for organizing and identifying the AlertPolicy
	// objects.The field can contain up to 64 entries. Each key and value is limited
	// to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values
	// can contain only lowercase letters, numerals, underscores, and dashes. Keys
	// must begin with a letter.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`

	// A windows-based SLI defines the criteria for time windows.
	// good_service is defined based off the count of these time windows
	// for which the provided service was of good quality.
	// A SLI describes a good service. It is used to measure and calculate
	// the quality of the Service's performance with respect to a single
	// aspect of service quality.
	// Exactly one of the following must be set:
	// basic_sli, request_based_sli, windows_based_sli
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	WindowsBasedSli *WindowsBasedSliParameters `json:"windowsBasedSli,omitempty" tf:"windows_based_sli,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 SensitiveLabelsInitParameters

type SensitiveLabelsInitParameters struct {

	// An authorization token for a notification channel. Channel types that support this field include: slack
	// Note: This property is sensitive and will not be displayed in the plan.
	AuthTokenSecretRef *v1.SecretKeySelector `json:"authTokenSecretRef,omitempty" tf:"-"`

	// An password for a notification channel. Channel types that support this field include: webhook_basicauth
	// Note: This property is sensitive and will not be displayed in the plan.
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// An servicekey token for a notification channel. Channel types that support this field include: pagerduty
	// Note: This property is sensitive and will not be displayed in the plan.
	ServiceKeySecretRef *v1.SecretKeySelector `json:"serviceKeySecretRef,omitempty" tf:"-"`
}

func (*SensitiveLabelsInitParameters) DeepCopy

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

func (*SensitiveLabelsInitParameters) DeepCopyInto

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

type SensitiveLabelsObservation

type SensitiveLabelsObservation struct {
}

func (*SensitiveLabelsObservation) DeepCopy

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

func (*SensitiveLabelsObservation) DeepCopyInto

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

type SensitiveLabelsParameters

type SensitiveLabelsParameters struct {

	// An authorization token for a notification channel. Channel types that support this field include: slack
	// Note: This property is sensitive and will not be displayed in the plan.
	// +kubebuilder:validation:Optional
	AuthTokenSecretRef *v1.SecretKeySelector `json:"authTokenSecretRef,omitempty" tf:"-"`

	// An password for a notification channel. Channel types that support this field include: webhook_basicauth
	// Note: This property is sensitive and will not be displayed in the plan.
	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// An servicekey token for a notification channel. Channel types that support this field include: pagerduty
	// Note: This property is sensitive and will not be displayed in the plan.
	// +kubebuilder:validation:Optional
	ServiceKeySecretRef *v1.SecretKeySelector `json:"serviceKeySecretRef,omitempty" tf:"-"`
}

func (*SensitiveLabelsParameters) DeepCopy

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

func (*SensitiveLabelsParameters) DeepCopyInto

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

type Service

type Service struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ServiceSpec   `json:"spec"`
	Status            ServiceStatus `json:"status,omitempty"`
}

Service is the Schema for the Services API. A Service is a discrete, autonomous, and network-accessible unit, designed to solve an individual concern. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

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

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

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

func (*Service) DeepCopyObject

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

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

func (*Service) GetCondition

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

GetCondition of this Service.

func (*Service) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Service

func (*Service) GetDeletionPolicy

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

GetDeletionPolicy of this Service.

func (*Service) GetID

func (tr *Service) GetID() string

GetID returns ID of underlying Terraform resource of this Service

func (*Service) GetInitParameters

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

GetInitParameters of this Service

func (*Service) GetManagementPolicies

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

GetManagementPolicies of this Service.

func (*Service) GetMergedParameters

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

GetInitParameters of this Service

func (*Service) GetObservation

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

GetObservation of this Service

func (*Service) GetParameters

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

GetParameters of this Service

func (*Service) GetProviderConfigReference

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

GetProviderConfigReference of this Service.

func (*Service) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Service.

func (*Service) GetTerraformResourceType

func (mg *Service) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Service

func (*Service) GetTerraformSchemaVersion

func (tr *Service) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Service) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Service.

func (*Service) Hub

func (tr *Service) Hub()

Hub marks this type as a conversion hub.

func (*Service) LateInitialize

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

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

func (*Service) SetConditions

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

SetConditions of this Service.

func (*Service) SetDeletionPolicy

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

SetDeletionPolicy of this Service.

func (*Service) SetManagementPolicies

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

SetManagementPolicies of this Service.

func (*Service) SetObservation

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

SetObservation for this Service

func (*Service) SetParameters

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

SetParameters for this Service

func (*Service) SetProviderConfigReference

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

SetProviderConfigReference of this Service.

func (*Service) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Service.

func (*Service) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Service.

type ServiceInitParameters

type ServiceInitParameters struct {

	// A well-known service type, defined by its service type and service labels.
	// Valid values of service types and services labels are described at
	// https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli
	// Structure is documented below.
	BasicService *BasicServiceInitParameters `json:"basicService,omitempty" tf:"basic_service,omitempty"`

	// Name used for UI elements listing this Service.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*ServiceInitParameters) DeepCopy

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

func (*ServiceInitParameters) DeepCopyInto

func (in *ServiceInitParameters) DeepCopyInto(out *ServiceInitParameters)

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

type ServiceList

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

ServiceList contains a list of Services

func (*ServiceList) DeepCopy

func (in *ServiceList) DeepCopy() *ServiceList

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

func (*ServiceList) DeepCopyInto

func (in *ServiceList) DeepCopyInto(out *ServiceList)

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

func (*ServiceList) DeepCopyObject

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

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

func (*ServiceList) GetItems

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

GetItems of this ServiceList.

type ServiceObservation

type ServiceObservation struct {

	// A well-known service type, defined by its service type and service labels.
	// Valid values of service types and services labels are described at
	// https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli
	// Structure is documented below.
	BasicService *BasicServiceObservation `json:"basicService,omitempty" tf:"basic_service,omitempty"`

	// Name used for UI elements listing this Service.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// an identifier for the resource with format projects/{{project}}/services/{{service_id}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The full resource name for this service. The syntax is:
	// projects/[PROJECT_ID]/services/[SERVICE_ID].
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Configuration for how to query telemetry on a Service.
	// Structure is documented below.
	Telemetry []ServiceTelemetryObservation `json:"telemetry,omitempty" tf:"telemetry,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*ServiceObservation) DeepCopy

func (in *ServiceObservation) DeepCopy() *ServiceObservation

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

func (*ServiceObservation) DeepCopyInto

func (in *ServiceObservation) DeepCopyInto(out *ServiceObservation)

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

type ServiceParameters

type ServiceParameters struct {

	// A well-known service type, defined by its service type and service labels.
	// Valid values of service types and services labels are described at
	// https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	BasicService *BasicServiceParameters `json:"basicService,omitempty" tf:"basic_service,omitempty"`

	// Name used for UI elements listing this Service.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Labels which have been used to annotate the service. Label keys must start
	// with a letter. Label keys and values may contain lowercase letters,
	// numbers, underscores, and dashes. Label keys and values have a maximum
	// length of 63 characters, and must be less than 128 bytes in size. Up to 64
	// label entries may be stored. For labels which do not have a semantic value,
	// the empty string may be supplied for the label value.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*ServiceParameters) DeepCopy

func (in *ServiceParameters) DeepCopy() *ServiceParameters

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

func (*ServiceParameters) DeepCopyInto

func (in *ServiceParameters) DeepCopyInto(out *ServiceParameters)

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

type ServiceSpec

type ServiceSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ServiceParameters `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 ServiceInitParameters `json:"initProvider,omitempty"`
}

ServiceSpec defines the desired state of Service

func (*ServiceSpec) DeepCopy

func (in *ServiceSpec) DeepCopy() *ServiceSpec

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

func (*ServiceSpec) DeepCopyInto

func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec)

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

type ServiceStatus

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

ServiceStatus defines the observed state of Service.

func (*ServiceStatus) DeepCopy

func (in *ServiceStatus) DeepCopy() *ServiceStatus

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

func (*ServiceStatus) DeepCopyInto

func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)

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

type ServiceTelemetryInitParameters

type ServiceTelemetryInitParameters struct {
}

func (*ServiceTelemetryInitParameters) DeepCopy

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

func (*ServiceTelemetryInitParameters) DeepCopyInto

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

type ServiceTelemetryObservation

type ServiceTelemetryObservation struct {

	// The full name of the resource that defines this service.
	// Formatted as described in
	// https://cloud.google.com/apis/design/resource_names.
	ResourceName *string `json:"resourceName,omitempty" tf:"resource_name,omitempty"`
}

func (*ServiceTelemetryObservation) DeepCopy

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

func (*ServiceTelemetryObservation) DeepCopyInto

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

type ServiceTelemetryParameters

type ServiceTelemetryParameters struct {
}

func (*ServiceTelemetryParameters) DeepCopy

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

func (*ServiceTelemetryParameters) DeepCopyInto

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

type SyntheticMonitorInitParameters

type SyntheticMonitorInitParameters struct {

	// Target a Synthetic Monitor GCFv2 Instance
	// Structure is documented below.
	CloudFunctionV2 *CloudFunctionV2InitParameters `json:"cloudFunctionV2,omitempty" tf:"cloud_function_v2,omitempty"`
}

func (*SyntheticMonitorInitParameters) DeepCopy

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

func (*SyntheticMonitorInitParameters) DeepCopyInto

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

type SyntheticMonitorObservation

type SyntheticMonitorObservation struct {

	// Target a Synthetic Monitor GCFv2 Instance
	// Structure is documented below.
	CloudFunctionV2 *CloudFunctionV2Observation `json:"cloudFunctionV2,omitempty" tf:"cloud_function_v2,omitempty"`
}

func (*SyntheticMonitorObservation) DeepCopy

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

func (*SyntheticMonitorObservation) DeepCopyInto

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

type SyntheticMonitorParameters

type SyntheticMonitorParameters struct {

	// Target a Synthetic Monitor GCFv2 Instance
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	CloudFunctionV2 *CloudFunctionV2Parameters `json:"cloudFunctionV2" tf:"cloud_function_v2,omitempty"`
}

func (*SyntheticMonitorParameters) DeepCopy

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

func (*SyntheticMonitorParameters) DeepCopyInto

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

type TCPCheckInitParameters

type TCPCheckInitParameters struct {

	// Contains information needed to add pings to a TCP check.
	// Structure is documented below.
	PingConfig *TCPCheckPingConfigInitParameters `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) to construct the full URL.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`
}

func (*TCPCheckInitParameters) DeepCopy

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

func (*TCPCheckInitParameters) DeepCopyInto

func (in *TCPCheckInitParameters) DeepCopyInto(out *TCPCheckInitParameters)

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

type TCPCheckObservation

type TCPCheckObservation struct {

	// Contains information needed to add pings to a TCP check.
	// Structure is documented below.
	PingConfig *TCPCheckPingConfigObservation `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) to construct the full URL.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`
}

func (*TCPCheckObservation) DeepCopy

func (in *TCPCheckObservation) DeepCopy() *TCPCheckObservation

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

func (*TCPCheckObservation) DeepCopyInto

func (in *TCPCheckObservation) DeepCopyInto(out *TCPCheckObservation)

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

type TCPCheckParameters

type TCPCheckParameters struct {

	// Contains information needed to add pings to a TCP check.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	PingConfig *TCPCheckPingConfigParameters `json:"pingConfig,omitempty" tf:"ping_config,omitempty"`

	// The port to the page to run the check against. Will be combined with host (specified within the monitored_resource) to construct the full URL.
	// +kubebuilder:validation:Optional
	Port *float64 `json:"port" tf:"port,omitempty"`
}

func (*TCPCheckParameters) DeepCopy

func (in *TCPCheckParameters) DeepCopy() *TCPCheckParameters

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

func (*TCPCheckParameters) DeepCopyInto

func (in *TCPCheckParameters) DeepCopyInto(out *TCPCheckParameters)

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

type TCPCheckPingConfigInitParameters

type TCPCheckPingConfigInitParameters struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	PingsCount *float64 `json:"pingsCount,omitempty" tf:"pings_count,omitempty"`
}

func (*TCPCheckPingConfigInitParameters) DeepCopy

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

func (*TCPCheckPingConfigInitParameters) DeepCopyInto

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

type TCPCheckPingConfigObservation

type TCPCheckPingConfigObservation struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	PingsCount *float64 `json:"pingsCount,omitempty" tf:"pings_count,omitempty"`
}

func (*TCPCheckPingConfigObservation) DeepCopy

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

func (*TCPCheckPingConfigObservation) DeepCopyInto

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

type TCPCheckPingConfigParameters

type TCPCheckPingConfigParameters struct {

	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	// +kubebuilder:validation:Optional
	PingsCount *float64 `json:"pingsCount" tf:"pings_count,omitempty"`
}

func (*TCPCheckPingConfigParameters) DeepCopy

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

func (*TCPCheckPingConfigParameters) DeepCopyInto

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

type TelemetryInitParameters

type TelemetryInitParameters struct {

	// The full name of the resource that defines this service.
	// Formatted as described in
	// https://cloud.google.com/apis/design/resource_names.
	ResourceName *string `json:"resourceName,omitempty" tf:"resource_name,omitempty"`
}

func (*TelemetryInitParameters) DeepCopy

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

func (*TelemetryInitParameters) DeepCopyInto

func (in *TelemetryInitParameters) DeepCopyInto(out *TelemetryInitParameters)

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

type TelemetryObservation

type TelemetryObservation struct {

	// The full name of the resource that defines this service.
	// Formatted as described in
	// https://cloud.google.com/apis/design/resource_names.
	ResourceName *string `json:"resourceName,omitempty" tf:"resource_name,omitempty"`
}

func (*TelemetryObservation) DeepCopy

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

func (*TelemetryObservation) DeepCopyInto

func (in *TelemetryObservation) DeepCopyInto(out *TelemetryObservation)

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

type TelemetryParameters

type TelemetryParameters struct {

	// The full name of the resource that defines this service.
	// Formatted as described in
	// https://cloud.google.com/apis/design/resource_names.
	// +kubebuilder:validation:Optional
	ResourceName *string `json:"resourceName,omitempty" tf:"resource_name,omitempty"`
}

func (*TelemetryParameters) DeepCopy

func (in *TelemetryParameters) DeepCopy() *TelemetryParameters

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

func (*TelemetryParameters) DeepCopyInto

func (in *TelemetryParameters) DeepCopyInto(out *TelemetryParameters)

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

type TriggerInitParameters

type TriggerInitParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*TriggerInitParameters) DeepCopy

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

func (*TriggerInitParameters) DeepCopyInto

func (in *TriggerInitParameters) DeepCopyInto(out *TriggerInitParameters)

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

type TriggerObservation

type TriggerObservation struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*TriggerObservation) DeepCopy

func (in *TriggerObservation) DeepCopy() *TriggerObservation

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

func (*TriggerObservation) DeepCopyInto

func (in *TriggerObservation) DeepCopyInto(out *TriggerObservation)

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

type TriggerParameters

type TriggerParameters struct {

	// The absolute number of time series
	// that must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// The percentage of time series that
	// must fail the predicate for the
	// condition to be triggered.
	// +kubebuilder:validation:Optional
	Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
}

func (*TriggerParameters) DeepCopy

func (in *TriggerParameters) DeepCopy() *TriggerParameters

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

func (*TriggerParameters) DeepCopyInto

func (in *TriggerParameters) DeepCopyInto(out *TriggerParameters)

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

type UptimeCheckConfig

type UptimeCheckConfig 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.displayName) || (has(self.initProvider) && has(self.initProvider.displayName))",message="spec.forProvider.displayName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeout) || (has(self.initProvider) && has(self.initProvider.timeout))",message="spec.forProvider.timeout is a required parameter"
	Spec   UptimeCheckConfigSpec   `json:"spec"`
	Status UptimeCheckConfigStatus `json:"status,omitempty"`
}

UptimeCheckConfig is the Schema for the UptimeCheckConfigs API. This message configures which resources and services to monitor for availability. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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,gcp}

func (*UptimeCheckConfig) DeepCopy

func (in *UptimeCheckConfig) DeepCopy() *UptimeCheckConfig

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

func (*UptimeCheckConfig) DeepCopyInto

func (in *UptimeCheckConfig) DeepCopyInto(out *UptimeCheckConfig)

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

func (*UptimeCheckConfig) DeepCopyObject

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

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

func (*UptimeCheckConfig) GetCondition

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

GetCondition of this UptimeCheckConfig.

func (*UptimeCheckConfig) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this UptimeCheckConfig

func (*UptimeCheckConfig) GetDeletionPolicy

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

GetDeletionPolicy of this UptimeCheckConfig.

func (*UptimeCheckConfig) GetID

func (tr *UptimeCheckConfig) GetID() string

GetID returns ID of underlying Terraform resource of this UptimeCheckConfig

func (*UptimeCheckConfig) GetInitParameters

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

GetInitParameters of this UptimeCheckConfig

func (*UptimeCheckConfig) GetManagementPolicies

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

GetManagementPolicies of this UptimeCheckConfig.

func (*UptimeCheckConfig) GetMergedParameters

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

GetInitParameters of this UptimeCheckConfig

func (*UptimeCheckConfig) GetObservation

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

GetObservation of this UptimeCheckConfig

func (*UptimeCheckConfig) GetParameters

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

GetParameters of this UptimeCheckConfig

func (*UptimeCheckConfig) GetProviderConfigReference

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

GetProviderConfigReference of this UptimeCheckConfig.

func (*UptimeCheckConfig) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this UptimeCheckConfig.

func (*UptimeCheckConfig) GetTerraformResourceType

func (mg *UptimeCheckConfig) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this UptimeCheckConfig

func (*UptimeCheckConfig) GetTerraformSchemaVersion

func (tr *UptimeCheckConfig) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*UptimeCheckConfig) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this UptimeCheckConfig.

func (*UptimeCheckConfig) Hub

func (tr *UptimeCheckConfig) Hub()

Hub marks this type as a conversion hub.

func (*UptimeCheckConfig) LateInitialize

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

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

func (*UptimeCheckConfig) ResolveReferences

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

ResolveReferences of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetConditions

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

SetConditions of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetDeletionPolicy

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

SetDeletionPolicy of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetManagementPolicies

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

SetManagementPolicies of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetObservation

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

SetObservation for this UptimeCheckConfig

func (*UptimeCheckConfig) SetParameters

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

SetParameters for this UptimeCheckConfig

func (*UptimeCheckConfig) SetProviderConfigReference

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

SetProviderConfigReference of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this UptimeCheckConfig.

func (*UptimeCheckConfig) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this UptimeCheckConfig.

type UptimeCheckConfigInitParameters

type UptimeCheckConfigInitParameters struct {

	// The checker type to use for the check. If the monitored resource type is servicedirectory_service, checker_type must be set to VPC_CHECKERS.
	// Possible values are: STATIC_IP_CHECKERS, VPC_CHECKERS.
	CheckerType *string `json:"checkerType,omitempty" tf:"checker_type,omitempty"`

	// The expected content on the page the check is run against. Currently, only the first entry in the list is supported, and other entries will be ignored. The server will look for an exact match of the string in the page response's content. This field is optional and should only be specified if a content match is required.
	// Structure is documented below.
	ContentMatchers []ContentMatchersInitParameters `json:"contentMatchers,omitempty" tf:"content_matchers,omitempty"`

	// A human-friendly name for the uptime check configuration. The display name should be unique within a Stackdriver Workspace in order to make it easier to identify; however, uniqueness is not enforced.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Contains information needed to make an HTTP or HTTPS check.
	// Structure is documented below.
	HTTPCheck *HTTPCheckInitParameters `json:"httpCheck,omitempty" tf:"http_check,omitempty"`

	// The [monitored resource]
	// (https://cloud.google.com/monitoring/api/resources) associated with the
	// configuration. The following monitored resource types are supported for
	// uptime checks:
	MonitoredResource *MonitoredResourceInitParameters `json:"monitoredResource,omitempty" tf:"monitored_resource,omitempty"`

	// How often, in seconds, the uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 300s.
	Period *string `json:"period,omitempty" tf:"period,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The group resource associated with the configuration.
	// Structure is documented below.
	ResourceGroup *ResourceGroupInitParameters `json:"resourceGroup,omitempty" tf:"resource_group,omitempty"`

	// The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions to include a minimum of 3 locations must be provided, or an error message is returned. Not specifying this field will result in uptime checks running from all regions.
	SelectedRegions []*string `json:"selectedRegions,omitempty" tf:"selected_regions,omitempty"`

	// A Synthetic Monitor deployed to a Cloud Functions V2 instance.
	// Structure is documented below.
	SyntheticMonitor *SyntheticMonitorInitParameters `json:"syntheticMonitor,omitempty" tf:"synthetic_monitor,omitempty"`

	// Contains information needed to make a TCP check.
	// Structure is documented below.
	TCPCheck *TCPCheckInitParameters `json:"tcpCheck,omitempty" tf:"tcp_check,omitempty"`

	// The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). See the accepted formats
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`

	// User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects. The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*UptimeCheckConfigInitParameters) DeepCopy

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

func (*UptimeCheckConfigInitParameters) DeepCopyInto

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

type UptimeCheckConfigList

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

UptimeCheckConfigList contains a list of UptimeCheckConfigs

func (*UptimeCheckConfigList) DeepCopy

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

func (*UptimeCheckConfigList) DeepCopyInto

func (in *UptimeCheckConfigList) DeepCopyInto(out *UptimeCheckConfigList)

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

func (*UptimeCheckConfigList) DeepCopyObject

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

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

func (*UptimeCheckConfigList) GetItems

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

GetItems of this UptimeCheckConfigList.

type UptimeCheckConfigObservation

type UptimeCheckConfigObservation struct {

	// The checker type to use for the check. If the monitored resource type is servicedirectory_service, checker_type must be set to VPC_CHECKERS.
	// Possible values are: STATIC_IP_CHECKERS, VPC_CHECKERS.
	CheckerType *string `json:"checkerType,omitempty" tf:"checker_type,omitempty"`

	// The expected content on the page the check is run against. Currently, only the first entry in the list is supported, and other entries will be ignored. The server will look for an exact match of the string in the page response's content. This field is optional and should only be specified if a content match is required.
	// Structure is documented below.
	ContentMatchers []ContentMatchersObservation `json:"contentMatchers,omitempty" tf:"content_matchers,omitempty"`

	// A human-friendly name for the uptime check configuration. The display name should be unique within a Stackdriver Workspace in order to make it easier to identify; however, uniqueness is not enforced.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Contains information needed to make an HTTP or HTTPS check.
	// Structure is documented below.
	HTTPCheck *HTTPCheckObservation `json:"httpCheck,omitempty" tf:"http_check,omitempty"`

	// an identifier for the resource with format {{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The [monitored resource]
	// (https://cloud.google.com/monitoring/api/resources) associated with the
	// configuration. The following monitored resource types are supported for
	// uptime checks:
	MonitoredResource *MonitoredResourceObservation `json:"monitoredResource,omitempty" tf:"monitored_resource,omitempty"`

	// A unique resource name for this UptimeCheckConfig. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// How often, in seconds, the uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 300s.
	Period *string `json:"period,omitempty" tf:"period,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The group resource associated with the configuration.
	// Structure is documented below.
	ResourceGroup *ResourceGroupObservation `json:"resourceGroup,omitempty" tf:"resource_group,omitempty"`

	// The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions to include a minimum of 3 locations must be provided, or an error message is returned. Not specifying this field will result in uptime checks running from all regions.
	SelectedRegions []*string `json:"selectedRegions,omitempty" tf:"selected_regions,omitempty"`

	// A Synthetic Monitor deployed to a Cloud Functions V2 instance.
	// Structure is documented below.
	SyntheticMonitor *SyntheticMonitorObservation `json:"syntheticMonitor,omitempty" tf:"synthetic_monitor,omitempty"`

	// Contains information needed to make a TCP check.
	// Structure is documented below.
	TCPCheck *TCPCheckObservation `json:"tcpCheck,omitempty" tf:"tcp_check,omitempty"`

	// The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). See the accepted formats
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`

	// The id of the uptime check
	UptimeCheckID *string `json:"uptimeCheckId,omitempty" tf:"uptime_check_id,omitempty"`

	// User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects. The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*UptimeCheckConfigObservation) DeepCopy

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

func (*UptimeCheckConfigObservation) DeepCopyInto

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

type UptimeCheckConfigParameters

type UptimeCheckConfigParameters struct {

	// The checker type to use for the check. If the monitored resource type is servicedirectory_service, checker_type must be set to VPC_CHECKERS.
	// Possible values are: STATIC_IP_CHECKERS, VPC_CHECKERS.
	// +kubebuilder:validation:Optional
	CheckerType *string `json:"checkerType,omitempty" tf:"checker_type,omitempty"`

	// The expected content on the page the check is run against. Currently, only the first entry in the list is supported, and other entries will be ignored. The server will look for an exact match of the string in the page response's content. This field is optional and should only be specified if a content match is required.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ContentMatchers []ContentMatchersParameters `json:"contentMatchers,omitempty" tf:"content_matchers,omitempty"`

	// A human-friendly name for the uptime check configuration. The display name should be unique within a Stackdriver Workspace in order to make it easier to identify; however, uniqueness is not enforced.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Contains information needed to make an HTTP or HTTPS check.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	HTTPCheck *HTTPCheckParameters `json:"httpCheck,omitempty" tf:"http_check,omitempty"`

	// The [monitored resource]
	// (https://cloud.google.com/monitoring/api/resources) associated with the
	// configuration. The following monitored resource types are supported for
	// uptime checks:
	// +kubebuilder:validation:Optional
	MonitoredResource *MonitoredResourceParameters `json:"monitoredResource,omitempty" tf:"monitored_resource,omitempty"`

	// How often, in seconds, the uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 300s.
	// +kubebuilder:validation:Optional
	Period *string `json:"period,omitempty" tf:"period,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The group resource associated with the configuration.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ResourceGroup *ResourceGroupParameters `json:"resourceGroup,omitempty" tf:"resource_group,omitempty"`

	// The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions to include a minimum of 3 locations must be provided, or an error message is returned. Not specifying this field will result in uptime checks running from all regions.
	// +kubebuilder:validation:Optional
	SelectedRegions []*string `json:"selectedRegions,omitempty" tf:"selected_regions,omitempty"`

	// A Synthetic Monitor deployed to a Cloud Functions V2 instance.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	SyntheticMonitor *SyntheticMonitorParameters `json:"syntheticMonitor,omitempty" tf:"synthetic_monitor,omitempty"`

	// Contains information needed to make a TCP check.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	TCPCheck *TCPCheckParameters `json:"tcpCheck,omitempty" tf:"tcp_check,omitempty"`

	// The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). See the accepted formats
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`

	// User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects. The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	UserLabels map[string]*string `json:"userLabels,omitempty" tf:"user_labels,omitempty"`
}

func (*UptimeCheckConfigParameters) DeepCopy

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

func (*UptimeCheckConfigParameters) DeepCopyInto

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

type UptimeCheckConfigSpec

type UptimeCheckConfigSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     UptimeCheckConfigParameters `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 UptimeCheckConfigInitParameters `json:"initProvider,omitempty"`
}

UptimeCheckConfigSpec defines the desired state of UptimeCheckConfig

func (*UptimeCheckConfigSpec) DeepCopy

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

func (*UptimeCheckConfigSpec) DeepCopyInto

func (in *UptimeCheckConfigSpec) DeepCopyInto(out *UptimeCheckConfigSpec)

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

type UptimeCheckConfigStatus

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

UptimeCheckConfigStatus defines the observed state of UptimeCheckConfig.

func (*UptimeCheckConfigStatus) DeepCopy

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

func (*UptimeCheckConfigStatus) DeepCopyInto

func (in *UptimeCheckConfigStatus) DeepCopyInto(out *UptimeCheckConfigStatus)

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

type WindowsBasedSliInitParameters

type WindowsBasedSliInitParameters struct {

	// A TimeSeries monitoring filter
	// with ValueType = BOOL. The window is good if any true values
	// appear in the window. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	GoodBadMetricFilter *string `json:"goodBadMetricFilter,omitempty" tf:"good_bad_metric_filter,omitempty"`

	// Criterion that describes a window as good if its performance is
	// high enough. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	GoodTotalRatioThreshold *GoodTotalRatioThresholdInitParameters `json:"goodTotalRatioThreshold,omitempty" tf:"good_total_ratio_threshold,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, averaged across returned streams.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Average value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	MetricMeanInRange *MetricMeanInRangeInitParameters `json:"metricMeanInRange,omitempty" tf:"metric_mean_in_range,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, summed across returned streams.
	// Summed value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	MetricSumInRange *MetricSumInRangeInitParameters `json:"metricSumInRange,omitempty" tf:"metric_sum_in_range,omitempty"`

	// Duration over which window quality is evaluated, given as a
	// duration string "{X}s" representing X seconds. Must be an
	// integer fraction of a day and at least 60s.
	WindowPeriod *string `json:"windowPeriod,omitempty" tf:"window_period,omitempty"`
}

func (*WindowsBasedSliInitParameters) DeepCopy

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

func (*WindowsBasedSliInitParameters) DeepCopyInto

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

type WindowsBasedSliObservation

type WindowsBasedSliObservation struct {

	// A TimeSeries monitoring filter
	// with ValueType = BOOL. The window is good if any true values
	// appear in the window. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	GoodBadMetricFilter *string `json:"goodBadMetricFilter,omitempty" tf:"good_bad_metric_filter,omitempty"`

	// Criterion that describes a window as good if its performance is
	// high enough. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	GoodTotalRatioThreshold *GoodTotalRatioThresholdObservation `json:"goodTotalRatioThreshold,omitempty" tf:"good_total_ratio_threshold,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, averaged across returned streams.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Average value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	MetricMeanInRange *MetricMeanInRangeObservation `json:"metricMeanInRange,omitempty" tf:"metric_mean_in_range,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, summed across returned streams.
	// Summed value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	MetricSumInRange *MetricSumInRangeObservation `json:"metricSumInRange,omitempty" tf:"metric_sum_in_range,omitempty"`

	// Duration over which window quality is evaluated, given as a
	// duration string "{X}s" representing X seconds. Must be an
	// integer fraction of a day and at least 60s.
	WindowPeriod *string `json:"windowPeriod,omitempty" tf:"window_period,omitempty"`
}

func (*WindowsBasedSliObservation) DeepCopy

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

func (*WindowsBasedSliObservation) DeepCopyInto

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

type WindowsBasedSliParameters

type WindowsBasedSliParameters struct {

	// A TimeSeries monitoring filter
	// with ValueType = BOOL. The window is good if any true values
	// appear in the window. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// +kubebuilder:validation:Optional
	GoodBadMetricFilter *string `json:"goodBadMetricFilter,omitempty" tf:"good_bad_metric_filter,omitempty"`

	// Criterion that describes a window as good if its performance is
	// high enough. One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	GoodTotalRatioThreshold *GoodTotalRatioThresholdParameters `json:"goodTotalRatioThreshold,omitempty" tf:"good_total_ratio_threshold,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, averaged across returned streams.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Average value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MetricMeanInRange *MetricMeanInRangeParameters `json:"metricMeanInRange,omitempty" tf:"metric_mean_in_range,omitempty"`

	// Criterion that describes a window as good if the metric's value
	// is in a good range, summed across returned streams.
	// Summed value X of time_series should satisfy
	// range.min <= X <= range.max for a good window.
	// One of good_bad_metric_filter,
	// good_total_ratio_threshold, metric_mean_in_range,
	// metric_sum_in_range must be set for windows_based_sli.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MetricSumInRange *MetricSumInRangeParameters `json:"metricSumInRange,omitempty" tf:"metric_sum_in_range,omitempty"`

	// Duration over which window quality is evaluated, given as a
	// duration string "{X}s" representing X seconds. Must be an
	// integer fraction of a day and at least 60s.
	// +kubebuilder:validation:Optional
	WindowPeriod *string `json:"windowPeriod,omitempty" tf:"window_period,omitempty"`
}

func (*WindowsBasedSliParameters) DeepCopy

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

func (*WindowsBasedSliParameters) DeepCopyInto

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