Documentation
¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API.
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func PodMonitoringResource() metav1.GroupVersionResource
- func Resource(resource string) schema.GroupResource
- type AlertingSpec
- type AlertmanagerEndpoints
- type LabelMapping
- type MonitoringCondition
- type MonitoringConditionType
- type NamespacedConfigMapKeySelector
- type NamespacedSecretKeySelector
- type NamespacedSecretOrConfigMap
- type OperatorConfig
- type OperatorConfigList
- type PodMonitoring
- func (in *PodMonitoring) DeepCopy() *PodMonitoring
- func (in *PodMonitoring) DeepCopyInto(out *PodMonitoring)
- func (in *PodMonitoring) DeepCopyObject() runtime.Object
- func (pm *PodMonitoring) ScrapeConfigs() (res []*promconfig.ScrapeConfig, err error)
- func (pm *PodMonitoring) ValidateCreate() error
- func (pm *PodMonitoring) ValidateDelete() error
- func (pm *PodMonitoring) ValidateUpdate(old runtime.Object) error
- type PodMonitoringList
- type PodMonitoringSpec
- type PodMonitoringStatus
- type Rule
- type RuleEvaluatorSpec
- type RuleGroup
- type Rules
- type RulesList
- type RulesSpec
- type RulesStatus
- type SafeAuthorization
- type Scope
- type ScrapeEndpoint
- type TLSConfig
- type TargetLabels
Constants ¶
const EnvVarNodeName = "NODE_NAME"
Environment variable for the current node that needs to be interpolated in generated scrape configurations for a PodMonitoring resource.
const (
Version = "v1alpha1"
)
Variables ¶
var ( // SchemeBuilder initializes a scheme builder. SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme is a global function that registers this API group & version to a scheme. AddToScheme = SchemeBuilder.AddToScheme // SchemeGroupVersion is group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{Group: monitoring.GroupName, Version: Version} )
Functions ¶
func PodMonitoringResource ¶
func PodMonitoringResource() metav1.GroupVersionResource
PodMonitoringResource returns a PodMonitoring GroupVersionResource. This can be used to enforce API types.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource.
Types ¶
type AlertingSpec ¶ added in v0.0.9
type AlertingSpec struct {
// Alertmanagers contains endpoint configuration for designated Alertmanagers.
Alertmanagers []AlertmanagerEndpoints `json:"alertmanagers"`
}
AlertingSpec defines alerting configuration. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#alertingspec
func (*AlertingSpec) DeepCopy ¶ added in v0.0.9
func (in *AlertingSpec) DeepCopy() *AlertingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertingSpec.
func (*AlertingSpec) DeepCopyInto ¶ added in v0.0.9
func (in *AlertingSpec) DeepCopyInto(out *AlertingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlertmanagerEndpoints ¶ added in v0.0.9
type AlertmanagerEndpoints struct {
// Namespace of Endpoints object.
Namespace string `json:"namespace"`
// Name of Endpoints object in Namespace.
Name string `json:"name"`
// Port the Alertmanager API is exposed on.
Port intstr.IntOrString `json:"port"`
// Scheme to use when firing alerts.
Scheme string `json:"scheme,omitempty"`
// Prefix for the HTTP path alerts are pushed to.
PathPrefix string `json:"pathPrefix,omitempty"`
// TLS Config to use for alertmanager connection.
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// BearerTokenFile to read from filesystem to use when authenticating to
// Alertmanager.
BearerTokenFile string `json:"bearerTokenFile,omitempty"`
// Authorization section for this alertmanager endpoint
Authorization *SafeAuthorization `json:"authorization,omitempty"`
// Version of the Alertmanager API that rule-evaluator uses to send alerts. It
// can be "v1" or "v2".
APIVersion string `json:"apiVersion,omitempty"`
// Timeout is a per-target Alertmanager timeout when pushing alerts.
Timeout *string `json:"timeout,omitempty"`
}
AlertmanagerEndpoints defines a selection of a single Endpoints object containing alertmanager IPs to fire alerts against. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#alertmanagerendpoints
func (*AlertmanagerEndpoints) DeepCopy ¶ added in v0.0.9
func (in *AlertmanagerEndpoints) DeepCopy() *AlertmanagerEndpoints
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertmanagerEndpoints.
func (*AlertmanagerEndpoints) DeepCopyInto ¶ added in v0.0.9
func (in *AlertmanagerEndpoints) DeepCopyInto(out *AlertmanagerEndpoints)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LabelMapping ¶
type LabelMapping struct {
// Kubenetes resource label to remap.
From string `json:"from"`
// Remapped Prometheus target label.
// Defaults to the same name as `From`.
To string `json:"to,omitempty"`
}
LabelMapping specifies how to transfer a label from a Kubernetes resource onto a Prometheus target.
func (*LabelMapping) DeepCopy ¶
func (in *LabelMapping) DeepCopy() *LabelMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabelMapping.
func (*LabelMapping) DeepCopyInto ¶
func (in *LabelMapping) DeepCopyInto(out *LabelMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringCondition ¶
type MonitoringCondition struct {
Type MonitoringConditionType `json:"type"`
// Status of the condition, one of True, False, Unknown.
Status corev1.ConditionStatus `json:"status"`
// The last time this condition was updated.
// +optional
LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"`
// Last time the condition transitioned from one status to another.
// +optional
LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
// The reason for the condition's last transition.
// +optional
Reason string `json:"reason,omitempty"`
// A human-readable message indicating details about the transition.
// +optional
Message string `json:"message,omitempty"`
}
MonitoringCondition describes a condition of a PodMonitoring.
func NewDefaultConditions ¶
func NewDefaultConditions(now metav1.Time) []MonitoringCondition
NewDefaultConditions returns a list of default conditions for at the given time for a `PodMonitoringStatus` if never explicitly set.
func (*MonitoringCondition) DeepCopy ¶
func (in *MonitoringCondition) DeepCopy() *MonitoringCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringCondition.
func (*MonitoringCondition) DeepCopyInto ¶
func (in *MonitoringCondition) DeepCopyInto(out *MonitoringCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringConditionType ¶
type MonitoringConditionType string
MonitoringConditionType is the type of MonitoringCondition.
const ( // ConfigurationCreateSuccess indicates that the config generated from the // monitoring resource was created successfully. ConfigurationCreateSuccess MonitoringConditionType = "ConfigurationCreateSuccess" )
type NamespacedConfigMapKeySelector ¶ added in v0.0.9
type NamespacedConfigMapKeySelector struct {
v1.ConfigMapKeySelector `json:",inline"`
Namespace string `json:"namespace"`
}
NamespacedConfigMapKeySelector wraps the core ConfigMapKeySelector with namespace.
func (*NamespacedConfigMapKeySelector) DeepCopy ¶ added in v0.0.9
func (in *NamespacedConfigMapKeySelector) DeepCopy() *NamespacedConfigMapKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedConfigMapKeySelector.
func (*NamespacedConfigMapKeySelector) DeepCopyInto ¶ added in v0.0.9
func (in *NamespacedConfigMapKeySelector) DeepCopyInto(out *NamespacedConfigMapKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedSecretKeySelector ¶ added in v0.0.9
type NamespacedSecretKeySelector struct {
v1.SecretKeySelector `json:",inline"`
Namespace string `json:"namespace"`
}
NamespacedSecretKeySelector wraps the core SecretKeySelector with namespace.
func (*NamespacedSecretKeySelector) DeepCopy ¶ added in v0.0.9
func (in *NamespacedSecretKeySelector) DeepCopy() *NamespacedSecretKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedSecretKeySelector.
func (*NamespacedSecretKeySelector) DeepCopyInto ¶ added in v0.0.9
func (in *NamespacedSecretKeySelector) DeepCopyInto(out *NamespacedSecretKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedSecretOrConfigMap ¶ added in v0.0.9
type NamespacedSecretOrConfigMap struct {
// Secret containing data to use for the targets.
Secret *NamespacedSecretKeySelector `json:"secret,omitempty"`
// ConfigMap containing data to use for the targets.
ConfigMap *NamespacedConfigMapKeySelector `json:"configMap,omitempty"`
}
NamespacedSecretOrConfigMap allows to specify data as a Secret or ConfigMap. Fields are mutually exclusive. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#secretorconfigmap
func (*NamespacedSecretOrConfigMap) DeepCopy ¶ added in v0.0.9
func (in *NamespacedSecretOrConfigMap) DeepCopy() *NamespacedSecretOrConfigMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedSecretOrConfigMap.
func (*NamespacedSecretOrConfigMap) DeepCopyInto ¶ added in v0.0.9
func (in *NamespacedSecretOrConfigMap) DeepCopyInto(out *NamespacedSecretOrConfigMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperatorConfig ¶ added in v0.0.9
type OperatorConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Rules contains how the operator configures and deployes rule-evaluator.
Rules RuleEvaluatorSpec `json:"rules"`
}
OperatorConfig defines configuration of the gmp-operator. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OperatorConfig) DeepCopy ¶ added in v0.0.9
func (in *OperatorConfig) DeepCopy() *OperatorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorConfig.
func (*OperatorConfig) DeepCopyInto ¶ added in v0.0.9
func (in *OperatorConfig) DeepCopyInto(out *OperatorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OperatorConfig) DeepCopyObject ¶ added in v0.0.9
func (in *OperatorConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OperatorConfigList ¶ added in v0.0.9
type OperatorConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OperatorConfig `json:"items"`
}
OperatorConfigList is a list of OperatorConfigs. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OperatorConfigList) DeepCopy ¶ added in v0.0.9
func (in *OperatorConfigList) DeepCopy() *OperatorConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorConfigList.
func (*OperatorConfigList) DeepCopyInto ¶ added in v0.0.9
func (in *OperatorConfigList) DeepCopyInto(out *OperatorConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OperatorConfigList) DeepCopyObject ¶ added in v0.0.9
func (in *OperatorConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodMonitoring ¶
type PodMonitoring struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Specification of desired Pod selection for target discovery by
// Prometheus.
Spec PodMonitoringSpec `json:"spec"`
// Most recently observed status of the resource.
// +optional
Status PodMonitoringStatus `json:"status"`
}
PodMonitoring defines monitoring for a set of pods. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*PodMonitoring) DeepCopy ¶
func (in *PodMonitoring) DeepCopy() *PodMonitoring
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMonitoring.
func (*PodMonitoring) DeepCopyInto ¶
func (in *PodMonitoring) DeepCopyInto(out *PodMonitoring)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodMonitoring) DeepCopyObject ¶
func (in *PodMonitoring) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PodMonitoring) ScrapeConfigs ¶ added in v0.0.3
func (pm *PodMonitoring) ScrapeConfigs() (res []*promconfig.ScrapeConfig, err error)
func (*PodMonitoring) ValidateCreate ¶ added in v0.0.3
func (pm *PodMonitoring) ValidateCreate() error
func (*PodMonitoring) ValidateDelete ¶ added in v0.0.3
func (pm *PodMonitoring) ValidateDelete() error
func (*PodMonitoring) ValidateUpdate ¶ added in v0.0.3
func (pm *PodMonitoring) ValidateUpdate(old runtime.Object) error
type PodMonitoringList ¶
type PodMonitoringList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PodMonitoring `json:"items"`
}
PodMonitoringList is a list of PodMonitorings. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*PodMonitoringList) DeepCopy ¶
func (in *PodMonitoringList) DeepCopy() *PodMonitoringList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMonitoringList.
func (*PodMonitoringList) DeepCopyInto ¶
func (in *PodMonitoringList) DeepCopyInto(out *PodMonitoringList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodMonitoringList) DeepCopyObject ¶
func (in *PodMonitoringList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodMonitoringSpec ¶
type PodMonitoringSpec struct {
Selector metav1.LabelSelector `json:"selector"`
Endpoints []ScrapeEndpoint `json:"endpoints"`
TargetLabels TargetLabels `json:"targetLabels,omitempty"`
}
PodMonitoringSpec contains specification parameters for PodMonitoring.
func (*PodMonitoringSpec) DeepCopy ¶
func (in *PodMonitoringSpec) DeepCopy() *PodMonitoringSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMonitoringSpec.
func (*PodMonitoringSpec) DeepCopyInto ¶
func (in *PodMonitoringSpec) DeepCopyInto(out *PodMonitoringSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodMonitoringStatus ¶
type PodMonitoringStatus struct {
// The generation observed by the controller.
// +optional
ObservedGeneration int64 `json:"observedGeneration"`
// Represents the latest available observations of a podmonitor's current state.
Conditions []MonitoringCondition `json:"conditions,omitempty"`
}
PodMonitoringStatus holds status information of a PodMonitoring resource.
func (*PodMonitoringStatus) DeepCopy ¶
func (in *PodMonitoringStatus) DeepCopy() *PodMonitoringStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodMonitoringStatus.
func (*PodMonitoringStatus) DeepCopyInto ¶
func (in *PodMonitoringStatus) DeepCopyInto(out *PodMonitoringStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rule ¶ added in v0.0.1
type Rule struct {
Record string `json:"record"`
Alert string `json:"alert"`
Expr string `json:"expr"`
For string `json:"for"`
Labels map[string]string `json:"labels"`
Annotations map[string]string `json:"annotations"`
}
Rule is a single rule in the Prometheus format: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/
func (*Rule) DeepCopy ¶ added in v0.0.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.
func (*Rule) DeepCopyInto ¶ added in v0.0.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuleEvaluatorSpec ¶ added in v0.0.9
type RuleEvaluatorSpec struct {
// Alerting contains how the rule-evaluator configures alerting.
Alerting AlertingSpec `json:"alerting"`
}
RuleEvaluatorSpec defines configuration for deploying rule-evaluator.
func (*RuleEvaluatorSpec) DeepCopy ¶ added in v0.0.9
func (in *RuleEvaluatorSpec) DeepCopy() *RuleEvaluatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleEvaluatorSpec.
func (*RuleEvaluatorSpec) DeepCopyInto ¶ added in v0.0.9
func (in *RuleEvaluatorSpec) DeepCopyInto(out *RuleEvaluatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuleGroup ¶ added in v0.0.1
type RuleGroup struct {
Name string `json:"name"`
Interval string `json:"interval"`
Rules []Rule `json:"rules"`
}
RuleGroup declares rules in the Prometheus format: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/
func (*RuleGroup) DeepCopy ¶ added in v0.0.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleGroup.
func (*RuleGroup) DeepCopyInto ¶ added in v0.0.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rules ¶ added in v0.0.1
type Rules struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Specification of desired Pod selection for target discovery by
// Prometheus.
Spec RulesSpec `json:"spec"`
// Most recently observed status of the resource.
// +optional
Status RulesStatus `json:"status"`
}
Rules defines Prometheus alerting and recording rules. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Rules) DeepCopy ¶ added in v0.0.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rules.
func (*Rules) DeepCopyInto ¶ added in v0.0.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Rules) DeepCopyObject ¶ added in v0.0.1
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RulesList ¶ added in v0.0.1
type RulesList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Rules `json:"items"`
}
RulesList is a list of Rules. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*RulesList) DeepCopy ¶ added in v0.0.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RulesList.
func (*RulesList) DeepCopyInto ¶ added in v0.0.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RulesList) DeepCopyObject ¶ added in v0.0.1
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RulesSpec ¶ added in v0.0.1
RulesSpec contains specification parameters for a Rules resource.
func (*RulesSpec) DeepCopy ¶ added in v0.0.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RulesSpec.
func (*RulesSpec) DeepCopyInto ¶ added in v0.0.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RulesStatus ¶ added in v0.0.1
type RulesStatus struct {
}
RulesStatus contains status information for a Rules resource.
func (*RulesStatus) DeepCopy ¶ added in v0.0.1
func (in *RulesStatus) DeepCopy() *RulesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RulesStatus.
func (*RulesStatus) DeepCopyInto ¶ added in v0.0.1
func (in *RulesStatus) DeepCopyInto(out *RulesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SafeAuthorization ¶ added in v0.0.9
type SafeAuthorization struct {
// Set the authentication type. Defaults to Bearer, Basic will cause an
// error
Type string `json:"type,omitempty"`
// The secret's key that contains the credentials of the request
Credentials *NamespacedSecretKeySelector `json:"credentials,omitempty"`
}
SafeAuthorization specifies a subset of the Authorization struct, that is safe for use in Endpoints (no CredentialsFile field). Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#safeauthorization
func (*SafeAuthorization) DeepCopy ¶ added in v0.0.9
func (in *SafeAuthorization) DeepCopy() *SafeAuthorization
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SafeAuthorization.
func (*SafeAuthorization) DeepCopyInto ¶ added in v0.0.9
func (in *SafeAuthorization) DeepCopyInto(out *SafeAuthorization)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Scope ¶ added in v0.0.1
type Scope string
Scope of metric data a set of rules applies to.
The valid scopes. Currently only cluster and namespace are supported, i.e. rules only select over data for a given cluster or namespace. Support for rules processing over an entire project or even across projects may be added once uses cases have been identified more clearly.
type ScrapeEndpoint ¶
type ScrapeEndpoint struct {
// Name or number of the port to scrape.
Port intstr.IntOrString `json:"port,omitempty"`
// HTTP path to scrape metrics from. Defaults to "/metrics".
Path string `json:"path,omitempty"`
// Interval at which to scrape metrics. Must be a valid Prometheus duration.
Interval string `json:"interval,omitempty"`
// Timeout for metrics scrapes. Must be a valid Prometheus duration.
Timeout string `json:"timeout,omitempty"`
}
ScrapeEndpoint specifies a Prometheus metrics endpoint to scrape.
func (*ScrapeEndpoint) DeepCopy ¶
func (in *ScrapeEndpoint) DeepCopy() *ScrapeEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScrapeEndpoint.
func (*ScrapeEndpoint) DeepCopyInto ¶
func (in *ScrapeEndpoint) DeepCopyInto(out *ScrapeEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶ added in v0.0.9
type TLSConfig struct {
// Struct containing the CA cert to use for the targets.
CA NamespacedSecretOrConfigMap `json:"ca,omitempty"`
// Struct containing the client cert file for the targets.
Cert NamespacedSecretOrConfigMap `json:"cert,omitempty"`
// Secret containing the client key file for the targets.
KeySecret *NamespacedSecretKeySelector `json:"keySecret,omitempty"`
// Used to verify the hostname for the targets.
ServerName string `json:"serverName,omitempty"`
// Disable target certificate validation.
InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"`
}
SafeTLSConfig specifies TLS configuration parameters from Kubernetes resources. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#safetlsconfig
func (*TLSConfig) DeepCopy ¶ added in v0.0.9
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v0.0.9
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetLabels ¶
type TargetLabels struct {
// Labels to transfer from the Kubernetes Pod to Prometheus target labels.
// In the case of a label mapping conflict:
// - Mappings at the end of the array take precedence.
FromPod []LabelMapping `json:"fromPod,omitempty"`
}
TargetLabels groups label mappings by Kubernetes resource.
func (*TargetLabels) DeepCopy ¶
func (in *TargetLabels) DeepCopy() *TargetLabels
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetLabels.
func (*TargetLabels) DeepCopyInto ¶
func (in *TargetLabels) DeepCopyInto(out *TargetLabels)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.