Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the parca v1alpha1 API group +kubebuilder:object:generate=true +groupName=parca.ricoberger.de
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "parca.ricoberger.de", 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 Duration ¶
type Duration string
Duration is a valid time duration that can be parsed by Prometheus model.ParseDuration() function. Supported units: y, w, d, h, m, s, ms Examples: `30s`, `1m`, `1h20m15s`, `15d` +kubebuilder:validation:Pattern:="^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$"
type LabelName ¶
type LabelName string
LabelName is a valid Prometheus label name which may only contain ASCII letters, numbers, as well as underscores. +kubebuilder:validation:Pattern:="^[a-zA-Z_][a-zA-Z0-9_]*$"
type ParcaScrapeConfig ¶
type ParcaScrapeConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ParcaScrapeConfigSpec `json:"spec,omitempty"` Status ParcaScrapeConfigStatus `json:"status,omitempty"` }
ParcaScrapeConfig is the Schema for the parcascrapeconfigs API
func (*ParcaScrapeConfig) DeepCopy ¶
func (in *ParcaScrapeConfig) DeepCopy() *ParcaScrapeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParcaScrapeConfig.
func (*ParcaScrapeConfig) DeepCopyInto ¶
func (in *ParcaScrapeConfig) DeepCopyInto(out *ParcaScrapeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ParcaScrapeConfig) DeepCopyObject ¶
func (in *ParcaScrapeConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ParcaScrapeConfigList ¶
type ParcaScrapeConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ParcaScrapeConfig `json:"items"` }
ParcaScrapeConfigList contains a list of ParcaScrapeConfig
func (*ParcaScrapeConfigList) DeepCopy ¶
func (in *ParcaScrapeConfigList) DeepCopy() *ParcaScrapeConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParcaScrapeConfigList.
func (*ParcaScrapeConfigList) DeepCopyInto ¶
func (in *ParcaScrapeConfigList) DeepCopyInto(out *ParcaScrapeConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ParcaScrapeConfigList) DeepCopyObject ¶
func (in *ParcaScrapeConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ParcaScrapeConfigSpec ¶
type ParcaScrapeConfigSpec struct { // selector is the selector for the Pods which should be scraped by Parca. Selector metav1.LabelSelector `json:"selector"` // port is the port of the targets which is used to expose the HTTP endpoints. Port int32 `json:"port,omitempty"` // scrapeConfig is the scrape configuration as it can be set in the Parca configuration. ScrapeConfig ScrapeConfig `json:"scrapeConfig,omitempty"` }
ParcaScrapeConfigSpec defines the desired state of ParcaScrapeConfig
func (*ParcaScrapeConfigSpec) DeepCopy ¶
func (in *ParcaScrapeConfigSpec) DeepCopy() *ParcaScrapeConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParcaScrapeConfigSpec.
func (*ParcaScrapeConfigSpec) DeepCopyInto ¶
func (in *ParcaScrapeConfigSpec) DeepCopyInto(out *ParcaScrapeConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ParcaScrapeConfigStatus ¶
type ParcaScrapeConfigStatus struct { PodIPs []string `json:"podIPs,omitempty"` Conditions []metav1.Condition `json:"conditions,omitempty"` }
ParcaScrapeConfigStatus defines the observed state of ParcaScrapeConfig
func (*ParcaScrapeConfigStatus) DeepCopy ¶
func (in *ParcaScrapeConfigStatus) DeepCopy() *ParcaScrapeConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParcaScrapeConfigStatus.
func (*ParcaScrapeConfigStatus) DeepCopyInto ¶
func (in *ParcaScrapeConfigStatus) DeepCopyInto(out *ParcaScrapeConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PprofConfig ¶
type PprofConfig map[string]*PprofProfilingConfig
func (PprofConfig) DeepCopy ¶
func (in PprofConfig) DeepCopy() PprofConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PprofConfig.
func (PprofConfig) DeepCopyInto ¶
func (in PprofConfig) DeepCopyInto(out *PprofConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PprofProfilingConfig ¶
type PprofProfilingConfig struct { Enabled *bool `json:"enabled,omitempty"` Path string `json:"path,omitempty"` Delta bool `json:"delta,omitempty"` }
func (*PprofProfilingConfig) DeepCopy ¶
func (in *PprofProfilingConfig) DeepCopy() *PprofProfilingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PprofProfilingConfig.
func (*PprofProfilingConfig) DeepCopyInto ¶
func (in *PprofProfilingConfig) DeepCopyInto(out *PprofProfilingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProfilingConfig ¶
type ProfilingConfig struct { PprofConfig PprofConfig `json:"pprof_config,omitempty"` PprofPrefix string `json:"path_prefix,omitempty"` }
func (*ProfilingConfig) DeepCopy ¶
func (in *ProfilingConfig) DeepCopy() *ProfilingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfilingConfig.
func (*ProfilingConfig) DeepCopyInto ¶
func (in *ProfilingConfig) DeepCopyInto(out *ProfilingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RelabelConfig ¶
type RelabelConfig struct { // The source labels select values from existing labels. Their content is concatenated using the configured // Separator and matched against the configured regular expression. // // +optional SourceLabels []LabelName `json:"source_labels,omitempty"` // Separator is the string between concatenated SourceLabels. Separator string `json:"separator,omitempty"` // Label to which the resulting string is written in a replacement. // // It is mandatory for `Replace`, `HashMod`, `Lowercase`, `Uppercase`, `KeepEqual` and `DropEqual` actions. // // Regex capture groups are available. TargetLabel string `json:"target_label,omitempty"` // Regular expression against which the extracted value is matched. Regex string `json:"regex,omitempty"` // Modulus to take of the hash of the source label values. // // Only applicable when the action is `HashMod`. Modulus uint64 `json:"modulus,omitempty"` // Replacement value against which a Replace action is performed if the regular expression matches. // // Regex capture groups are available. Replacement string `json:"replacement,omitempty"` // Action to perform based on the regex matching. // // `Uppercase` and `Lowercase` actions require Prometheus >= v2.36.0. // `DropEqual` and `KeepEqual` actions require Prometheus >= v2.41.0. // // Default: "Replace" // // +kubebuilder:validation:Enum=replace;Replace;keep;Keep;drop;Drop;hashmod;HashMod;labelmap;LabelMap;labeldrop;LabelDrop;labelkeep;LabelKeep;lowercase;Lowercase;uppercase;Uppercase;keepequal;KeepEqual;dropequal;DropEqual // +kubebuilder:default=replace Action string `json:"action,omitempty"` }
RelabelConfig allows dynamic rewriting of the label set for targets, alerts, scraped samples and remote write samples.
func (*RelabelConfig) DeepCopy ¶
func (in *RelabelConfig) DeepCopy() *RelabelConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RelabelConfig.
func (*RelabelConfig) DeepCopyInto ¶
func (in *RelabelConfig) DeepCopyInto(out *RelabelConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScrapeConfig ¶
type ScrapeConfig struct { // job_name is the name of the section in the configurtion. If no job_name is provided, it will be automatically // generated based on the name and namespace of the CR: "namespace.name" JobName string `json:"job_name,omitempty"` // params is a set of query parameters with which the target is scraped. Params map[string][]string `json:"params,omitempty"` // scrape_interval defines how frequently to scrape the targets of this scrape config. ScrapeInterval Duration `json:"scrape_interval,omitempty"` // scrape_timeout defines the timeout for scraping targets of this config. ScrapeTimeout Duration `json:"scrape_timeout,omitempty"` // schema sets the URL scheme with which to fetch metrics from targets. Scheme string `json:"scheme,omitempty"` // normalized_addresses can be set to true if the addresses returned by the endpoints have already been normalized. NormalizedAddresses bool `json:"normalized_addresses,omitempty"` // profiling_config defines the profiling config for the targets, see // https://www.parca.dev/docs/ingestion#pull-based for more information. ProfilingConfig *ProfilingConfig `json:"profiling_config,omitempty"` // relabel_configs allows dynamic rewriting of the label set for the targets. See // https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config for more information. RelabelConfigs []*RelabelConfig `json:"relabel_configs,omitempty"` StaticConfigs []StaticConfig `json:"static_configs,omitempty"` }
func (*ScrapeConfig) DeepCopy ¶
func (in *ScrapeConfig) DeepCopy() *ScrapeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScrapeConfig.
func (*ScrapeConfig) DeepCopyInto ¶
func (in *ScrapeConfig) DeepCopyInto(out *ScrapeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaticConfig ¶
type StaticConfig struct { Targets []string `json:"targets,omitempty"` Labels map[string]string `json:"labels,omitempty"` }
func (*StaticConfig) DeepCopy ¶
func (in *StaticConfig) DeepCopy() *StaticConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticConfig.
func (*StaticConfig) DeepCopyInto ¶
func (in *StaticConfig) DeepCopyInto(out *StaticConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.