v1alpha1

package
v0.2.4 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=nrql.newrelic.upbound.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "nrql.newrelic.upbound.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	AlertCondition_Kind             = "AlertCondition"
	AlertCondition_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AlertCondition_Kind}.String()
	AlertCondition_KindAPIVersion   = AlertCondition_Kind + "." + CRDGroupVersion.String()
	AlertCondition_GroupVersionKind = CRDGroupVersion.WithKind(AlertCondition_Kind)
)

Repository type metadata.

View Source
var (
	DropRule_Kind             = "DropRule"
	DropRule_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DropRule_Kind}.String()
	DropRule_KindAPIVersion   = DropRule_Kind + "." + CRDGroupVersion.String()
	DropRule_GroupVersionKind = CRDGroupVersion.WithKind(DropRule_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
)

Functions

This section is empty.

Types

type AlertCondition

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

AlertCondition is the Schema for the AlertConditions API. Create and manage a NRQL alert condition for a policy in New Relic. +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,newrelic}

func (*AlertCondition) DeepCopy

func (in *AlertCondition) DeepCopy() *AlertCondition

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

func (*AlertCondition) DeepCopyInto

func (in *AlertCondition) DeepCopyInto(out *AlertCondition)

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

func (*AlertCondition) DeepCopyObject

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

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

func (*AlertCondition) GetCondition

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

GetCondition of this AlertCondition.

func (*AlertCondition) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this AlertCondition

func (*AlertCondition) GetDeletionPolicy

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

GetDeletionPolicy of this AlertCondition.

func (*AlertCondition) GetID

func (tr *AlertCondition) GetID() string

GetID returns ID of underlying Terraform resource of this AlertCondition

func (*AlertCondition) GetInitParameters

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

GetInitParameters of this AlertCondition

func (*AlertCondition) GetManagementPolicies

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

GetManagementPolicies of this AlertCondition.

func (*AlertCondition) GetMergedParameters

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

GetInitParameters of this AlertCondition

func (*AlertCondition) GetObservation

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

GetObservation of this AlertCondition

func (*AlertCondition) GetParameters

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

GetParameters of this AlertCondition

func (*AlertCondition) GetProviderConfigReference

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

GetProviderConfigReference of this AlertCondition.

func (*AlertCondition) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this AlertCondition.

func (*AlertCondition) GetTerraformResourceType

func (mg *AlertCondition) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AlertCondition

func (*AlertCondition) GetTerraformSchemaVersion

func (tr *AlertCondition) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AlertCondition) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this AlertCondition.

func (*AlertCondition) Hub added in v0.1.1

func (tr *AlertCondition) Hub()

Hub marks this type as a conversion hub.

func (*AlertCondition) LateInitialize

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

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

func (*AlertCondition) ResolveReferences

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

ResolveReferences of this AlertCondition.

func (*AlertCondition) SetConditions

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

SetConditions of this AlertCondition.

func (*AlertCondition) SetDeletionPolicy

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

SetDeletionPolicy of this AlertCondition.

func (*AlertCondition) SetManagementPolicies

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

SetManagementPolicies of this AlertCondition.

func (*AlertCondition) SetObservation

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

SetObservation for this AlertCondition

func (*AlertCondition) SetParameters

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

SetParameters for this AlertCondition

func (*AlertCondition) SetProviderConfigReference

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

SetProviderConfigReference of this AlertCondition.

func (*AlertCondition) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this AlertCondition.

func (*AlertCondition) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this AlertCondition.

type AlertConditionInitParameters

type AlertConditionInitParameters struct {

	// The New Relic account ID of the account you wish to create the condition. Defaults to the account ID set in your environment variable NEW_RELIC_ACCOUNT_ID.
	// The New Relic account ID for managing your NRQL alert conditions.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregation_delay with the event_flow and cadence methods. The maximum delay is 1200 seconds (20 minutes) when using event_flow and 3600 seconds (60 minutes) when using cadence. In both cases, the minimum delay is 0 seconds and the default is 120 seconds. aggregation_delay cannot be set with nrql.evaluation_offset.
	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregationDelay with the EVENT_FLOW and CADENCE aggregation methods.
	AggregationDelay *string `json:"aggregationDelay,omitempty" tf:"aggregation_delay,omitempty"`

	// Determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Possible values are cadence, event_flow or event_timer. Default is event_flow. aggregation_method cannot be set with nrql.evaluation_offset.
	// The method that determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Default is EVENT_FLOW.
	AggregationMethod *string `json:"aggregationMethod,omitempty" tf:"aggregation_method,omitempty"`

	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregation_timer with the event_timer method. The timer value can range from 0 seconds to 1200 seconds (20 minutes); the default is 60 seconds. aggregation_timer cannot be set with nrql.evaluation_offset.
	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregationTimer with the EVENT_TIMER aggregation method.
	AggregationTimer *string `json:"aggregationTimer,omitempty" tf:"aggregation_timer,omitempty"`

	// The duration of the time window used to evaluate the NRQL query, in seconds. The value must be at least 30 seconds, and no more than 21600 seconds (6 hours). Default is 60 seconds.
	// The duration of the time window used to evaluate the NRQL query, in seconds.
	AggregationWindow *float64 `json:"aggregationWindow,omitempty" tf:"aggregation_window,omitempty"`

	// The baseline direction of a baseline NRQL alert condition. Valid values are: lower_only, upper_and_lower, upper_only (case insensitive).
	// The baseline direction of a baseline NRQL alert condition. Valid values are: 'LOWER_ONLY', 'UPPER_AND_LOWER', 'UPPER_ONLY' (case insensitive).
	BaselineDirection *string `json:"baselineDirection,omitempty" tf:"baseline_direction,omitempty"`

	// Whether to close all open incidents when the signal expires.
	// Whether to close all open incidents when the signal expires.
	CloseViolationsOnExpiration *bool `json:"closeViolationsOnExpiration,omitempty" tf:"close_violations_on_expiration,omitempty"`

	// A list containing the critical threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to critical.
	Critical []CriticalInitParameters `json:"critical,omitempty" tf:"critical,omitempty"`

	// The description of the NRQL alert condition.
	// The description of the NRQL alert condition.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether to enable the alert condition. Valid values are true and false. Defaults to true.
	// Whether or not to enable the alert condition.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes).
	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes)
	EvaluationDelay *float64 `json:"evaluationDelay,omitempty" tf:"evaluation_delay,omitempty"`

	// The amount of time (in seconds) to wait before considering the signal expired. The value must be at least 30 seconds, and no more than 172800 seconds (48 hours).
	// The amount of time (in seconds) to wait before considering the signal expired.  Must be in the range of 30 to 172800 (inclusive)
	ExpirationDuration *float64 `json:"expirationDuration,omitempty" tf:"expiration_duration,omitempty"`

	// Which strategy to use when filling gaps in the signal. Possible values are none, last_value or static. If static, the fill_value field will be used for filling gaps in the signal.
	// Which strategy to use when filling gaps in the signal. If static, the 'fill value' will be used for filling gaps in the signal. Valid values are: 'NONE', 'LAST_VALUE', or 'STATIC' (case insensitive).
	FillOption *string `json:"fillOption,omitempty" tf:"fill_option,omitempty"`

	// This value will be used for filling gaps in the signal.
	// If using the 'static' fill option, this value will be used for filling gaps in the signal.
	FillValue *float64 `json:"fillValue,omitempty" tf:"fill_value,omitempty"`

	// Whether an alert condition should ignore expected termination of a signal when considering whether to create a loss of signal incident. Defaults to false.
	// Whether to ignore expected termination of a signal when considering whether to create a loss of signal incident
	IgnoreOnExpectedTermination *bool `json:"ignoreOnExpectedTermination,omitempty" tf:"ignore_on_expected_termination,omitempty"`

	// The title of the condition.
	// The title of the condition.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A NRQL query. See NRQL below for details.
	// A NRQL query.
	Nrql []NrqlInitParameters `json:"nrql,omitempty" tf:"nrql,omitempty"`

	// Whether to create a new incident to capture that the signal expired.
	// Whether to create a new incident to capture that the signal expired.
	OpenViolationOnExpiration *bool `json:"openViolationOnExpiration,omitempty" tf:"open_violation_on_expiration,omitempty"`

	// The ID of the policy where this condition should be used.
	// The ID of the policy where this condition should be used.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/crossplane-provider-newrelic/apis/alert/v1alpha1.Policy
	PolicyID *float64 `json:"policyId,omitempty" tf:"policy_id,omitempty"`

	// Reference to a Policy in alert to populate policyId.
	// +kubebuilder:validation:Optional
	PolicyIDRef *v1.Reference `json:"policyIdRef,omitempty" tf:"-"`

	// Selector for a Policy in alert to populate policyId.
	// +kubebuilder:validation:Optional
	PolicyIDSelector *v1.Selector `json:"policyIdSelector,omitempty" tf:"-"`

	// Runbook URL to display in notifications.
	// Runbook URL to display in notifications.
	RunbookURL *string `json:"runbookUrl,omitempty" tf:"runbook_url,omitempty"`

	// Gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. The slide_by value is specified in seconds and must be smaller than and a factor of the aggregation_window.
	// The duration of overlapping time windows used to smooth the chart line, in seconds. Must be a factor of `aggregation_window` and less than the aggregation window. If `aggregation_window` is less than or equal to 3600 seconds, it should be greater or equal to 30 seconds. If `aggregation_window` is greater than 3600 seconds but less than 7200 seconds, it should be greater or equal to `aggregation_window / 120`.  If `aggregation_window` is greater than 7200 seconds, it should be greater or equal to `aggregation_window / 24
	SlideBy *float64 `json:"slideBy,omitempty" tf:"slide_by,omitempty"`

	// The custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	// This field allows you to create a custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	TitleTemplate *string `json:"titleTemplate,omitempty" tf:"title_template,omitempty"`

	// The type of the condition. Valid values are static or baseline. Defaults to static.
	// The type of NRQL alert condition to create. Valid values are: 'static', 'baseline'.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select. The value must be between 300 seconds (5 minutes) to 2592000 seconds (30 days) (inclusive).
	// *Note: One of violation_time_limit or violation_time_limit_seconds must be set, but not both.
	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select.  Must be in the range of 300 to 2592000 (inclusive)
	ViolationTimeLimitSeconds *float64 `json:"violationTimeLimitSeconds,omitempty" tf:"violation_time_limit_seconds,omitempty"`

	// A list containing the warning threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to warning.
	Warning []WarningInitParameters `json:"warning,omitempty" tf:"warning,omitempty"`
}

func (*AlertConditionInitParameters) DeepCopy

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

func (*AlertConditionInitParameters) DeepCopyInto

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

type AlertConditionList

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

AlertConditionList contains a list of AlertConditions

func (*AlertConditionList) DeepCopy

func (in *AlertConditionList) DeepCopy() *AlertConditionList

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

func (*AlertConditionList) DeepCopyInto

func (in *AlertConditionList) DeepCopyInto(out *AlertConditionList)

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

func (*AlertConditionList) DeepCopyObject

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

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

func (*AlertConditionList) GetItems

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

GetItems of this AlertConditionList.

type AlertConditionObservation

type AlertConditionObservation struct {

	// The New Relic account ID of the account you wish to create the condition. Defaults to the account ID set in your environment variable NEW_RELIC_ACCOUNT_ID.
	// The New Relic account ID for managing your NRQL alert conditions.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregation_delay with the event_flow and cadence methods. The maximum delay is 1200 seconds (20 minutes) when using event_flow and 3600 seconds (60 minutes) when using cadence. In both cases, the minimum delay is 0 seconds and the default is 120 seconds. aggregation_delay cannot be set with nrql.evaluation_offset.
	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregationDelay with the EVENT_FLOW and CADENCE aggregation methods.
	AggregationDelay *string `json:"aggregationDelay,omitempty" tf:"aggregation_delay,omitempty"`

	// Determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Possible values are cadence, event_flow or event_timer. Default is event_flow. aggregation_method cannot be set with nrql.evaluation_offset.
	// The method that determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Default is EVENT_FLOW.
	AggregationMethod *string `json:"aggregationMethod,omitempty" tf:"aggregation_method,omitempty"`

	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregation_timer with the event_timer method. The timer value can range from 0 seconds to 1200 seconds (20 minutes); the default is 60 seconds. aggregation_timer cannot be set with nrql.evaluation_offset.
	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregationTimer with the EVENT_TIMER aggregation method.
	AggregationTimer *string `json:"aggregationTimer,omitempty" tf:"aggregation_timer,omitempty"`

	// The duration of the time window used to evaluate the NRQL query, in seconds. The value must be at least 30 seconds, and no more than 21600 seconds (6 hours). Default is 60 seconds.
	// The duration of the time window used to evaluate the NRQL query, in seconds.
	AggregationWindow *float64 `json:"aggregationWindow,omitempty" tf:"aggregation_window,omitempty"`

	// The baseline direction of a baseline NRQL alert condition. Valid values are: lower_only, upper_and_lower, upper_only (case insensitive).
	// The baseline direction of a baseline NRQL alert condition. Valid values are: 'LOWER_ONLY', 'UPPER_AND_LOWER', 'UPPER_ONLY' (case insensitive).
	BaselineDirection *string `json:"baselineDirection,omitempty" tf:"baseline_direction,omitempty"`

	// Whether to close all open incidents when the signal expires.
	// Whether to close all open incidents when the signal expires.
	CloseViolationsOnExpiration *bool `json:"closeViolationsOnExpiration,omitempty" tf:"close_violations_on_expiration,omitempty"`

	// A list containing the critical threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to critical.
	Critical []CriticalObservation `json:"critical,omitempty" tf:"critical,omitempty"`

	// The description of the NRQL alert condition.
	// The description of the NRQL alert condition.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether to enable the alert condition. Valid values are true and false. Defaults to true.
	// Whether or not to enable the alert condition.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The unique entity identifier of the NRQL Condition in New Relic.
	// The unique entity identifier of the NRQL Condition in New Relic.
	EntityGUID *string `json:"entityGuid,omitempty" tf:"entity_guid,omitempty"`

	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes).
	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes)
	EvaluationDelay *float64 `json:"evaluationDelay,omitempty" tf:"evaluation_delay,omitempty"`

	// The amount of time (in seconds) to wait before considering the signal expired. The value must be at least 30 seconds, and no more than 172800 seconds (48 hours).
	// The amount of time (in seconds) to wait before considering the signal expired.  Must be in the range of 30 to 172800 (inclusive)
	ExpirationDuration *float64 `json:"expirationDuration,omitempty" tf:"expiration_duration,omitempty"`

	// Which strategy to use when filling gaps in the signal. Possible values are none, last_value or static. If static, the fill_value field will be used for filling gaps in the signal.
	// Which strategy to use when filling gaps in the signal. If static, the 'fill value' will be used for filling gaps in the signal. Valid values are: 'NONE', 'LAST_VALUE', or 'STATIC' (case insensitive).
	FillOption *string `json:"fillOption,omitempty" tf:"fill_option,omitempty"`

	// This value will be used for filling gaps in the signal.
	// If using the 'static' fill option, this value will be used for filling gaps in the signal.
	FillValue *float64 `json:"fillValue,omitempty" tf:"fill_value,omitempty"`

	// The ID of the NRQL alert condition. This is a composite ID with the format <policy_id>:<condition_id> - e.g. 538291:6789035.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Whether an alert condition should ignore expected termination of a signal when considering whether to create a loss of signal incident. Defaults to false.
	// Whether to ignore expected termination of a signal when considering whether to create a loss of signal incident
	IgnoreOnExpectedTermination *bool `json:"ignoreOnExpectedTermination,omitempty" tf:"ignore_on_expected_termination,omitempty"`

	// The title of the condition.
	// The title of the condition.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A NRQL query. See NRQL below for details.
	// A NRQL query.
	Nrql []NrqlObservation `json:"nrql,omitempty" tf:"nrql,omitempty"`

	// Whether to create a new incident to capture that the signal expired.
	// Whether to create a new incident to capture that the signal expired.
	OpenViolationOnExpiration *bool `json:"openViolationOnExpiration,omitempty" tf:"open_violation_on_expiration,omitempty"`

	// The ID of the policy where this condition should be used.
	// The ID of the policy where this condition should be used.
	PolicyID *float64 `json:"policyId,omitempty" tf:"policy_id,omitempty"`

	// Runbook URL to display in notifications.
	// Runbook URL to display in notifications.
	RunbookURL *string `json:"runbookUrl,omitempty" tf:"runbook_url,omitempty"`

	// Gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. The slide_by value is specified in seconds and must be smaller than and a factor of the aggregation_window.
	// The duration of overlapping time windows used to smooth the chart line, in seconds. Must be a factor of `aggregation_window` and less than the aggregation window. If `aggregation_window` is less than or equal to 3600 seconds, it should be greater or equal to 30 seconds. If `aggregation_window` is greater than 3600 seconds but less than 7200 seconds, it should be greater or equal to `aggregation_window / 120`.  If `aggregation_window` is greater than 7200 seconds, it should be greater or equal to `aggregation_window / 24
	SlideBy *float64 `json:"slideBy,omitempty" tf:"slide_by,omitempty"`

	// The custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	// This field allows you to create a custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	TitleTemplate *string `json:"titleTemplate,omitempty" tf:"title_template,omitempty"`

	// The type of the condition. Valid values are static or baseline. Defaults to static.
	// The type of NRQL alert condition to create. Valid values are: 'static', 'baseline'.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// DEPRECATED: Use violation_time_limit_seconds instead. Sets a time limit, in hours, that will automatically force-close a long-lasting incident after the time limit you select. Possible values are ONE_HOUR, TWO_HOURS, FOUR_HOURS, EIGHT_HOURS, TWELVE_HOURS, TWENTY_FOUR_HOURS, THIRTY_DAYS (case insensitive).
	// *Note: One of violation_time_limit or violation_time_limit_seconds must be set, but not both.
	// Sets a time limit, in hours, that will automatically force-close a long-lasting incident after the time limit you select. Possible values are 'ONE_HOUR', 'TWO_HOURS', 'FOUR_HOURS', 'EIGHT_HOURS', 'TWELVE_HOURS', 'TWENTY_FOUR_HOURS', 'THIRTY_DAYS' (case insensitive).
	ViolationTimeLimit *string `json:"violationTimeLimit,omitempty" tf:"violation_time_limit,omitempty"`

	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select. The value must be between 300 seconds (5 minutes) to 2592000 seconds (30 days) (inclusive).
	// *Note: One of violation_time_limit or violation_time_limit_seconds must be set, but not both.
	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select.  Must be in the range of 300 to 2592000 (inclusive)
	ViolationTimeLimitSeconds *float64 `json:"violationTimeLimitSeconds,omitempty" tf:"violation_time_limit_seconds,omitempty"`

	// A list containing the warning threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to warning.
	Warning []WarningObservation `json:"warning,omitempty" tf:"warning,omitempty"`
}

func (*AlertConditionObservation) DeepCopy

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

func (*AlertConditionObservation) DeepCopyInto

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

type AlertConditionParameters

type AlertConditionParameters struct {

	// The New Relic account ID of the account you wish to create the condition. Defaults to the account ID set in your environment variable NEW_RELIC_ACCOUNT_ID.
	// The New Relic account ID for managing your NRQL alert conditions.
	// +kubebuilder:validation:Optional
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregation_delay with the event_flow and cadence methods. The maximum delay is 1200 seconds (20 minutes) when using event_flow and 3600 seconds (60 minutes) when using cadence. In both cases, the minimum delay is 0 seconds and the default is 120 seconds. aggregation_delay cannot be set with nrql.evaluation_offset.
	// How long we wait for data that belongs in each aggregation window. Depending on your data, a longer delay may increase accuracy but delay notifications. Use aggregationDelay with the EVENT_FLOW and CADENCE aggregation methods.
	// +kubebuilder:validation:Optional
	AggregationDelay *string `json:"aggregationDelay,omitempty" tf:"aggregation_delay,omitempty"`

	// Determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Possible values are cadence, event_flow or event_timer. Default is event_flow. aggregation_method cannot be set with nrql.evaluation_offset.
	// The method that determines when we consider an aggregation window to be complete so that we can evaluate the signal for incidents. Default is EVENT_FLOW.
	// +kubebuilder:validation:Optional
	AggregationMethod *string `json:"aggregationMethod,omitempty" tf:"aggregation_method,omitempty"`

	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregation_timer with the event_timer method. The timer value can range from 0 seconds to 1200 seconds (20 minutes); the default is 60 seconds. aggregation_timer cannot be set with nrql.evaluation_offset.
	// How long we wait after each data point arrives to make sure we've processed the whole batch. Use aggregationTimer with the EVENT_TIMER aggregation method.
	// +kubebuilder:validation:Optional
	AggregationTimer *string `json:"aggregationTimer,omitempty" tf:"aggregation_timer,omitempty"`

	// The duration of the time window used to evaluate the NRQL query, in seconds. The value must be at least 30 seconds, and no more than 21600 seconds (6 hours). Default is 60 seconds.
	// The duration of the time window used to evaluate the NRQL query, in seconds.
	// +kubebuilder:validation:Optional
	AggregationWindow *float64 `json:"aggregationWindow,omitempty" tf:"aggregation_window,omitempty"`

	// The baseline direction of a baseline NRQL alert condition. Valid values are: lower_only, upper_and_lower, upper_only (case insensitive).
	// The baseline direction of a baseline NRQL alert condition. Valid values are: 'LOWER_ONLY', 'UPPER_AND_LOWER', 'UPPER_ONLY' (case insensitive).
	// +kubebuilder:validation:Optional
	BaselineDirection *string `json:"baselineDirection,omitempty" tf:"baseline_direction,omitempty"`

	// Whether to close all open incidents when the signal expires.
	// Whether to close all open incidents when the signal expires.
	// +kubebuilder:validation:Optional
	CloseViolationsOnExpiration *bool `json:"closeViolationsOnExpiration,omitempty" tf:"close_violations_on_expiration,omitempty"`

	// A list containing the critical threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to critical.
	// +kubebuilder:validation:Optional
	Critical []CriticalParameters `json:"critical,omitempty" tf:"critical,omitempty"`

	// The description of the NRQL alert condition.
	// The description of the NRQL alert condition.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether to enable the alert condition. Valid values are true and false. Defaults to true.
	// Whether or not to enable the alert condition.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes).
	// How long we wait until the signal starts evaluating. The maximum delay is 7200 seconds (120 minutes)
	// +kubebuilder:validation:Optional
	EvaluationDelay *float64 `json:"evaluationDelay,omitempty" tf:"evaluation_delay,omitempty"`

	// The amount of time (in seconds) to wait before considering the signal expired. The value must be at least 30 seconds, and no more than 172800 seconds (48 hours).
	// The amount of time (in seconds) to wait before considering the signal expired.  Must be in the range of 30 to 172800 (inclusive)
	// +kubebuilder:validation:Optional
	ExpirationDuration *float64 `json:"expirationDuration,omitempty" tf:"expiration_duration,omitempty"`

	// Which strategy to use when filling gaps in the signal. Possible values are none, last_value or static. If static, the fill_value field will be used for filling gaps in the signal.
	// Which strategy to use when filling gaps in the signal. If static, the 'fill value' will be used for filling gaps in the signal. Valid values are: 'NONE', 'LAST_VALUE', or 'STATIC' (case insensitive).
	// +kubebuilder:validation:Optional
	FillOption *string `json:"fillOption,omitempty" tf:"fill_option,omitempty"`

	// This value will be used for filling gaps in the signal.
	// If using the 'static' fill option, this value will be used for filling gaps in the signal.
	// +kubebuilder:validation:Optional
	FillValue *float64 `json:"fillValue,omitempty" tf:"fill_value,omitempty"`

	// Whether an alert condition should ignore expected termination of a signal when considering whether to create a loss of signal incident. Defaults to false.
	// Whether to ignore expected termination of a signal when considering whether to create a loss of signal incident
	// +kubebuilder:validation:Optional
	IgnoreOnExpectedTermination *bool `json:"ignoreOnExpectedTermination,omitempty" tf:"ignore_on_expected_termination,omitempty"`

	// The title of the condition.
	// The title of the condition.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A NRQL query. See NRQL below for details.
	// A NRQL query.
	// +kubebuilder:validation:Optional
	Nrql []NrqlParameters `json:"nrql,omitempty" tf:"nrql,omitempty"`

	// Whether to create a new incident to capture that the signal expired.
	// Whether to create a new incident to capture that the signal expired.
	// +kubebuilder:validation:Optional
	OpenViolationOnExpiration *bool `json:"openViolationOnExpiration,omitempty" tf:"open_violation_on_expiration,omitempty"`

	// The ID of the policy where this condition should be used.
	// The ID of the policy where this condition should be used.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/crossplane-provider-newrelic/apis/alert/v1alpha1.Policy
	// +kubebuilder:validation:Optional
	PolicyID *float64 `json:"policyId,omitempty" tf:"policy_id,omitempty"`

	// Reference to a Policy in alert to populate policyId.
	// +kubebuilder:validation:Optional
	PolicyIDRef *v1.Reference `json:"policyIdRef,omitempty" tf:"-"`

	// Selector for a Policy in alert to populate policyId.
	// +kubebuilder:validation:Optional
	PolicyIDSelector *v1.Selector `json:"policyIdSelector,omitempty" tf:"-"`

	// Runbook URL to display in notifications.
	// Runbook URL to display in notifications.
	// +kubebuilder:validation:Optional
	RunbookURL *string `json:"runbookUrl,omitempty" tf:"runbook_url,omitempty"`

	// Gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. The slide_by value is specified in seconds and must be smaller than and a factor of the aggregation_window.
	// The duration of overlapping time windows used to smooth the chart line, in seconds. Must be a factor of `aggregation_window` and less than the aggregation window. If `aggregation_window` is less than or equal to 3600 seconds, it should be greater or equal to 30 seconds. If `aggregation_window` is greater than 3600 seconds but less than 7200 seconds, it should be greater or equal to `aggregation_window / 120`.  If `aggregation_window` is greater than 7200 seconds, it should be greater or equal to `aggregation_window / 24
	// +kubebuilder:validation:Optional
	SlideBy *float64 `json:"slideBy,omitempty" tf:"slide_by,omitempty"`

	// The custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	// This field allows you to create a custom title to be used when incidents are opened by the condition. Setting this field will override the default title. Must be Handlebars format.
	// +kubebuilder:validation:Optional
	TitleTemplate *string `json:"titleTemplate,omitempty" tf:"title_template,omitempty"`

	// The type of the condition. Valid values are static or baseline. Defaults to static.
	// The type of NRQL alert condition to create. Valid values are: 'static', 'baseline'.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select. The value must be between 300 seconds (5 minutes) to 2592000 seconds (30 days) (inclusive).
	// *Note: One of violation_time_limit or violation_time_limit_seconds must be set, but not both.
	// Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select.  Must be in the range of 300 to 2592000 (inclusive)
	// +kubebuilder:validation:Optional
	ViolationTimeLimitSeconds *float64 `json:"violationTimeLimitSeconds,omitempty" tf:"violation_time_limit_seconds,omitempty"`

	// A list containing the warning threshold values. At least one critical or warning threshold must be defined. See Terms below for details.
	// A condition term with priority set to warning.
	// +kubebuilder:validation:Optional
	Warning []WarningParameters `json:"warning,omitempty" tf:"warning,omitempty"`
}

func (*AlertConditionParameters) DeepCopy

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

func (*AlertConditionParameters) DeepCopyInto

func (in *AlertConditionParameters) DeepCopyInto(out *AlertConditionParameters)

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

type AlertConditionSpec

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

AlertConditionSpec defines the desired state of AlertCondition

func (*AlertConditionSpec) DeepCopy

func (in *AlertConditionSpec) DeepCopy() *AlertConditionSpec

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

func (*AlertConditionSpec) DeepCopyInto

func (in *AlertConditionSpec) DeepCopyInto(out *AlertConditionSpec)

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

type AlertConditionStatus

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

AlertConditionStatus defines the observed state of AlertCondition.

func (*AlertConditionStatus) DeepCopy

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

func (*AlertConditionStatus) DeepCopyInto

func (in *AlertConditionStatus) DeepCopyInto(out *AlertConditionStatus)

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

type CriticalInitParameters

type CriticalInitParameters struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*CriticalInitParameters) DeepCopy

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

func (*CriticalInitParameters) DeepCopyInto

func (in *CriticalInitParameters) DeepCopyInto(out *CriticalInitParameters)

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

type CriticalObservation

type CriticalObservation struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*CriticalObservation) DeepCopy

func (in *CriticalObservation) DeepCopy() *CriticalObservation

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

func (*CriticalObservation) DeepCopyInto

func (in *CriticalObservation) DeepCopyInto(out *CriticalObservation)

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

type CriticalParameters

type CriticalParameters struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	// +kubebuilder:validation:Optional
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	// +kubebuilder:validation:Optional
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	// +kubebuilder:validation:Optional
	Threshold *float64 `json:"threshold" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	// +kubebuilder:validation:Optional
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	// +kubebuilder:validation:Optional
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	// +kubebuilder:validation:Optional
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*CriticalParameters) DeepCopy

func (in *CriticalParameters) DeepCopy() *CriticalParameters

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

func (*CriticalParameters) DeepCopyInto

func (in *CriticalParameters) DeepCopyInto(out *CriticalParameters)

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

type DropRule

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

DropRule is the Schema for the DropRules API. Create and manage NRQL Drop Rules. +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,newrelic}

func (*DropRule) DeepCopy

func (in *DropRule) DeepCopy() *DropRule

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

func (*DropRule) DeepCopyInto

func (in *DropRule) DeepCopyInto(out *DropRule)

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

func (*DropRule) DeepCopyObject

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

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

func (*DropRule) GetCondition

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

GetCondition of this DropRule.

func (*DropRule) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this DropRule

func (*DropRule) GetDeletionPolicy

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

GetDeletionPolicy of this DropRule.

func (*DropRule) GetID

func (tr *DropRule) GetID() string

GetID returns ID of underlying Terraform resource of this DropRule

func (*DropRule) GetInitParameters

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

GetInitParameters of this DropRule

func (*DropRule) GetManagementPolicies

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

GetManagementPolicies of this DropRule.

func (*DropRule) GetMergedParameters

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

GetInitParameters of this DropRule

func (*DropRule) GetObservation

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

GetObservation of this DropRule

func (*DropRule) GetParameters

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

GetParameters of this DropRule

func (*DropRule) GetProviderConfigReference

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

GetProviderConfigReference of this DropRule.

func (*DropRule) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this DropRule.

func (*DropRule) GetTerraformResourceType

func (mg *DropRule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DropRule

func (*DropRule) GetTerraformSchemaVersion

func (tr *DropRule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DropRule) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this DropRule.

func (*DropRule) Hub added in v0.1.1

func (tr *DropRule) Hub()

Hub marks this type as a conversion hub.

func (*DropRule) LateInitialize

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

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

func (*DropRule) SetConditions

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

SetConditions of this DropRule.

func (*DropRule) SetDeletionPolicy

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

SetDeletionPolicy of this DropRule.

func (*DropRule) SetManagementPolicies

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

SetManagementPolicies of this DropRule.

func (*DropRule) SetObservation

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

SetObservation for this DropRule

func (*DropRule) SetParameters

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

SetParameters for this DropRule

func (*DropRule) SetProviderConfigReference

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

SetProviderConfigReference of this DropRule.

func (*DropRule) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this DropRule.

func (*DropRule) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this DropRule.

type DropRuleInitParameters

type DropRuleInitParameters struct {

	// Account where the drop rule will be put. Defaults to the account associated with the API key used.
	// Account with the NRQL drop rule will be put.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// An action type specifying how to apply the NRQL string (either drop_data, drop_attributes, or  drop_attributes_from_metric_aggregates).
	// The drop rule action (drop_data, drop_attributes, or drop_attributes_from_metric_aggregates).
	Action *string `json:"action,omitempty" tf:"action,omitempty"`

	// The description of the drop rule.
	// Provides additional information about the rule.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A NRQL string that specifies what data types to drop.
	// Explains which data to apply the drop rule to.
	Nrql *string `json:"nrql,omitempty" tf:"nrql,omitempty"`
}

func (*DropRuleInitParameters) DeepCopy

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

func (*DropRuleInitParameters) DeepCopyInto

func (in *DropRuleInitParameters) DeepCopyInto(out *DropRuleInitParameters)

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

type DropRuleList

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

DropRuleList contains a list of DropRules

func (*DropRuleList) DeepCopy

func (in *DropRuleList) DeepCopy() *DropRuleList

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

func (*DropRuleList) DeepCopyInto

func (in *DropRuleList) DeepCopyInto(out *DropRuleList)

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

func (*DropRuleList) DeepCopyObject

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

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

func (*DropRuleList) GetItems

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

GetItems of this DropRuleList.

type DropRuleObservation

type DropRuleObservation struct {

	// Account where the drop rule will be put. Defaults to the account associated with the API key used.
	// Account with the NRQL drop rule will be put.
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// An action type specifying how to apply the NRQL string (either drop_data, drop_attributes, or  drop_attributes_from_metric_aggregates).
	// The drop rule action (drop_data, drop_attributes, or drop_attributes_from_metric_aggregates).
	Action *string `json:"action,omitempty" tf:"action,omitempty"`

	// The description of the drop rule.
	// Provides additional information about the rule.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// A NRQL string that specifies what data types to drop.
	// Explains which data to apply the drop rule to.
	Nrql *string `json:"nrql,omitempty" tf:"nrql,omitempty"`

	// The id, uniquely identifying the rule.
	// The id, uniquely identifying the rule.
	RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"`
}

func (*DropRuleObservation) DeepCopy

func (in *DropRuleObservation) DeepCopy() *DropRuleObservation

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

func (*DropRuleObservation) DeepCopyInto

func (in *DropRuleObservation) DeepCopyInto(out *DropRuleObservation)

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

type DropRuleParameters

type DropRuleParameters struct {

	// Account where the drop rule will be put. Defaults to the account associated with the API key used.
	// Account with the NRQL drop rule will be put.
	// +kubebuilder:validation:Optional
	AccountID *float64 `json:"accountId,omitempty" tf:"account_id,omitempty"`

	// An action type specifying how to apply the NRQL string (either drop_data, drop_attributes, or  drop_attributes_from_metric_aggregates).
	// The drop rule action (drop_data, drop_attributes, or drop_attributes_from_metric_aggregates).
	// +kubebuilder:validation:Optional
	Action *string `json:"action,omitempty" tf:"action,omitempty"`

	// The description of the drop rule.
	// Provides additional information about the rule.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A NRQL string that specifies what data types to drop.
	// Explains which data to apply the drop rule to.
	// +kubebuilder:validation:Optional
	Nrql *string `json:"nrql,omitempty" tf:"nrql,omitempty"`
}

func (*DropRuleParameters) DeepCopy

func (in *DropRuleParameters) DeepCopy() *DropRuleParameters

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

func (*DropRuleParameters) DeepCopyInto

func (in *DropRuleParameters) DeepCopyInto(out *DropRuleParameters)

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

type DropRuleSpec

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

DropRuleSpec defines the desired state of DropRule

func (*DropRuleSpec) DeepCopy

func (in *DropRuleSpec) DeepCopy() *DropRuleSpec

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

func (*DropRuleSpec) DeepCopyInto

func (in *DropRuleSpec) DeepCopyInto(out *DropRuleSpec)

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

type DropRuleStatus

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

DropRuleStatus defines the observed state of DropRule.

func (*DropRuleStatus) DeepCopy

func (in *DropRuleStatus) DeepCopy() *DropRuleStatus

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

func (*DropRuleStatus) DeepCopyInto

func (in *DropRuleStatus) DeepCopyInto(out *DropRuleStatus)

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

type NrqlInitParameters

type NrqlInitParameters struct {

	// BETA PREVIEW: the  The account ID to use for the alert condition's query as specified in the the query field. If data_account_id is not specified, then the condition's query will be evaluated against the account_id. Note that the account_id must have read privileges for the data_account_id or else the condition will be invalid.
	// BETA PREVIEW: the `data_account_id` field is in limited release and only enabled for preview on a per-account basis. - The New Relic account ID to use as the basis for the NRQL alert condition's `query`; will default to `account_id` if unspecified.
	DataAccountID *float64 `json:"dataAccountId,omitempty" tf:"data_account_id,omitempty"`

	// DEPRECATED: Use aggregation_method instead. Represented in minutes and must be within 1-20 minutes (inclusive). NRQL queries are evaluated based on their aggregation_window size. The start time depends on this value. It's recommended to set this to 3 windows. An offset of less than 3 windows will trigger incidents sooner, but you may see more false positives and negatives due to data latency. With evaluation_offset set to 3 windows and an aggregation_window of 60 seconds, the NRQL time window applied to your query will be: SINCE 3 minutes ago UNTIL 2 minutes ago. evaluation_offset cannot be set with aggregation_method, aggregation_delay, or aggregation_timer.
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `evaluation_offset`.
	EvaluationOffset *float64 `json:"evaluationOffset,omitempty" tf:"evaluation_offset,omitempty"`

	// The NRQL query to execute for the condition.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// DEPRECATED: Use aggregation_method instead. The value to be used in the SINCE <X> minutes ago clause for the NRQL query. Must be between 1-20 (inclusive).
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `since_value`.
	SinceValue *string `json:"sinceValue,omitempty" tf:"since_value,omitempty"`
}

func (*NrqlInitParameters) DeepCopy

func (in *NrqlInitParameters) DeepCopy() *NrqlInitParameters

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

func (*NrqlInitParameters) DeepCopyInto

func (in *NrqlInitParameters) DeepCopyInto(out *NrqlInitParameters)

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

type NrqlObservation

type NrqlObservation struct {

	// BETA PREVIEW: the  The account ID to use for the alert condition's query as specified in the the query field. If data_account_id is not specified, then the condition's query will be evaluated against the account_id. Note that the account_id must have read privileges for the data_account_id or else the condition will be invalid.
	// BETA PREVIEW: the `data_account_id` field is in limited release and only enabled for preview on a per-account basis. - The New Relic account ID to use as the basis for the NRQL alert condition's `query`; will default to `account_id` if unspecified.
	DataAccountID *float64 `json:"dataAccountId,omitempty" tf:"data_account_id,omitempty"`

	// DEPRECATED: Use aggregation_method instead. Represented in minutes and must be within 1-20 minutes (inclusive). NRQL queries are evaluated based on their aggregation_window size. The start time depends on this value. It's recommended to set this to 3 windows. An offset of less than 3 windows will trigger incidents sooner, but you may see more false positives and negatives due to data latency. With evaluation_offset set to 3 windows and an aggregation_window of 60 seconds, the NRQL time window applied to your query will be: SINCE 3 minutes ago UNTIL 2 minutes ago. evaluation_offset cannot be set with aggregation_method, aggregation_delay, or aggregation_timer.
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `evaluation_offset`.
	EvaluationOffset *float64 `json:"evaluationOffset,omitempty" tf:"evaluation_offset,omitempty"`

	// The NRQL query to execute for the condition.
	Query *string `json:"query,omitempty" tf:"query,omitempty"`

	// DEPRECATED: Use aggregation_method instead. The value to be used in the SINCE <X> minutes ago clause for the NRQL query. Must be between 1-20 (inclusive).
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `since_value`.
	SinceValue *string `json:"sinceValue,omitempty" tf:"since_value,omitempty"`
}

func (*NrqlObservation) DeepCopy

func (in *NrqlObservation) DeepCopy() *NrqlObservation

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

func (*NrqlObservation) DeepCopyInto

func (in *NrqlObservation) DeepCopyInto(out *NrqlObservation)

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

type NrqlParameters

type NrqlParameters struct {

	// BETA PREVIEW: the  The account ID to use for the alert condition's query as specified in the the query field. If data_account_id is not specified, then the condition's query will be evaluated against the account_id. Note that the account_id must have read privileges for the data_account_id or else the condition will be invalid.
	// BETA PREVIEW: the `data_account_id` field is in limited release and only enabled for preview on a per-account basis. - The New Relic account ID to use as the basis for the NRQL alert condition's `query`; will default to `account_id` if unspecified.
	// +kubebuilder:validation:Optional
	DataAccountID *float64 `json:"dataAccountId,omitempty" tf:"data_account_id,omitempty"`

	// DEPRECATED: Use aggregation_method instead. Represented in minutes and must be within 1-20 minutes (inclusive). NRQL queries are evaluated based on their aggregation_window size. The start time depends on this value. It's recommended to set this to 3 windows. An offset of less than 3 windows will trigger incidents sooner, but you may see more false positives and negatives due to data latency. With evaluation_offset set to 3 windows and an aggregation_window of 60 seconds, the NRQL time window applied to your query will be: SINCE 3 minutes ago UNTIL 2 minutes ago. evaluation_offset cannot be set with aggregation_method, aggregation_delay, or aggregation_timer.
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `evaluation_offset`.
	// +kubebuilder:validation:Optional
	EvaluationOffset *float64 `json:"evaluationOffset,omitempty" tf:"evaluation_offset,omitempty"`

	// The NRQL query to execute for the condition.
	// +kubebuilder:validation:Optional
	Query *string `json:"query" tf:"query,omitempty"`

	// DEPRECATED: Use aggregation_method instead. The value to be used in the SINCE <X> minutes ago clause for the NRQL query. Must be between 1-20 (inclusive).
	// NRQL queries are evaluated in one-minute time windows. The start time depends on the value you provide in the NRQL condition's `since_value`.
	// +kubebuilder:validation:Optional
	SinceValue *string `json:"sinceValue,omitempty" tf:"since_value,omitempty"`
}

func (*NrqlParameters) DeepCopy

func (in *NrqlParameters) DeepCopy() *NrqlParameters

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

func (*NrqlParameters) DeepCopyInto

func (in *NrqlParameters) DeepCopyInto(out *NrqlParameters)

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

type WarningInitParameters

type WarningInitParameters struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*WarningInitParameters) DeepCopy

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

func (*WarningInitParameters) DeepCopyInto

func (in *WarningInitParameters) DeepCopyInto(out *WarningInitParameters)

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

type WarningObservation

type WarningObservation struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*WarningObservation) DeepCopy

func (in *WarningObservation) DeepCopy() *WarningObservation

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

func (*WarningObservation) DeepCopyInto

func (in *WarningObservation) DeepCopyInto(out *WarningObservation)

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

type WarningParameters

type WarningParameters struct {

	// DEPRECATED: Use threshold_duration instead. The duration of time, in minutes, that the threshold must violate for in order to create an incident. Must be within 1-120 (inclusive).
	// In minutes, must be in the range of 1 to 120 (inclusive).
	// +kubebuilder:validation:Optional
	Duration *float64 `json:"duration,omitempty" tf:"duration,omitempty"`

	// Valid values are above, above_or_equals, below, below_or_equals, equals, or not_equals (case insensitive). Defaults to equals. Note that when using a type of baseline, the only valid option here is above.
	// One of (above, above_or_equals, below, below_or_equals, equals, not_equals). Defaults to 'equals'.
	// +kubebuilder:validation:Optional
	Operator *string `json:"operator,omitempty" tf:"operator,omitempty"`

	// The value which will trigger an incident.
	// For baseline NRQL alert conditions, the value must be in the range [1, 1000]. The value is the number of standard deviations from the baseline that the metric must exceed in order to create an incident.
	// For baseline conditions must be in range [1, 1000].
	// +kubebuilder:validation:Optional
	Threshold *float64 `json:"threshold" tf:"threshold,omitempty"`

	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the aggregation_window (which has a default of 60 seconds).
	// For baseline NRQL alert conditions, the value must be within 120-86400 seconds (inclusive).
	// For static NRQL alert conditions, the value must be within 60-86400 seconds (inclusive).
	// The duration, in seconds, that the threshold must violate in order to create an incident. Value must be a multiple of the 'aggregation_window' (which has a default of 60 seconds). Value must be within 120-86400 seconds for baseline conditions, and within 60-86400 seconds for static conditions
	// +kubebuilder:validation:Optional
	ThresholdDuration *float64 `json:"thresholdDuration,omitempty" tf:"threshold_duration,omitempty"`

	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or at_least_once (case insensitive).
	// The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: 'ALL' or 'AT_LEAST_ONCE' (case insensitive).
	// +kubebuilder:validation:Optional
	ThresholdOccurrences *string `json:"thresholdOccurrences,omitempty" tf:"threshold_occurrences,omitempty"`

	// DEPRECATED: Use threshold_occurrences instead. The criteria for how many data points must be in violation for the specified threshold duration. Valid values are: all or any.
	// Valid values are: 'all' or 'any'
	// +kubebuilder:validation:Optional
	TimeFunction *string `json:"timeFunction,omitempty" tf:"time_function,omitempty"`
}

func (*WarningParameters) DeepCopy

func (in *WarningParameters) DeepCopy() *WarningParameters

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

func (*WarningParameters) DeepCopyInto

func (in *WarningParameters) DeepCopyInto(out *WarningParameters)

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