monitoring.v1.probe
"The Probe
custom resource definition (CRD) defines how to scrape metrics from prober exporters such as the blackbox exporter.\n\n\nThe Probe
resource needs 2 pieces of information:\n The list of probed addresses which can be defined statically or by discovering Kubernetes Ingress objects.\n The prober which exposes the availability of probed endpoints (over various protocols such HTTP, TCP, ICMP, ...) as Prometheus metrics.\n\n\nPrometheus
and PrometheusAgent
objects select Probe
objects using label and namespace selectors."
Index
fn new(name)
obj metadata
fn withAnnotations(annotations)
fn withAnnotationsMixin(annotations)
fn withClusterName(clusterName)
fn withCreationTimestamp(creationTimestamp)
fn withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
fn withDeletionTimestamp(deletionTimestamp)
fn withFinalizers(finalizers)
fn withFinalizersMixin(finalizers)
fn withGenerateName(generateName)
fn withGeneration(generation)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withName(name)
fn withNamespace(namespace)
fn withOwnerReferences(ownerReferences)
fn withOwnerReferencesMixin(ownerReferences)
fn withResourceVersion(resourceVersion)
fn withSelfLink(selfLink)
fn withUid(uid)
obj spec
fn withInterval(interval)
fn withJobName(jobName)
fn withKeepDroppedTargets(keepDroppedTargets)
fn withLabelLimit(labelLimit)
fn withLabelNameLengthLimit(labelNameLengthLimit)
fn withLabelValueLengthLimit(labelValueLengthLimit)
fn withMetricRelabelings(metricRelabelings)
fn withMetricRelabelingsMixin(metricRelabelings)
fn withModule(module)
fn withSampleLimit(sampleLimit)
fn withScrapeClass(scrapeClass)
fn withScrapeProtocols(scrapeProtocols)
fn withScrapeProtocolsMixin(scrapeProtocols)
fn withScrapeTimeout(scrapeTimeout)
fn withTargetLimit(targetLimit)
obj spec.authorization
obj spec.basicAuth
obj spec.bearerTokenSecret
obj spec.metricRelabelings
obj spec.oauth2
fn withEndpointParams(endpointParams)
fn withEndpointParamsMixin(endpointParams)
fn withNoProxy(noProxy)
fn withProxyConnectHeader(proxyConnectHeader)
fn withProxyConnectHeaderMixin(proxyConnectHeader)
fn withProxyFromEnvironment(proxyFromEnvironment)
fn withProxyUrl(proxyUrl)
fn withScopes(scopes)
fn withScopesMixin(scopes)
fn withTokenUrl(tokenUrl)
obj spec.oauth2.clientId
obj spec.oauth2.clientSecret
obj spec.oauth2.tlsConfig
obj spec.prober
obj spec.targets
obj spec.targets.ingress
obj spec.targets.staticConfig
obj spec.tlsConfig
Fields
fn new
new(name)
new returns an instance of Probe
obj metadata
"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."
fn metadata.withAnnotations
withAnnotations(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
fn metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
Note: This function appends passed data to existing values
fn metadata.withClusterName
withClusterName(clusterName)
"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."
fn metadata.withCreationTimestamp
withCreationTimestamp(creationTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withDeletionGracePeriodSeconds
withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."
fn metadata.withDeletionTimestamp
withDeletionTimestamp(deletionTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withFinalizers
withFinalizers(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
fn metadata.withFinalizersMixin
withFinalizersMixin(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
Note: This function appends passed data to existing values
fn metadata.withGenerateName
withGenerateName(generateName)
"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"
fn metadata.withGeneration
withGeneration(generation)
"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."
fn metadata.withLabels
withLabels(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
fn metadata.withLabelsMixin
withLabelsMixin(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
Note: This function appends passed data to existing values
fn metadata.withName
withName(name)
"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"
fn metadata.withNamespace
withNamespace(namespace)
"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"
fn metadata.withOwnerReferences
withOwnerReferences(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
fn metadata.withOwnerReferencesMixin
withOwnerReferencesMixin(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
Note: This function appends passed data to existing values
fn metadata.withResourceVersion
withResourceVersion(resourceVersion)
"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"
fn metadata.withSelfLink
withSelfLink(selfLink)
"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."
fn metadata.withUid
withUid(uid)
"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"
obj spec
"Specification of desired Ingress selection for target discovery by Prometheus."
fn spec.withInterval
withInterval(interval)
"Interval at which targets are probed using the configured prober.\nIf not specified Prometheus' global scrape interval is used."
fn spec.withJobName
withJobName(jobName)
"The job name assigned to scraped metrics by default."
fn spec.withKeepDroppedTargets
withKeepDroppedTargets(keepDroppedTargets)
"Per-scrape limit on the number of targets dropped by relabeling\nthat will be kept in memory. 0 means no limit.\n\n\nIt requires Prometheus >= v2.47.0."
fn spec.withLabelLimit
withLabelLimit(labelLimit)
"Per-scrape limit on number of labels that will be accepted for a sample.\nOnly valid in Prometheus versions 2.27.0 and newer."
fn spec.withLabelNameLengthLimit
withLabelNameLengthLimit(labelNameLengthLimit)
"Per-scrape limit on length of labels name that will be accepted for a sample.\nOnly valid in Prometheus versions 2.27.0 and newer."
fn spec.withLabelValueLengthLimit
withLabelValueLengthLimit(labelValueLengthLimit)
"Per-scrape limit on length of labels value that will be accepted for a sample.\nOnly valid in Prometheus versions 2.27.0 and newer."
fn spec.withMetricRelabelings
withMetricRelabelings(metricRelabelings)
"MetricRelabelConfigs to apply to samples before ingestion."
fn spec.withMetricRelabelingsMixin
withMetricRelabelingsMixin(metricRelabelings)
"MetricRelabelConfigs to apply to samples before ingestion."
Note: This function appends passed data to existing values
fn spec.withModule
withModule(module)
"The module to use for probing specifying how to probe the target.\nExample module configuring in the blackbox exporter:\nhttps://github.com/prometheus/blackbox_exporter/blob/master/example.yml"
fn spec.withSampleLimit
withSampleLimit(sampleLimit)
"SampleLimit defines per-scrape limit on number of scraped samples that will be accepted."
fn spec.withScrapeClass
withScrapeClass(scrapeClass)
"The scrape class to apply."
fn spec.withScrapeProtocols
withScrapeProtocols(scrapeProtocols)
"scrapeProtocols
defines the protocols to negotiate during a scrape. It tells clients the\nprotocols supported by Prometheus in order of preference (from most to least preferred).\n\n\nIf unset, Prometheus uses its default value.\n\n\nIt requires Prometheus >= v2.49.0."
fn spec.withScrapeProtocolsMixin
withScrapeProtocolsMixin(scrapeProtocols)
"scrapeProtocols
defines the protocols to negotiate during a scrape. It tells clients the\nprotocols supported by Prometheus in order of preference (from most to least preferred).\n\n\nIf unset, Prometheus uses its default value.\n\n\nIt requires Prometheus >= v2.49.0."
Note: This function appends passed data to existing values
fn spec.withScrapeTimeout
withScrapeTimeout(scrapeTimeout)
"Timeout for scraping metrics from the Prometheus exporter.\nIf not specified, the Prometheus global scrape timeout is used."
fn spec.withTargetLimit
withTargetLimit(targetLimit)
"TargetLimit defines a limit on the number of scraped targets that will be accepted."
obj spec.authorization
"Authorization section for this endpoint"
fn spec.authorization.withType
withType(type)
"Defines the authentication type. The value is case-insensitive.\n\n\n\"Basic\" is not a supported value.\n\n\nDefault: \"Bearer\
obj spec.authorization.credentials
"Selects a key of a Secret in the namespace that contains the credentials for authentication."
fn spec.authorization.credentials.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.authorization.credentials.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.authorization.credentials.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.basicAuth
"BasicAuth allow an endpoint to authenticate over basic authentication.\nMore info: https://prometheus.io/docs/operating/configuration/#endpoint"
obj spec.basicAuth.password
"password
specifies a key of a Secret containing the password for\nauthentication."
fn spec.basicAuth.password.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.basicAuth.password.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.basicAuth.password.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.basicAuth.username
"username
specifies a key of a Secret containing the username for\nauthentication."
fn spec.basicAuth.username.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.basicAuth.username.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.basicAuth.username.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.bearerTokenSecret
"Secret to mount to read bearer token for scraping targets. The secret\nneeds to be in the same namespace as the probe and accessible by\nthe Prometheus Operator."
fn spec.bearerTokenSecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.bearerTokenSecret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.bearerTokenSecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.metricRelabelings
"MetricRelabelConfigs to apply to samples before ingestion."
fn spec.metricRelabelings.withAction
withAction(action)
"Action to perform based on the regex matching.\n\n\nUppercase
and Lowercase
actions require Prometheus >= v2.36.0.\nDropEqual
and KeepEqual
actions require Prometheus >= v2.41.0.\n\n\nDefault: \"Replace\
fn spec.metricRelabelings.withModulus
withModulus(modulus)
"Modulus to take of the hash of the source label values.\n\n\nOnly applicable when the action is HashMod
."
fn spec.metricRelabelings.withRegex
withRegex(regex)
"Regular expression against which the extracted value is matched."
fn spec.metricRelabelings.withReplacement
withReplacement(replacement)
"Replacement value against which a Replace action is performed if the\nregular expression matches.\n\n\nRegex capture groups are available."
fn spec.metricRelabelings.withSeparator
withSeparator(separator)
"Separator is the string between concatenated SourceLabels."
fn spec.metricRelabelings.withSourceLabels
withSourceLabels(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
fn spec.metricRelabelings.withSourceLabelsMixin
withSourceLabelsMixin(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
Note: This function appends passed data to existing values
fn spec.metricRelabelings.withTargetLabel
withTargetLabel(targetLabel)
"Label to which the resulting string is written in a replacement.\n\n\nIt is mandatory for Replace
, HashMod
, Lowercase
, Uppercase
,\nKeepEqual
and DropEqual
actions.\n\n\nRegex capture groups are available."
obj spec.oauth2
"OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer."
fn spec.oauth2.withEndpointParams
withEndpointParams(endpointParams)
"endpointParams
configures the HTTP parameters to append to the token\nURL."
fn spec.oauth2.withEndpointParamsMixin
withEndpointParamsMixin(endpointParams)
"endpointParams
configures the HTTP parameters to append to the token\nURL."
Note: This function appends passed data to existing values
fn spec.oauth2.withNoProxy
withNoProxy(noProxy)
"noProxy
is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\n\nIt requires Prometheus >= v2.43.0."
fn spec.oauth2.withProxyConnectHeader
withProxyConnectHeader(proxyConnectHeader)
"ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\n\nIt requires Prometheus >= v2.43.0."
fn spec.oauth2.withProxyConnectHeaderMixin
withProxyConnectHeaderMixin(proxyConnectHeader)
"ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\n\nIt requires Prometheus >= v2.43.0."
Note: This function appends passed data to existing values
fn spec.oauth2.withProxyFromEnvironment
withProxyFromEnvironment(proxyFromEnvironment)
"Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\n\nIt requires Prometheus >= v2.43.0."
fn spec.oauth2.withProxyUrl
withProxyUrl(proxyUrl)
"proxyURL
defines the HTTP proxy server to use.\n\n\nIt requires Prometheus >= v2.43.0."
fn spec.oauth2.withScopes
withScopes(scopes)
"scopes
defines the OAuth2 scopes used for the token request."
fn spec.oauth2.withScopesMixin
withScopesMixin(scopes)
"scopes
defines the OAuth2 scopes used for the token request."
Note: This function appends passed data to existing values
fn spec.oauth2.withTokenUrl
withTokenUrl(tokenUrl)
"tokenURL
configures the URL to fetch the token from."
obj spec.oauth2.clientId
"clientId
specifies a key of a Secret or ConfigMap containing the\nOAuth2 client's ID."
obj spec.oauth2.clientId.configMap
"ConfigMap containing data to use for the targets."
fn spec.oauth2.clientId.configMap.withKey
withKey(key)
"The key to select."
fn spec.oauth2.clientId.configMap.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.clientId.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.oauth2.clientId.secret
"Secret containing data to use for the targets."
fn spec.oauth2.clientId.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.oauth2.clientId.secret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.clientId.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.oauth2.clientSecret
"clientSecret
specifies a key of a Secret containing the OAuth2\nclient's secret."
fn spec.oauth2.clientSecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.oauth2.clientSecret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.clientSecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.oauth2.tlsConfig
"TLS configuration to use when connecting to the OAuth2 server.\nIt requires Prometheus >= v2.43.0."
fn spec.oauth2.tlsConfig.withInsecureSkipVerify
withInsecureSkipVerify(insecureSkipVerify)
"Disable target certificate validation."
fn spec.oauth2.tlsConfig.withMaxVersion
withMaxVersion(maxVersion)
"Maximum acceptable TLS version.\n\n\nIt requires Prometheus >= v2.41.0."
fn spec.oauth2.tlsConfig.withMinVersion
withMinVersion(minVersion)
"Minimum acceptable TLS version.\n\n\nIt requires Prometheus >= v2.35.0."
fn spec.oauth2.tlsConfig.withServerName
withServerName(serverName)
"Used to verify the hostname for the targets."
obj spec.oauth2.tlsConfig.ca
"Certificate authority used when verifying server certificates."
obj spec.oauth2.tlsConfig.ca.configMap
"ConfigMap containing data to use for the targets."
fn spec.oauth2.tlsConfig.ca.configMap.withKey
withKey(key)
"The key to select."
fn spec.oauth2.tlsConfig.ca.configMap.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.tlsConfig.ca.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.oauth2.tlsConfig.ca.secret
"Secret containing data to use for the targets."
fn spec.oauth2.tlsConfig.ca.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.oauth2.tlsConfig.ca.secret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.tlsConfig.ca.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.oauth2.tlsConfig.cert
"Client certificate to present when doing client-authentication."
obj spec.oauth2.tlsConfig.cert.configMap
"ConfigMap containing data to use for the targets."
fn spec.oauth2.tlsConfig.cert.configMap.withKey
withKey(key)
"The key to select."
fn spec.oauth2.tlsConfig.cert.configMap.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.tlsConfig.cert.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.oauth2.tlsConfig.cert.secret
"Secret containing data to use for the targets."
fn spec.oauth2.tlsConfig.cert.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.oauth2.tlsConfig.cert.secret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.tlsConfig.cert.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.oauth2.tlsConfig.keySecret
"Secret containing the client key file for the targets."
fn spec.oauth2.tlsConfig.keySecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.oauth2.tlsConfig.keySecret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.oauth2.tlsConfig.keySecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.prober
"Specification for the prober to use for probing targets.\nThe prober.URL parameter is required. Targets cannot be probed if left empty."
fn spec.prober.withPath
withPath(path)
"Path to collect metrics from.\nDefaults to /probe
."
fn spec.prober.withProxyUrl
withProxyUrl(proxyUrl)
"Optional ProxyURL."
fn spec.prober.withScheme
withScheme(scheme)
"HTTP scheme to use for scraping.\nhttp
and https
are the expected values unless you rewrite the __scheme__
label via relabeling.\nIf empty, Prometheus uses the default value http
."
fn spec.prober.withUrl
withUrl(url)
"Mandatory URL of the prober."
obj spec.targets
"Targets defines a set of static or dynamically discovered targets to probe."
obj spec.targets.ingress
"ingress defines the Ingress objects to probe and the relabeling\nconfiguration.\nIf staticConfig
is also defined, staticConfig
takes precedence."
fn spec.targets.ingress.withRelabelingConfigs
withRelabelingConfigs(relabelingConfigs)
"RelabelConfigs to apply to the label set of the target before it gets\nscraped.\nThe original ingress address is available via the\n__tmp_prometheus_ingress_address
label. It can be used to customize the\nprobed URL.\nThe original scrape job's name is available via the __tmp_prometheus_job_name
label.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
fn spec.targets.ingress.withRelabelingConfigsMixin
withRelabelingConfigsMixin(relabelingConfigs)
"RelabelConfigs to apply to the label set of the target before it gets\nscraped.\nThe original ingress address is available via the\n__tmp_prometheus_ingress_address
label. It can be used to customize the\nprobed URL.\nThe original scrape job's name is available via the __tmp_prometheus_job_name
label.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
Note: This function appends passed data to existing values
obj spec.targets.ingress.namespaceSelector
"From which namespaces to select Ingress objects."
fn spec.targets.ingress.namespaceSelector.withAny
withAny(any)
"Boolean describing whether all namespaces are selected in contrast to a\nlist restricting them."
fn spec.targets.ingress.namespaceSelector.withMatchNames
withMatchNames(matchNames)
"List of namespace names to select from."
fn spec.targets.ingress.namespaceSelector.withMatchNamesMixin
withMatchNamesMixin(matchNames)
"List of namespace names to select from."
Note: This function appends passed data to existing values
obj spec.targets.ingress.relabelingConfigs
"RelabelConfigs to apply to the label set of the target before it gets\nscraped.\nThe original ingress address is available via the\n__tmp_prometheus_ingress_address
label. It can be used to customize the\nprobed URL.\nThe original scrape job's name is available via the __tmp_prometheus_job_name
label.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
fn spec.targets.ingress.relabelingConfigs.withAction
withAction(action)
"Action to perform based on the regex matching.\n\n\nUppercase
and Lowercase
actions require Prometheus >= v2.36.0.\nDropEqual
and KeepEqual
actions require Prometheus >= v2.41.0.\n\n\nDefault: \"Replace\
fn spec.targets.ingress.relabelingConfigs.withModulus
withModulus(modulus)
"Modulus to take of the hash of the source label values.\n\n\nOnly applicable when the action is HashMod
."
fn spec.targets.ingress.relabelingConfigs.withRegex
withRegex(regex)
"Regular expression against which the extracted value is matched."
fn spec.targets.ingress.relabelingConfigs.withReplacement
withReplacement(replacement)
"Replacement value against which a Replace action is performed if the\nregular expression matches.\n\n\nRegex capture groups are available."
fn spec.targets.ingress.relabelingConfigs.withSeparator
withSeparator(separator)
"Separator is the string between concatenated SourceLabels."
fn spec.targets.ingress.relabelingConfigs.withSourceLabels
withSourceLabels(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
fn spec.targets.ingress.relabelingConfigs.withSourceLabelsMixin
withSourceLabelsMixin(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
Note: This function appends passed data to existing values
fn spec.targets.ingress.relabelingConfigs.withTargetLabel
withTargetLabel(targetLabel)
"Label to which the resulting string is written in a replacement.\n\n\nIt is mandatory for Replace
, HashMod
, Lowercase
, Uppercase
,\nKeepEqual
and DropEqual
actions.\n\n\nRegex capture groups are available."
obj spec.targets.ingress.selector
"Selector to select the Ingress objects."
fn spec.targets.ingress.selector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.targets.ingress.selector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.targets.ingress.selector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.targets.ingress.selector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.targets.ingress.selector.matchExpressions
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.targets.ingress.selector.matchExpressions.withKey
withKey(key)
"key is the label key that the selector applies to."
fn spec.targets.ingress.selector.matchExpressions.withOperator
withOperator(operator)
"operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist."
fn spec.targets.ingress.selector.matchExpressions.withValues
withValues(values)
"values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch."
fn spec.targets.ingress.selector.matchExpressions.withValuesMixin
withValuesMixin(values)
"values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch."
Note: This function appends passed data to existing values
obj spec.targets.staticConfig
"staticConfig defines the static list of targets to probe and the\nrelabeling configuration.\nIf ingress
is also defined, staticConfig
takes precedence.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#static_config."
fn spec.targets.staticConfig.withLabels
withLabels(labels)
"Labels assigned to all metrics scraped from the targets."
fn spec.targets.staticConfig.withLabelsMixin
withLabelsMixin(labels)
"Labels assigned to all metrics scraped from the targets."
Note: This function appends passed data to existing values
fn spec.targets.staticConfig.withRelabelingConfigs
withRelabelingConfigs(relabelingConfigs)
"RelabelConfigs to apply to the label set of the targets before it gets\nscraped.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
fn spec.targets.staticConfig.withRelabelingConfigsMixin
withRelabelingConfigsMixin(relabelingConfigs)
"RelabelConfigs to apply to the label set of the targets before it gets\nscraped.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
Note: This function appends passed data to existing values
fn spec.targets.staticConfig.withStatic
withStatic(static)
"The list of hosts to probe."
fn spec.targets.staticConfig.withStaticMixin
withStaticMixin(static)
"The list of hosts to probe."
Note: This function appends passed data to existing values
obj spec.targets.staticConfig.relabelingConfigs
"RelabelConfigs to apply to the label set of the targets before it gets\nscraped.\nMore info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
fn spec.targets.staticConfig.relabelingConfigs.withAction
withAction(action)
"Action to perform based on the regex matching.\n\n\nUppercase
and Lowercase
actions require Prometheus >= v2.36.0.\nDropEqual
and KeepEqual
actions require Prometheus >= v2.41.0.\n\n\nDefault: \"Replace\
fn spec.targets.staticConfig.relabelingConfigs.withModulus
withModulus(modulus)
"Modulus to take of the hash of the source label values.\n\n\nOnly applicable when the action is HashMod
."
fn spec.targets.staticConfig.relabelingConfigs.withRegex
withRegex(regex)
"Regular expression against which the extracted value is matched."
fn spec.targets.staticConfig.relabelingConfigs.withReplacement
withReplacement(replacement)
"Replacement value against which a Replace action is performed if the\nregular expression matches.\n\n\nRegex capture groups are available."
fn spec.targets.staticConfig.relabelingConfigs.withSeparator
withSeparator(separator)
"Separator is the string between concatenated SourceLabels."
fn spec.targets.staticConfig.relabelingConfigs.withSourceLabels
withSourceLabels(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
fn spec.targets.staticConfig.relabelingConfigs.withSourceLabelsMixin
withSourceLabelsMixin(sourceLabels)
"The source labels select values from existing labels. Their content is\nconcatenated using the configured Separator and matched against the\nconfigured regular expression."
Note: This function appends passed data to existing values
fn spec.targets.staticConfig.relabelingConfigs.withTargetLabel
withTargetLabel(targetLabel)
"Label to which the resulting string is written in a replacement.\n\n\nIt is mandatory for Replace
, HashMod
, Lowercase
, Uppercase
,\nKeepEqual
and DropEqual
actions.\n\n\nRegex capture groups are available."
obj spec.tlsConfig
"TLS configuration to use when scraping the endpoint."
fn spec.tlsConfig.withInsecureSkipVerify
withInsecureSkipVerify(insecureSkipVerify)
"Disable target certificate validation."
fn spec.tlsConfig.withMaxVersion
withMaxVersion(maxVersion)
"Maximum acceptable TLS version.\n\n\nIt requires Prometheus >= v2.41.0."
fn spec.tlsConfig.withMinVersion
withMinVersion(minVersion)
"Minimum acceptable TLS version.\n\n\nIt requires Prometheus >= v2.35.0."
fn spec.tlsConfig.withServerName
withServerName(serverName)
"Used to verify the hostname for the targets."
obj spec.tlsConfig.ca
"Certificate authority used when verifying server certificates."
obj spec.tlsConfig.ca.configMap
"ConfigMap containing data to use for the targets."
fn spec.tlsConfig.ca.configMap.withKey
withKey(key)
"The key to select."
fn spec.tlsConfig.ca.configMap.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.tlsConfig.ca.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.tlsConfig.ca.secret
"Secret containing data to use for the targets."
fn spec.tlsConfig.ca.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.tlsConfig.ca.secret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.tlsConfig.ca.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.tlsConfig.cert
"Client certificate to present when doing client-authentication."
obj spec.tlsConfig.cert.configMap
"ConfigMap containing data to use for the targets."
fn spec.tlsConfig.cert.configMap.withKey
withKey(key)
"The key to select."
fn spec.tlsConfig.cert.configMap.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.tlsConfig.cert.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.tlsConfig.cert.secret
"Secret containing data to use for the targets."
fn spec.tlsConfig.cert.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.tlsConfig.cert.secret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.tlsConfig.cert.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.tlsConfig.keySecret
"Secret containing the client key file for the targets."
fn spec.tlsConfig.keySecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.tlsConfig.keySecret.withName
withName(name)
"Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop kubebuilder:default
when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896."
fn spec.tlsConfig.keySecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"