Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the endpointmonitor v1alpha1 API group +kubebuilder:object:generate=true +groupName=endpointmonitor.stakater.com
Index ¶
- Variables
- type AppInsightsConfig
- type EndpointMonitor
- type EndpointMonitorList
- type EndpointMonitorSpec
- type EndpointMonitorStatus
- type GCloudConfig
- type GrafanaConfig
- type IngressURLSource
- type PingdomConfig
- type PingdomStep
- type PingdomTransactionConfig
- type RouteURLSource
- type StatusCakeConfig
- type URLSource
- type UpdownConfig
- type UptimeConfig
- type UptimeRobotConfig
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "endpointmonitor.stakater.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AppInsightsConfig ¶
type AppInsightsConfig struct {
// Returned status code that is counted as a success
// +optional
StatusCode int `json:"statusCode,omitempty"`
// If its `true`, falied test will be retry after a short interval. Possible values: `true, false`
// +optional
RetryEnable bool `json:"retryEnable,omitempty"`
// Sets how often the test should run from each test location. Possible values: `300,600,900` seconds
// +optional
Frequency int `json:"frequency,omitempty"`
}
AppInsightsConfig defines the configuration for AppInsights Monitor Provider
func (*AppInsightsConfig) DeepCopy ¶
func (in *AppInsightsConfig) DeepCopy() *AppInsightsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppInsightsConfig.
func (*AppInsightsConfig) DeepCopyInto ¶
func (in *AppInsightsConfig) DeepCopyInto(out *AppInsightsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointMonitor ¶
type EndpointMonitor struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EndpointMonitorSpec `json:"spec,omitempty"`
Status EndpointMonitorStatus `json:"status,omitempty"`
}
EndpointMonitor is the Schema for the endpointmonitors API
func (*EndpointMonitor) DeepCopy ¶
func (in *EndpointMonitor) DeepCopy() *EndpointMonitor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMonitor.
func (*EndpointMonitor) DeepCopyInto ¶
func (in *EndpointMonitor) DeepCopyInto(out *EndpointMonitor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointMonitor) DeepCopyObject ¶
func (in *EndpointMonitor) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EndpointMonitorList ¶
type EndpointMonitorList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EndpointMonitor `json:"items"`
}
EndpointMonitorList contains a list of EndpointMonitor
func (*EndpointMonitorList) DeepCopy ¶
func (in *EndpointMonitorList) DeepCopy() *EndpointMonitorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMonitorList.
func (*EndpointMonitorList) DeepCopyInto ¶
func (in *EndpointMonitorList) DeepCopyInto(out *EndpointMonitorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointMonitorList) DeepCopyObject ¶
func (in *EndpointMonitorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EndpointMonitorSpec ¶
type EndpointMonitorSpec struct {
// URL to monitor
URL string `json:"url,omitempty"`
// Force monitor endpoint to use HTTPS
// +optional
ForceHTTPS bool `json:"forceHttps,omitempty"`
// +optional
HealthEndpoint string `json:"healthEndpoint,omitempty"`
// Comma separated list of providers
// +optional
Providers string `json:"providers"`
// URL to monitor from either an ingress or route reference
// +optional
URLFrom *URLSource `json:"urlFrom,omitempty"`
// Configuration for UptimeRobot Monitor Provider
// +optional
UptimeRobotConfig *UptimeRobotConfig `json:"uptimeRobotConfig,omitempty"`
// Configuration for Uptime Monitor Provider
// +optional
UptimeConfig *UptimeConfig `json:"uptimeConfig,omitempty"`
// Configuration for Updown Monitor Provider
// +optional
UpdownConfig *UpdownConfig `json:"updownConfig,omitempty"`
// Configuration for StatusCake Monitor Provider
// +optional
StatusCakeConfig *StatusCakeConfig `json:"statusCakeConfig,omitempty"`
// Configuration for Pingdom Monitor Provider
// +optional
PingdomConfig *PingdomConfig `json:"pingdomConfig,omitempty"`
// Configuration for Pingdom Transaction Monitor Provider
// +optional
PingdomTransactionConfig *PingdomTransactionConfig `json:"pingdomTransactionConfig,omitempty"`
// Configuration for AppInsights Monitor Provider
// +optional
AppInsightsConfig *AppInsightsConfig `json:"appInsightsConfig,omitempty"`
// Configuration for Google Cloud Monitor Provider
// +optional
GCloudConfig *GCloudConfig `json:"gcloudConfig,omitempty"`
// Configuration for Grafana Cloud Monitor Provider
// +optional
GrafanaConfig *GrafanaConfig `json:"grafanaConfig,omitempty"`
}
EndpointMonitorSpec defines the desired state of EndpointMonitor
func (*EndpointMonitorSpec) DeepCopy ¶
func (in *EndpointMonitorSpec) DeepCopy() *EndpointMonitorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMonitorSpec.
func (*EndpointMonitorSpec) DeepCopyInto ¶
func (in *EndpointMonitorSpec) DeepCopyInto(out *EndpointMonitorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointMonitorStatus ¶
type EndpointMonitorStatus struct {
}
EndpointMonitorStatus defines the observed state of EndpointMonitor
func (*EndpointMonitorStatus) DeepCopy ¶
func (in *EndpointMonitorStatus) DeepCopy() *EndpointMonitorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMonitorStatus.
func (*EndpointMonitorStatus) DeepCopyInto ¶
func (in *EndpointMonitorStatus) DeepCopyInto(out *EndpointMonitorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GCloudConfig ¶
type GCloudConfig struct {
// Google Cloud Project ID
// +optional
ProjectId string `json:"projectId,omitempty"`
}
GCloudConfiguration defines the configuration for Google Cloud Monitor Provider
func (*GCloudConfig) DeepCopy ¶
func (in *GCloudConfig) DeepCopy() *GCloudConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCloudConfig.
func (*GCloudConfig) DeepCopyInto ¶
func (in *GCloudConfig) DeepCopyInto(out *GCloudConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaConfig ¶ added in v2.1.42
type GrafanaConfig struct {
TenantId int64 `json:"tenantId,omitempty"`
// The frequency value specifies how often the check runs in milliseconds
Frequency int64 `json:"frequency,omitempty"`
// Probes are the monitoring agents responsible for simulating user interactions with your web applications
// or services. These agents periodically send requests to predefined URLs and record the responses,
// checking for expected outcomes and measuring performance.
Probes []string `json:"probes,omitempty"`
// The alertSensitivity value defaults to none if there are no alerts or can be set to low, medium,
// or high to correspond to the check alert levels.
// +kubebuilder:validation:Enum=none;low;medium;high
// +kubebuilder:default=none
AlertSensitivity string `json:"alertSensitivity,omitempty"`
}
GrafnaConfiguration defines the configuration for Grafana Cloud Monitor Provider
func (*GrafanaConfig) DeepCopy ¶ added in v2.1.42
func (in *GrafanaConfig) DeepCopy() *GrafanaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaConfig.
func (*GrafanaConfig) DeepCopyInto ¶ added in v2.1.42
func (in *GrafanaConfig) DeepCopyInto(out *GrafanaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressURLSource ¶
type IngressURLSource struct {
Name string `json:"name"`
}
IngressURLSource selects an Ingress to populate the URL with
func (*IngressURLSource) DeepCopy ¶
func (in *IngressURLSource) DeepCopy() *IngressURLSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressURLSource.
func (*IngressURLSource) DeepCopyInto ¶
func (in *IngressURLSource) DeepCopyInto(out *IngressURLSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PingdomConfig ¶
type PingdomConfig struct {
// The pingdom check interval in minutes
// +optional
Resolution int `json:"resolution,omitempty"`
// How many failed check attempts before notifying
// +optional
SendNotificationWhenDown int `json:"sendNotificationWhenDown,omitempty"`
// Set to "true" to pause checks
// +optional
Paused bool `json:"paused,omitempty"`
// Set to "false" to disable recovery notifications
// +optional
NotifyWhenBackUp bool `json:"notifyWhenBackUp,omitempty"`
// Custom request headers
// +optional
RequestHeaders string `json:"requestHeaders,omitempty"`
// Custom request headers that should be read from an environment variable as it possibly contains sensitive data.
// An example would be an API token.
// +optional
RequestHeadersEnvVar string `json:"requestHeadersEnvVar,omitempty"`
// Required for basic-authentication
// +optional
BasicAuthUser string `json:"basicAuthUser,omitempty"`
// Set to text string that has to be present in the HTML code of the page
// +optional
ShouldContain string `json:"shouldContain,omitempty"`
// Comma separated set of tags to apply to check (e.g. "testing,aws")
// +optional
Tags string `json:"tags,omitempty"`
// `-` separated set list of integrations ids (e.g. "91166-12168")
// +optional
AlertIntegrations string `json:"alertIntegrations,omitempty"`
// `-` separated contact id's (e.g. "1234567_8_9-9876543_2_1")
// +optional
AlertContacts string `json:"alertContacts,omitempty"`
// `-` separated team id's (e.g. "1234567_8_9-9876543_2_1")
// +optional
TeamAlertContacts string `json:"teamAlertContacts,omitempty"`
// Monitor SSL/TLS certificate
// Monitor the validity of your SSL/TLS certificate. With this enabled Uptime checks will be considered DOWN when
// the certificate becomes invalid or expires.
// SSL/TLS certificate monitoring is available for HTTP checks.
// +optional
VerifyCertificate bool `json:"verifyCertificate,omitempty"`
// Consider down prior to certificate expiring
// Select the number of days prior to your certificate expiry date that you want to consider the check down.
// At this day your check will be considered down and if applicable a down alert will be sent.
// +optional
SSLDownDaysBefore int `json:"sslDownDaysBefore,omitempty"`
// Data that should be posted to the web page, for example submission data for a sign-up or login form.
// The data needs to be formatted in the same way as a web browser would send it to the web server.
// Because post data contains sensitive secret this field is only a reference to an environment variable.
// +optional
PostDataEnvVar string `json:"postDataEnvVar,omitempty"`
}
PingdomConfig defines the configuration for Pingdom Monitor Provider
func (*PingdomConfig) DeepCopy ¶
func (in *PingdomConfig) DeepCopy() *PingdomConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PingdomConfig.
func (*PingdomConfig) DeepCopyInto ¶
func (in *PingdomConfig) DeepCopyInto(out *PingdomConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PingdomStep ¶ added in v2.1.60
type PingdomStep struct {
// contains the html element with assigned value
// the key element is always lowercase for example {"url": "https://www.pingdom.com"}
// see available values at https://pkg.go.dev/github.com/karlderkaefer/pingdom-golang-client@latest/pkg/pingdom/client/tmschecks#StepArg
// +required
Args map[string]string `json:"args"`
// contains the function that is executed as part of the step
// commands: go_to, click, fill, check, uncheck, sleep, select_radio, basic_auth, submit, wait_for_element, wait_for_contains
// validations: url, exists, not_exists, contains, not_contains, field_contains, field_not_contains, is_checked, is_not_checked, radio_selected, dropdown_selected, dropdown_not_selected
// see updated list https://docs.pingdom.com/api/#section/TMS-Steps-Vocabulary/Script-transaction-checks
// +required
Function string `json:"function"`
}
PingdomStep respresents a step of the script to run a transcaction check
func (*PingdomStep) DeepCopy ¶ added in v2.1.60
func (in *PingdomStep) DeepCopy() *PingdomStep
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PingdomStep.
func (*PingdomStep) DeepCopyInto ¶ added in v2.1.60
func (in *PingdomStep) DeepCopyInto(out *PingdomStep)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PingdomTransactionConfig ¶ added in v2.1.60
type PingdomTransactionConfig struct {
// Check status: active or inactive
// +optional
Paused bool `json:"paused,omitempty"`
// Custom message that is part of the email and webhook alerts
// +optional
CustomMessage string `json:"custom_message,omitempty"`
// TMS test intervals in minutes. Allowed intervals: 5,10,20,60,720,1440. The interval you're allowed to set may vary depending on your current plan.
// +optional
// +kubebuilder:validation:Enum=5;10;20;60;720;1440
Interval int `json:"interval,omitempty"`
// Name of the region where the check is executed. Supported regions: us-east, us-west, eu, au
// +optional
// +kubebuilder:validation:Enum=us-east;us-west;eu;au
Region string `json:"region,omitempty"`
// Send notification when down X times
SendNotificationWhenDown int64 `json:"send_notification_when_down,omitempty"`
// Check importance- how important are the alerts when the check fails. Allowed values: low, high
// +optional
// +kubebuilder:validation:Enum=low;high
SeverityLevel string `json:"severity_level,omitempty"`
// steps to be executed as part of the check
// +required
Steps []PingdomStep `json:"steps"`
// List of tags for a check. The tag name may contain the characters 'A-Z', 'a-z', '0-9', '_' and '-'. The maximum length of a tag is 64 characters.
Tags []string `json:"tags,omitempty"`
// `-` separated set list of integrations ids (e.g. "91166-12168")
// +optional
AlertIntegrations string `json:"alertIntegrations,omitempty"`
// `-` separated contact id's (e.g. "1234567_8_9-9876543_2_1")
// +optional
AlertContacts string `json:"alertContacts,omitempty"`
// `-` separated team id's (e.g. "1234567_8_9-9876543_2_1")
// +optional
TeamAlertContacts string `json:"teamAlertContacts,omitempty"`
}
PingdomTransactionConfig defines the configuration for Pingdom Transaction Monitor Provider
func (*PingdomTransactionConfig) DeepCopy ¶ added in v2.1.60
func (in *PingdomTransactionConfig) DeepCopy() *PingdomTransactionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PingdomTransactionConfig.
func (*PingdomTransactionConfig) DeepCopyInto ¶ added in v2.1.60
func (in *PingdomTransactionConfig) DeepCopyInto(out *PingdomTransactionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteURLSource ¶
type RouteURLSource struct {
Name string `json:"name"`
}
RouteURLSource selects a Route to populate the URL with
func (*RouteURLSource) DeepCopy ¶
func (in *RouteURLSource) DeepCopy() *RouteURLSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteURLSource.
func (*RouteURLSource) DeepCopyInto ¶
func (in *RouteURLSource) DeepCopyInto(out *RouteURLSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusCakeConfig ¶
type StatusCakeConfig struct {
// Basic Auth User
// +optional
BasicAuthUser string `json:"basicAuthUser,omitempty"`
// Basic Auth Secret Name
// +optional
BasicAuthSecret string `json:"basicAuthSecret,omitempty"`
// Set Check Rate for the monitor
// +optional
CheckRate int `json:"checkRate,omitempty"`
// Set Test type - HTTP, TCP, PING
// +optional
TestType string `json:"testType,omitempty"`
// Pause the service
// +optional
Paused bool `json:"paused,omitempty"`
// Webhook for alerts
// +optional
PingURL string `json:"pingUrl,omitempty"`
// Enable ingress redirects
// +optional
FollowRedirect bool `json:"followRedirect,omitempty"`
// TCP Port
// +optional
Port int `json:"port,omitempty"`
// Minutes to wait before sending an alert
// +optional
TriggerRate int `json:"triggerRate,omitempty"`
// Contact Group to be alerted.
// +optional
ContactGroup string `json:"contactGroup,omitempty"`
// Comma separated list of tags
// +optional
TestTags string `json:"testTags,omitempty"`
// Comma separated list of Node Location IDs
// +optional
Regions string `json:"regions,omitempty"`
// Comma separated list of HTTP codes to trigger error on
// +optional
StatusCodes string `json:"statusCodes,omitempty"`
// Confirmation value ranges from (0,10)
// +kubebuilder:validation:Maximum=10
// +kubebuilder:validation:Minimum=0
// +optional
Confirmation int `json:"confirmation,omitempty"`
// Enable SSL Alert
// +optional
EnableSSLAlert bool `json:"enableSslAlert,omitempty"`
// Enable Real Browser
// +optional
RealBrowser bool `json:"realBrowser,omitempty"`
// String to look for within the response. Considered down if not found
// +optional
FindString string `json:"findString,omitempty"`
// RawPostData can be used to send parameters within the URL. Changes the request from a GET to a POST
// +optional
RawPostData string `json:"rawPostData,omitempty"`
// UserAgent is used to set a user agent string.
// +optional
UserAgent string `json:"userAgent,omitempty"`
}
StatusCakeConfig defines the configuration for StatusCake Monitor Provider
func (*StatusCakeConfig) DeepCopy ¶
func (in *StatusCakeConfig) DeepCopy() *StatusCakeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCakeConfig.
func (*StatusCakeConfig) DeepCopyInto ¶
func (in *StatusCakeConfig) DeepCopyInto(out *StatusCakeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type URLSource ¶
type URLSource struct {
// +optional
IngressRef *IngressURLSource `json:"ingressRef,omitempty"`
// +optional
RouteRef *RouteURLSource `json:"routeRef,omitempty"`
}
URLSource represents the set of resources to fetch the URL from
func (*URLSource) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLSource.
func (*URLSource) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpdownConfig ¶
type UpdownConfig struct {
// Enable or disable checks
// +optional
Enable bool `json:"enable,omitempty"`
// The pingdom check interval in seconds
// +optional
Period int `json:"period,omitempty"`
// Make status page public or not
// +optional
PublishPage bool `json:"publishPage,omitempty"`
// Additional request headers for API calls
// +optional
RequestHeaders string `json:"requestHeaders,omitempty"`
}
UpdownConfig defines the configuration for Updown Monitor Provider
func (*UpdownConfig) DeepCopy ¶
func (in *UpdownConfig) DeepCopy() *UpdownConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdownConfig.
func (*UpdownConfig) DeepCopyInto ¶
func (in *UpdownConfig) DeepCopyInto(out *UpdownConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeConfig ¶
type UptimeConfig struct {
// The uptime check interval in seconds
// +optional
Interval int `json:"interval,omitempty"`
// The uptime check type that can be HTTP/DNS/ICMP etc.
// +optional
CheckType string `json:"checkType,omitempty"`
// Add one or more contact groups separated by `,`
// +optional
Contacts string `json:"contacts,omitempty"`
// Add different locations for the check
// +optional
Locations string `json:"locations,omitempty"`
// Add one or more tags for the check separated by `,`
// +optional
Tags string `json:"tags,omitempty"`
}
UptimeConfig defines the configuration for Uptime Monitor Provider
func (*UptimeConfig) DeepCopy ¶
func (in *UptimeConfig) DeepCopy() *UptimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeConfig.
func (*UptimeConfig) DeepCopyInto ¶
func (in *UptimeConfig) DeepCopyInto(out *UptimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeRobotConfig ¶
type UptimeRobotConfig struct {
// The uptimerobot alertContacts to be associated with this monitor
// +optional
AlertContacts string `json:"alertContacts,omitempty"`
// The uptimerobot check interval in seconds
// +kubebuilder:validation:Minimum=60
// +optional
Interval int `json:"interval,omitempty"`
// Specify maintenanceWindows i.e. once or recurring “do-not-monitor periods”
// +optional
MaintenanceWindows string `json:"maintenanceWindows,omitempty"`
// The uptimerobot monitor type (http or keyword)
// +kubebuilder:validation:Enum=http;keyword
// +optional
MonitorType string `json:"monitorType,omitempty"`
// Alert if value exist (yes) or doesn't exist (no) (Only if monitor-type is keyword)
// +kubebuilder:validation:Enum=yes;no
// +optional
KeywordExists string `json:"keywordExists,omitempty"`
// keyword to check on URL (e.g.'search' or '404') (Only if monitor-type is keyword)
// +optional
KeywordValue string `json:"keywordValue,omitempty"`
// The uptimerobot public status page ID to add this monitor to
// +optional
StatusPages string `json:"statusPages,omitempty"`
// Defines which http status codes are treated as up or down
// For ex: 200:0_401:1_503:1 (to accept 200 as down and 401 and 503 as up)
CustomHTTPStatuses string `json:"customHTTPStatuses,omitempty"`
}
UptimeRobotConfig defines the configuration for UptimeRobot Monitor Provider
func (*UptimeRobotConfig) DeepCopy ¶
func (in *UptimeRobotConfig) DeepCopy() *UptimeRobotConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeRobotConfig.
func (*UptimeRobotConfig) DeepCopyInto ¶
func (in *UptimeRobotConfig) DeepCopyInto(out *UptimeRobotConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.