v1alpha1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: May 8, 2022 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

+groupName=alerting.dynatrace.kubeform.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: alerting.GroupName, Version: "v1alpha1"}

Functions

func GetDecoder

func GetDecoder() map[string]jsoniter.ValDecoder

func GetEncoder

func GetEncoder() map[string]jsoniter.ValEncoder

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Profile

type Profile struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProfileSpec   `json:"spec,omitempty"`
	Status            ProfileStatus `json:"status,omitempty"`
}

func (*Profile) DeepCopy

func (in *Profile) DeepCopy() *Profile

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

func (*Profile) DeepCopyInto

func (in *Profile) DeepCopyInto(out *Profile)

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

func (*Profile) DeepCopyObject

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

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

func (*Profile) SetupWebhookWithManager

func (r *Profile) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Profile) ValidateCreate

func (r *Profile) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Profile) ValidateDelete

func (r *Profile) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Profile) ValidateUpdate

func (r *Profile) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ProfileList

type ProfileList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Profile CRD objects
	Items []Profile `json:"items,omitempty"`
}

ProfileList is a list of Profiles

func (*ProfileList) DeepCopy

func (in *ProfileList) DeepCopy() *ProfileList

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

func (*ProfileList) DeepCopyInto

func (in *ProfileList) DeepCopyInto(out *ProfileList)

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

func (*ProfileList) DeepCopyObject

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

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

type ProfileSpec

type ProfileSpec struct {
	State *ProfileSpecResource `json:"state,omitempty" tf:"-"`

	Resource ProfileSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ProfileSpec) DeepCopy

func (in *ProfileSpec) DeepCopy() *ProfileSpec

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

func (*ProfileSpec) DeepCopyInto

func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec)

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

type ProfileSpecEventTypeFilters

type ProfileSpecEventTypeFilters struct {
	// Configuration of a custom event filter. Filters custom events by title or description. If both specified, the AND logic applies
	// +optional
	// +kubebuilder:validation:MinItems=1
	CustomEventFilter []ProfileSpecEventTypeFiltersCustomEventFilter `json:"customEventFilter,omitempty" tf:"custom_event_filter"`
	// Configuration of a custom event filter. Filters custom events by title or description. If both specified, the AND logic applies
	// +optional
	// +kubebuilder:validation:MinItems=1
	PredefinedEventFilter []ProfileSpecEventTypeFiltersPredefinedEventFilter `json:"predefinedEventFilter,omitempty" tf:"predefined_event_filter"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecEventTypeFilters) DeepCopy

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

func (*ProfileSpecEventTypeFilters) DeepCopyInto

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

type ProfileSpecEventTypeFiltersCustomEventFilter

type ProfileSpecEventTypeFiltersCustomEventFilter struct {
	// Configuration of a matching filter
	// +optional
	// +kubebuilder:validation:MinItems=1
	CustomDescriptionFilter []ProfileSpecEventTypeFiltersCustomEventFilterCustomDescriptionFilter `json:"customDescriptionFilter,omitempty" tf:"custom_description_filter"`
	// Configuration of a matching filter
	// +optional
	// +kubebuilder:validation:MinItems=1
	CustomTitleFilter []ProfileSpecEventTypeFiltersCustomEventFilterCustomTitleFilter `json:"customTitleFilter,omitempty" tf:"custom_title_filter"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecEventTypeFiltersCustomEventFilter) DeepCopy

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

func (*ProfileSpecEventTypeFiltersCustomEventFilter) DeepCopyInto

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

type ProfileSpecEventTypeFiltersCustomEventFilterCustomDescriptionFilter

type ProfileSpecEventTypeFiltersCustomEventFilterCustomDescriptionFilter struct {
	// The condition is case sensitive (`false`) or case insensitive (`true`).   If not set, then `false` is used, making the condition case sensitive
	// +optional
	CaseInsensitive *bool `json:"caseInsensitive,omitempty" tf:"case_insensitive"`
	// The filter is enabled (`true`) or disabled (`false`)
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// Reverses the comparison **operator**. For example it turns the **begins with** into **does not begin with**
	// +optional
	Negate *bool `json:"negate,omitempty" tf:"negate"`
	// Operator of the comparison.   You can reverse it by setting **negate** to `true`. Possible values are `BEGINS_WITH`, `CONTAINS`, `CONTAINS_REGEX`, `ENDS_WITH` and `EQUALS`
	Operator *string `json:"operator" tf:"operator"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
	// The value to compare to
	Value *string `json:"value" tf:"value"`
}

func (*ProfileSpecEventTypeFiltersCustomEventFilterCustomDescriptionFilter) DeepCopy

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

func (*ProfileSpecEventTypeFiltersCustomEventFilterCustomDescriptionFilter) DeepCopyInto

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

type ProfileSpecEventTypeFiltersCustomEventFilterCustomTitleFilter

type ProfileSpecEventTypeFiltersCustomEventFilterCustomTitleFilter struct {
	// The condition is case sensitive (`false`) or case insensitive (`true`).   If not set, then `false` is used, making the condition case sensitive
	// +optional
	CaseInsensitive *bool `json:"caseInsensitive,omitempty" tf:"case_insensitive"`
	// The filter is enabled (`true`) or disabled (`false`)
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// Reverses the comparison **operator**. For example it turns the **begins with** into **does not begin with**
	// +optional
	Negate *bool `json:"negate,omitempty" tf:"negate"`
	// Operator of the comparison.   You can reverse it by setting **negate** to `true`. Possible values are `BEGINS_WITH`, `CONTAINS`, `CONTAINS_REGEX`, `ENDS_WITH` and `EQUALS`
	Operator *string `json:"operator" tf:"operator"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
	// The value to compare to
	Value *string `json:"value" tf:"value"`
}

func (*ProfileSpecEventTypeFiltersCustomEventFilterCustomTitleFilter) DeepCopy

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

func (*ProfileSpecEventTypeFiltersCustomEventFilterCustomTitleFilter) DeepCopyInto

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

type ProfileSpecEventTypeFiltersPredefinedEventFilter

type ProfileSpecEventTypeFiltersPredefinedEventFilter struct {
	// The type of the predefined event. Possible values are `APPLICATION_ERROR_RATE_INCREASED`, `APPLICATION_SLOWDOWN`, `APPLICATION_UNEXPECTED_HIGH_LOAD`, `APPLICATION_UNEXPECTED_LOW_LOAD`, `AWS_LAMBDA_HIGH_ERROR_RATE`, `CUSTOM_APPLICATION_ERROR_RATE_INCREASED`, `CUSTOM_APPLICATION_SLOWDOWN`, `CUSTOM_APPLICATION_UNEXPECTED_HIGH_LOAD`, `CUSTOM_APPLICATION_UNEXPECTED_LOW_LOAD`, `CUSTOM_APP_CRASH_RATE_INCREASED`, `DATABASE_CONNECTION_FAILURE`, `DATA_CENTER_SERVICE_PERFORMANCE_DEGRADATION`, `DATA_CENTER_SERVICE_UNAVAILABLE`, `EBS_VOLUME_HIGH_LATENCY`, `EC2_HIGH_CPU`, `ELB_HIGH_BACKEND_ERROR_RATE`, `ENTERPRICE_APPLICATION_PERFORMANCE_DEGRADATION`, `ENTERPRISE_APPLICATION_UNAVAILABLE`, `ESXI_GUEST_ACTIVE_SWAP_WAIT`, `ESXI_GUEST_CPU_LIMIT_REACHED`, `ESXI_HOST_CPU_SATURATION`, `ESXI_HOST_DATASTORE_LOW_DISK_SPACE`, `ESXI_HOST_DISK_QUEUE_SLOW`, `ESXI_HOST_DISK_SLOW`, `ESXI_HOST_MEMORY_SATURATION`, `ESXI_HOST_NETWORK_PROBLEMS`, `ESXI_HOST_OVERLOADED_STORAGE`, `ESXI_VM_IMPACT_HOST_CPU_SATURATION`, `ESXI_VM_IMPACT_HOST_MEMORY_SATURATION`, `EXTERNAL_SYNTHETIC_TEST_OUTAGE`, `EXTERNAL_SYNTHETIC_TEST_SLOWDOWN`, `HOST_OF_SERVICE_UNAVAILABLE`, `HTTP_CHECK_GLOBAL_OUTAGE`, `HTTP_CHECK_LOCAL_OUTAGE`, `HTTP_CHECK_TEST_LOCATION_SLOWDOWN`, `MOBILE_APPLICATION_ERROR_RATE_INCREASED`, `MOBILE_APPLICATION_SLOWDOWN`, `MOBILE_APPLICATION_UNEXPECTED_HIGH_LOAD`, `MOBILE_APPLICATION_UNEXPECTED_LOW_LOAD`, `MOBILE_APP_CRASH_RATE_INCREASED`, `MONITORING_UNAVAILABLE`, `OSI_DISK_LOW_INODES`, `OSI_GRACEFULLY_SHUTDOWN`, `OSI_HIGH_CPU`, `OSI_HIGH_MEMORY`, `OSI_LOW_DISK_SPACE`, `OSI_NIC_DROPPED_PACKETS_HIGH`, `OSI_NIC_ERRORS_HIGH`, `OSI_NIC_UTILIZATION_HIGH`, `OSI_SLOW_DISK`, `OSI_UNEXPECTEDLY_UNAVAILABLE`, `PGI_OF_SERVICE_UNAVAILABLE`, `PGI_UNAVAILABLE`, `PG_LOW_INSTANCE_COUNT`, `PROCESS_CRASHED`, `PROCESS_HIGH_GC_ACTIVITY`, `PROCESS_MEMORY_RESOURCE_EXHAUSTED`, `PROCESS_NA_HIGH_CONN_FAIL_RATE`, `PROCESS_NA_HIGH_LOSS_RATE`, `PROCESS_THREADS_RESOURCE_EXHAUSTED`, `RDS_HIGH_CPU`, `RDS_HIGH_LATENCY`, `RDS_LOW_MEMORY`, `RDS_LOW_STORAGE_SPACE`, `RDS_OF_SERVICE_UNAVAILABLE`, `RDS_RESTART_SEQUENCE`, `SERVICE_ERROR_RATE_INCREASED`, `SERVICE_SLOWDOWN`, `SERVICE_UNEXPECTED_HIGH_LOAD`, `SERVICE_UNEXPECTED_LOW_LOAD`, `SYNTHETIC_GLOBAL_OUTAGE`, `SYNTHETIC_LOCAL_OUTAGE`, `SYNTHETIC_NODE_OUTAGE`, `SYNTHETIC_PRIVATE_LOCATION_OUTAGE` and `SYNTHETIC_TEST_LOCATION_SLOWDOWN`
	EventType *string `json:"eventType" tf:"event_type"`
	// The alert triggers when the problem of specified severity arises while the specified event **is** happening (`false`) or while the specified event is **not** happening (`true`).   For example, if you chose the Slowdown (`PERFORMANCE`) severity and Unexpected high traffic (`APPLICATION_UNEXPECTED_HIGH_LOAD`) event with **negate** set to `true`, the alerting profile will trigger only when the slowdown problem is raised while there is no unexpected high traffic event.  Consider the following use case as an example. The Slowdown (`PERFORMANCE`) severity rule is set. Depending on the configuration of the event filter (Unexpected high traffic (`APPLICATION_UNEXPECTED_HIGH_LOAD`) event is used as an example), the behavior of the alerting profile is one of the following:* **negate** is set to `false`: The alert triggers when the slowdown problem is raised while unexpected high traffic event is happening.  * **negate** is set to `true`: The alert triggers when the slowdown problem is raised while there is no unexpected high traffic event.  * no event rule is set: The alert triggers when the slowdown problem is raised, regardless of any events
	// +optional
	Negate *bool `json:"negate,omitempty" tf:"negate"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecEventTypeFiltersPredefinedEventFilter) DeepCopy

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

func (*ProfileSpecEventTypeFiltersPredefinedEventFilter) DeepCopyInto

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

type ProfileSpecMetadata

type ProfileSpecMetadata struct {
	// Dynatrace server version
	// +optional
	ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version"`
	// A Sorted list of the version numbers of the configuration
	// +optional
	ConfigurationVersions []int64 `json:"configurationVersions,omitempty" tf:"configuration_versions"`
	// A Sorted list of the version numbers of the configuration
	// +optional
	CurrentConfigurationVersions []string `json:"currentConfigurationVersions,omitempty" tf:"current_configuration_versions"`
}

func (*ProfileSpecMetadata) DeepCopy

func (in *ProfileSpecMetadata) DeepCopy() *ProfileSpecMetadata

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

func (*ProfileSpecMetadata) DeepCopyInto

func (in *ProfileSpecMetadata) DeepCopyInto(out *ProfileSpecMetadata)

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

type ProfileSpecMetadataCodec

type ProfileSpecMetadataCodec struct {
}

+k8s:deepcopy-gen=false

func (ProfileSpecMetadataCodec) Decode

func (ProfileSpecMetadataCodec) Encode

func (ProfileSpecMetadataCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)

func (ProfileSpecMetadataCodec) IsEmpty

type ProfileSpecResource

type ProfileSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of the alerting profile, displayed in the UI
	DisplayName *string `json:"displayName" tf:"display_name"`
	// The list of event filters.  For all filters that are *negated* inside of these event filters, that is all `Predefined` as well as `Custom` (Title and/or Description) ones the AND logic applies. For all *non-negated* ones the OR logic applies. Between these two groups, negated and non-negated, the AND logic applies.  If you specify both severity rule and event filter, the AND logic applies
	// +optional
	// +kubebuilder:validation:MinItems=1
	EventTypeFilters []ProfileSpecEventTypeFilters `json:"eventTypeFilters,omitempty" tf:"event_type_filters"`
	// `metadata` exists for backwards compatibility but shouldn't get specified anymore
	// +optional
	// Deprecated
	Metadata *ProfileSpecMetadata `json:"metadata,omitempty" tf:"metadata"`
	// The ID of the management zone to which the alerting profile applies
	// +optional
	MzID *string `json:"mzID,omitempty" tf:"mz_id"`
	// A list of rules for management zone usage.  Each rule is evaluated independently of all other rules
	// +optional
	// +kubebuilder:validation:MinItems=1
	Rules []ProfileSpecRules `json:"rules,omitempty" tf:"rules"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecResource) DeepCopy

func (in *ProfileSpecResource) DeepCopy() *ProfileSpecResource

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

func (*ProfileSpecResource) DeepCopyInto

func (in *ProfileSpecResource) DeepCopyInto(out *ProfileSpecResource)

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

type ProfileSpecRules

type ProfileSpecRules struct {
	// Send a notification if a problem remains open longer than *X* minutes
	DelayInMinutes *int64 `json:"delayInMinutes" tf:"delay_in_minutes"`
	// The severity level to trigger the alert. Possible values are `AVAILABILITY`,	`CUSTOM_ALERT`,	`ERROR`,`MONITORING_UNAVAILABLE`,`PERFORMANCE` and `RESOURCE_CONTENTION`.
	SeverityLevel *string `json:"severityLevel" tf:"severity_level"`
	// Configuration of the tag filtering of the alerting profile
	// +kubebuilder:validation:MinItems=1
	TagFilter []ProfileSpecRulesTagFilter `json:"tagFilter" tf:"tag_filter"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecRules) DeepCopy

func (in *ProfileSpecRules) DeepCopy() *ProfileSpecRules

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

func (*ProfileSpecRules) DeepCopyInto

func (in *ProfileSpecRules) DeepCopyInto(out *ProfileSpecRules)

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

type ProfileSpecRulesTagFilter

type ProfileSpecRulesTagFilter struct {
	// The filtering mode:  * `INCLUDE_ANY`: The rule applies to monitored entities that have at least one of the specified tags. You can specify up to 100 tags.  * `INCLUDE_ALL`: The rule applies to monitored entities that have **all** of the specified tags. You can specify up to 10 tags.  * `NONE`: The rule applies to all monitored entities
	IncludeMode *string `json:"includeMode" tf:"include_mode"`
	// A list of required tags
	// +optional
	// +kubebuilder:validation:MinItems=1
	TagFilters []ProfileSpecRulesTagFilterTagFilters `json:"tagFilters,omitempty" tf:"tag_filters"`
	// allows for configuring properties that are not explicitly supported by the current version of this provider
	// +optional
	Unknowns *string `json:"unknowns,omitempty" tf:"unknowns"`
}

func (*ProfileSpecRulesTagFilter) DeepCopy

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

func (*ProfileSpecRulesTagFilter) DeepCopyInto

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

type ProfileSpecRulesTagFilterTagFilters

type ProfileSpecRulesTagFilterTagFilters struct {
	// The origin of the tag, such as AWS or Cloud Foundry. Custom tags use the `CONTEXTLESS` value
	Context *string `json:"context" tf:"context"`
	// The key of the tag. Custom tags have the tag value here
	Key *string `json:"key" tf:"key"`
	// The value of the tag. Not applicable to custom tags
	// +optional
	Value *string `json:"value,omitempty" tf:"value"`
}

func (*ProfileSpecRulesTagFilterTagFilters) DeepCopy

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

func (*ProfileSpecRulesTagFilterTagFilters) DeepCopyInto

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

type ProfileStatus

type ProfileStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ProfileStatus) DeepCopy

func (in *ProfileStatus) DeepCopy() *ProfileStatus

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

func (*ProfileStatus) DeepCopyInto

func (in *ProfileStatus) DeepCopyInto(out *ProfileStatus)

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