359 lines
18 KiB
YAML
359 lines
18 KiB
YAML
# https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.11.1
|
|
argocd.argoproj.io/sync-options: ServerSideApply=true
|
|
creationTimestamp: null
|
|
name: scrapeconfigs.monitoring.coreos.com
|
|
spec:
|
|
group: monitoring.coreos.com
|
|
names:
|
|
categories:
|
|
- prometheus-operator
|
|
kind: ScrapeConfig
|
|
listKind: ScrapeConfigList
|
|
plural: scrapeconfigs
|
|
shortNames:
|
|
- scfg
|
|
singular: scrapeconfig
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: ScrapeConfig defines a namespaced Prometheus scrape_config to
|
|
be aggregated across multiple namespaces into the Prometheus configuration.
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: ScrapeConfigSpec is a specification of the desired configuration
|
|
for a scrape configuration.
|
|
properties:
|
|
authorization:
|
|
description: Authorization header to use on every scrape request.
|
|
properties:
|
|
credentials:
|
|
description: The secret's key that contains the credentials of
|
|
the request
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type:
|
|
description: Set the authentication type. Defaults to Bearer,
|
|
Basic will cause an error
|
|
type: string
|
|
type: object
|
|
basicAuth:
|
|
description: BasicAuth information to use on every scrape request.
|
|
properties:
|
|
password:
|
|
description: The secret in the service monitor namespace that
|
|
contains the password for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
username:
|
|
description: The secret in the service monitor namespace that
|
|
contains the username for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
fileSDConfigs:
|
|
description: FileSDConfigs defines a list of file service discovery
|
|
configurations.
|
|
items:
|
|
description: FileSDConfig defines a Prometheus file service discovery
|
|
configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#file_sd_config
|
|
properties:
|
|
files:
|
|
description: 'List of files to be used for file discovery. Recommendation:
|
|
use absolute paths. While relative paths work, the prometheus-operator
|
|
project makes no guarantees about the working directory where
|
|
the configuration file is stored. Files must be mounted using
|
|
Prometheus.ConfigMaps or Prometheus.Secrets.'
|
|
items:
|
|
description: SDFile represents a file used for service discovery
|
|
pattern: ^[^*]*(\*[^/]*)?\.(json|yml|yaml|JSON|YML|YAML)$
|
|
type: string
|
|
minItems: 1
|
|
type: array
|
|
refreshInterval:
|
|
description: RefreshInterval configures the refresh interval
|
|
at which Prometheus will reload the content of the files.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
required:
|
|
- files
|
|
type: object
|
|
type: array
|
|
honorLabels:
|
|
description: HonorLabels chooses the metric's labels on collisions
|
|
with target labels.
|
|
type: boolean
|
|
honorTimestamps:
|
|
description: HonorTimestamps controls whether Prometheus respects
|
|
the timestamps present in scraped data.
|
|
type: boolean
|
|
httpSDConfigs:
|
|
description: HTTPSDConfigs defines a list of HTTP service discovery
|
|
configurations.
|
|
items:
|
|
description: HTTPSDConfig defines a prometheus HTTP service discovery
|
|
configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#http_sd_config
|
|
properties:
|
|
authorization:
|
|
description: Authorization header configuration to authenticate
|
|
against the target HTTP endpoint.
|
|
properties:
|
|
credentials:
|
|
description: The secret's key that contains the credentials
|
|
of the request
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type:
|
|
description: Set the authentication type. Defaults to Bearer,
|
|
Basic will cause an error
|
|
type: string
|
|
type: object
|
|
basicAuth:
|
|
description: 'BasicAuth information to authenticate against
|
|
the target HTTP endpoint. More info: https://prometheus.io/docs/operating/configuration/#endpoints'
|
|
properties:
|
|
password:
|
|
description: The secret in the service monitor namespace
|
|
that contains the password for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
username:
|
|
description: The secret in the service monitor namespace
|
|
that contains the username for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
refreshInterval:
|
|
description: RefreshInterval configures the refresh interval
|
|
at which Prometheus will re-query the endpoint to update the
|
|
target list.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
url:
|
|
description: URL from which the targets are fetched.
|
|
minLength: 1
|
|
pattern: ^http(s)?://.+$
|
|
type: string
|
|
required:
|
|
- url
|
|
type: object
|
|
type: array
|
|
metricsPath:
|
|
description: MetricsPath HTTP path to scrape for metrics. If empty,
|
|
Prometheus uses the default value (e.g. /metrics).
|
|
type: string
|
|
relabelings:
|
|
description: 'RelabelConfigs defines how to rewrite the target''s
|
|
labels before scraping. Prometheus Operator automatically adds relabelings
|
|
for a few standard Kubernetes fields. The original scrape job''s
|
|
name is available via the `__tmp_prometheus_job_name` label. More
|
|
info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config'
|
|
items:
|
|
description: 'RelabelConfig allows dynamic rewriting of the label
|
|
set, being applied to samples before ingestion. It defines `<metric_relabel_configs>`-section
|
|
of Prometheus configuration. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs'
|
|
properties:
|
|
action:
|
|
default: replace
|
|
description: Action to perform based on regex matching. Default
|
|
is 'replace'. uppercase and lowercase actions require Prometheus
|
|
>= 2.36.
|
|
enum:
|
|
- replace
|
|
- Replace
|
|
- keep
|
|
- Keep
|
|
- drop
|
|
- Drop
|
|
- hashmod
|
|
- HashMod
|
|
- labelmap
|
|
- LabelMap
|
|
- labeldrop
|
|
- LabelDrop
|
|
- labelkeep
|
|
- LabelKeep
|
|
- lowercase
|
|
- Lowercase
|
|
- uppercase
|
|
- Uppercase
|
|
- keepequal
|
|
- KeepEqual
|
|
- dropequal
|
|
- DropEqual
|
|
type: string
|
|
modulus:
|
|
description: Modulus to take of the hash of the source label
|
|
values.
|
|
format: int64
|
|
type: integer
|
|
regex:
|
|
description: Regular expression against which the extracted
|
|
value is matched. Default is '(.*)'
|
|
type: string
|
|
replacement:
|
|
description: Replacement value against which a regex replace
|
|
is performed if the regular expression matches. Regex capture
|
|
groups are available. Default is '$1'
|
|
type: string
|
|
separator:
|
|
description: Separator placed between concatenated source label
|
|
values. default is ';'.
|
|
type: string
|
|
sourceLabels:
|
|
description: The source labels select values from existing labels.
|
|
Their content is concatenated using the configured separator
|
|
and matched against the configured regular expression for
|
|
the replace, keep, and drop actions.
|
|
items:
|
|
description: LabelName is a valid Prometheus label name which
|
|
may only contain ASCII letters, numbers, as well as underscores.
|
|
pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
|
|
type: string
|
|
type: array
|
|
targetLabel:
|
|
description: Label to which the resulting value is written in
|
|
a replace action. It is mandatory for replace actions. Regex
|
|
capture groups are available.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
staticConfigs:
|
|
description: StaticConfigs defines a list of static targets with a
|
|
common label set.
|
|
items:
|
|
description: StaticConfig defines a Prometheus static configuration.
|
|
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config
|
|
properties:
|
|
labels:
|
|
additionalProperties:
|
|
type: string
|
|
description: Labels assigned to all metrics scraped from the
|
|
targets.
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
targets:
|
|
description: List of targets for this static configuration.
|
|
items:
|
|
description: Target represents a target for Prometheus to
|
|
scrape
|
|
type: string
|
|
type: array
|
|
type: object
|
|
type: array
|
|
type: object
|
|
required:
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|