Targets Config
Configs: main | alerting | metrics | oauth | probes | rds | servers | surfacer | targets | tlsconfig | utils | validators
|
Language: |
cloudprober.targets.DNSOptions #
# DNS server to use for DNS resolution, instead of system's default. Server # can be specified in the following format: [network://]ip[:port] # where network is one of udp, tcp, tcp4, tcp6, udp4, udp6. # Example: # - "1.1.1.1" // Use default network and port (53) # - "tcp://1.1.1.1" // Use tcp network and default port (53) # - "tcp://1.1.1.1:513 // Use tcp network and port 513server: <string># DNS TTL (time to live). This controls how often backend DNS server will be # queried.ttl_sec: <int32> | default: 300# This option controls for how long cached IP can be used in case of resolve # errors. Default value for this is set to ttl_sec. It should never be # lower than dns_ttl_sec.max_cache_age_sec: <int32># Backend timeout in milliseconds. This option controls how long we'll wait # for the backend DNS server to respond. Note that DNS resolution happens # asynchronously, so DNS resolve time should never really affect the probe. # This timeout affects how soon DNS resolution is retried, if it's hanging.backend_timeout_msec: <int32> | default: 5000
cloudprober.targets.DummyTargets #
cloudprober.targets.Endpoint #
# Endpoint name. Metrics for a target are identified by a combination of # endpoint name and port name, if specified.name: <string># Optional IP address. If not specified, endpoint name is DNS resolved.ip: <string># Endpoint port. If specified, this port will be used by the port-based # probes (e.g. TCP, HTTP), if probe's configuration doesn't specify a port.port: <int32># HTTP probe URL. If provided, this field is used by the HTTP probe, if # probe configuration itself doesn't specify URL fields.url: <string># Endpoint labels. These labels can be exported as metrics labels using the # `additional_label` field in the probe configuration.labels: <cloudprober.targets.Endpoint.LabelsEntry>
cloudprober.targets.Endpoint.LabelsEntry #
key: <string> value: <string>
cloudprober.targets.GlobalTargetsOptions #
# RDS server address # Deprecated: This option is now deprecated, please use rds_server_options # instead.rds_server_address: <string># RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # } # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions># GCE targets options.global_gce_targets_options: <cloudprober.targets.gce.GlobalOptions># Lame duck options. If provided, targets module checks for the lame duck # targets and removes them from the targets list.lame_duck_options: <cloudprober.targets.lameduck.Options>
cloudprober.targets.K8sTargets #
# Targets namespace. If this field is unset, we select resources from all # namespaces.namespace: <string># labelSelector uses the same format as kubernetes API calls. # Example: # labelSelector: "k8s-app" # label k8s-app exists # labelSelector: "role=frontend" # label role=frontend # labelSelector: "!canary" # canary label doesn't existlabelSelector: <string># Which resources to target. If value is not empty (""), we use it as a # regex for resource names. # Example: # services: "" // All services. # endpoints: ".*-service" // Endpoints ending with "service".[services <string> | endpoints <string> | ingresses <string> | pods <string>]: <oneof># portFilter can be used to filter resources by port name. This is useful # for resources like endpoints and services, where each resource may have # multiple ports, and we may hit just a subset of those ports. portFilter # takes a regex -- we apply it on port names if port name is available, # otherwise we apply it port numbers. # Example: ".*-dns", "metrics", ".*-service", etc.portFilter: <string># How often to re-check k8s API servers. Note this field will be irrelevant # when (and if) we move to the watch API. Default is 30s.re_eval_sec: <int32> rds_server_options: <cloudprober.rds.ClientConf.ServerOptions>
cloudprober.targets.RDSTargets #
# RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # } # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions># Resource path specifies the resources to return. Resources paths have the # following format: # <resource_provider>://<resource_type>/<additional_params> # # Examples: # For GCE instances in projectA: "gcp://gce_instances/<projectA>" # Kubernetes Pods : "k8s://pods"resource_path: <string># Filters to filter resources by.filter: <cloudprober.rds.Filter># IP config to specify the IP address to pick for a resource.ip_config: <cloudprober.rds.IPConfig>
cloudprober.targets.TargetsDef #
[host_names <string> | shared_targets <string> | gce_targets <cloudprober.targets.gce.TargetsConf> | rds_targets <cloudprober.targets.RDSTargets> | file_targets <cloudprober.targets.file.TargetsConf> | k8s <cloudprober.targets.K8sTargets> | dummy_targets <cloudprober.targets.DummyTargets>]: <oneof># Static endpoints. These endpoints are merged with the resources returned # by the targets type above. # Example: # endpoint { # name: "service-gtwy-1" # ip: "10.1.18.121" # port: 8080 # labels { # key: "service" # value: "products-service" # } # } # endpoint { # name: "frontend-url1" # url: "https://frontend.example.com/url1" # }endpoint: <cloudprober.targets.Endpoint># Regex to apply on the targets.regex: <string># Exclude lameducks. Lameduck targets can be set through RTC (realtime # configurator) service. This functionality works only if lame_duck_options # are specified.exclude_lameducks: <bool> | default: true# Options to control DNS resolution behavior if using Cloudprober's DNS # resolver, which get triggered only if you're setting `resolve_first` probe # setting to true.dns_options: <cloudprober.targets.DNSOptions># Provide a dns resolver override instead of using the default dns resolver. # Deprecated: This option is now deprecated, please use dns_options instead.dns_server: <string>
cloudprober.targets.file.TargetsConf #
# File that contains resources in either textproto or json format. # Example in textproto format: # # resource { # name: "switch-xx-01" # ip: "10.11.112.3" # port: 8080 # labels { # key: "device_type" # value: "switch" # } # } # resource { # name: "switch-yy-01" # ip: "10.16.110.12" # port: 8080 # }file_path: <string> filter: <cloudprober.rds.Filter> format: (UNSPECIFIED|TEXTPB|JSON|YAML): <enum># If specified, file will be re-read at the given interval.re_eval_sec: <int32>
cloudprober.targets.gce.ForwardingRules #
# Important: if multiple probes use forwarding_rules targets, only the # settings in the definition will take effect. # TODO(manugarg): Fix this behavior. # # For regional forwarding rules, regions to return forwarding rules for. # Default is to return forwarding rules from the region that the VM is # running in. To return forwarding rules from all regions, specify region as # "all".region: <string># For global forwarding rules, if it is set to true, it will ignore # the value for the above region property.global_rule: <bool> | default: false
cloudprober.targets.gce.GlobalOptions #
# How often targets should be evaluated/expandedre_eval_sec: <int32> | default: 900# Compute API version.api_version: <string> | default: v1
cloudprober.targets.gce.Instances #
# Use DNS to resolve target names (instances). If set to false (default), # IP addresses specified in the compute.Instance resource is used. If set # to true all the other resolving options are ignored.use_dns_to_resolve: <bool> | default: false network_interface: <cloudprober.targets.gce.Instances.NetworkInterface># Labels to filter instances by ("key:value-regex" format).label: <string>
cloudprober.targets.gce.Instances.NetworkInterface #
index: <int32> | default: 0 ip_type: (PRIVATE|PUBLIC|ALIAS): <enum>
cloudprober.targets.gce.TargetsConf #
# If running on GCE, this defaults to the local project. # Note: Multiple projects support in targets is experimental and may go away # with future iterations.project: <string> [instances <cloudprober.targets.gce.Instances> | forwarding_rules <cloudprober.targets.gce.ForwardingRules>]: <oneof>
cloudprober.targets.lameduck.Options #
# How often to check for lame-ducked targetsre_eval_sec: <int32> | default: 10# Runtime config project. If running on GCE, this defaults to the project # containing the VM.runtimeconfig_project: <string># Lame duck targets runtime config name. An operator will create a variable # here to mark a target as lame-ducked.runtimeconfig_name: <string> | default: lame-duck-targets# Lame duck targets pubsub topic name. An operator will create a message # here to mark a target as lame-ducked.pubsub_topic: <string># Lame duck expiration time. We ignore variables (targets) that have been # updated more than these many seconds ago. This is a safety mechanism for # failing to cleanup. Also, the idea is that if a target has actually # disappeared, automatic targets expansion will take care of that some time # during this expiration period.expiration_sec: <int32> | default: 300# Use an RDS client to get lame-duck-targets. # This option is always true now and will be removed after v0.10.7.use_rds: <bool># RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions>
cloudprober.targets.DNSOptions #
# DNS server to use for DNS resolution, instead of system's default. Server # can be specified in the following format: [network://]ip[:port] # where network is one of udp, tcp, tcp4, tcp6, udp4, udp6. # Example: # - "1.1.1.1" // Use default network and port (53) # - "tcp://1.1.1.1" // Use tcp network and default port (53) # - "tcp://1.1.1.1:513 // Use tcp network and port 513server: <string># DNS TTL (time to live). This controls how often backend DNS server will be # queried.ttl_sec: <int32> | default: 300# This option controls for how long cached IP can be used in case of resolve # errors. Default value for this is set to ttl_sec. It should never be # lower than dns_ttl_sec.max_cache_age_sec: <int32># Backend timeout in milliseconds. This option controls how long we'll wait # for the backend DNS server to respond. Note that DNS resolution happens # asynchronously, so DNS resolve time should never really affect the probe. # This timeout affects how soon DNS resolution is retried, if it's hanging.backend_timeout_msec: <int32> | default: 5000
cloudprober.targets.DummyTargets #
cloudprober.targets.Endpoint #
# Endpoint name. Metrics for a target are identified by a combination of # endpoint name and port name, if specified.name: <string># Optional IP address. If not specified, endpoint name is DNS resolved.ip: <string># Endpoint port. If specified, this port will be used by the port-based # probes (e.g. TCP, HTTP), if probe's configuration doesn't specify a port.port: <int32># HTTP probe URL. If provided, this field is used by the HTTP probe, if # probe configuration itself doesn't specify URL fields.url: <string># Endpoint labels. These labels can be exported as metrics labels using the # `additional_label` field in the probe configuration.labels: <cloudprober.targets.Endpoint.LabelsEntry>
cloudprober.targets.Endpoint.LabelsEntry #
key: <string> value: <string>
cloudprober.targets.GlobalTargetsOptions #
# RDS server address # Deprecated: This option is now deprecated, please use rds_server_options # instead.rds_server_address: <string># RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # } # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions># GCE targets options.global_gce_targets_options: <cloudprober.targets.gce.GlobalOptions># Lame duck options. If provided, targets module checks for the lame duck # targets and removes them from the targets list.lame_duck_options: <cloudprober.targets.lameduck.Options>
cloudprober.targets.K8sTargets #
# Targets namespace. If this field is unset, we select resources from all # namespaces.namespace: <string># labelSelector uses the same format as kubernetes API calls. # Example: # labelSelector: "k8s-app" # label k8s-app exists # labelSelector: "role=frontend" # label role=frontend # labelSelector: "!canary" # canary label doesn't existlabelSelector: <string># Which resources to target. If value is not empty (""), we use it as a # regex for resource names. # Example: # services: "" // All services. # endpoints: ".*-service" // Endpoints ending with "service".[services <string> | endpoints <string> | ingresses <string> | pods <string>]: <oneof># portFilter can be used to filter resources by port name. This is useful # for resources like endpoints and services, where each resource may have # multiple ports, and we may hit just a subset of those ports. portFilter # takes a regex -- we apply it on port names if port name is available, # otherwise we apply it port numbers. # Example: ".*-dns", "metrics", ".*-service", etc.portFilter: <string># How often to re-check k8s API servers. Note this field will be irrelevant # when (and if) we move to the watch API. Default is 30s.re_eval_sec: <int32> rds_server_options: <cloudprober.rds.ClientConf.ServerOptions>
cloudprober.targets.RDSTargets #
# RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # } # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions># Resource path specifies the resources to return. Resources paths have the # following format: # <resource_provider>://<resource_type>/<additional_params> # # Examples: # For GCE instances in projectA: "gcp://gce_instances/<projectA>" # Kubernetes Pods : "k8s://pods"resource_path: <string># Filters to filter resources by.filter: <cloudprober.rds.Filter># IP config to specify the IP address to pick for a resource.ip_config: <cloudprober.rds.IPConfig>
cloudprober.targets.TargetsDef #
[host_names <string> | shared_targets <string> | gce_targets <cloudprober.targets.gce.TargetsConf> | rds_targets <cloudprober.targets.RDSTargets> | file_targets <cloudprober.targets.file.TargetsConf> | k8s <cloudprober.targets.K8sTargets> | dummy_targets <cloudprober.targets.DummyTargets>]: <oneof># Static endpoints. These endpoints are merged with the resources returned # by the targets type above. # Example: # endpoint { # name: "service-gtwy-1" # ip: "10.1.18.121" # port: 8080 # labels { # key: "service" # value: "products-service" # } # } # endpoint { # name: "frontend-url1" # url: "https://frontend.example.com/url1" # }endpoint: <cloudprober.targets.Endpoint># Regex to apply on the targets.regex: <string># Exclude lameducks. Lameduck targets can be set through RTC (realtime # configurator) service. This functionality works only if lame_duck_options # are specified.exclude_lameducks: <bool> | default: true# Options to control DNS resolution behavior if using Cloudprober's DNS # resolver, which get triggered only if you're setting `resolve_first` probe # setting to true.dns_options: <cloudprober.targets.DNSOptions># Provide a dns resolver override instead of using the default dns resolver. # Deprecated: This option is now deprecated, please use dns_options instead.dns_server: <string>
cloudprober.targets.file.TargetsConf #
# File that contains resources in either textproto or json format. # Example in textproto format: # # resource { # name: "switch-xx-01" # ip: "10.11.112.3" # port: 8080 # labels { # key: "device_type" # value: "switch" # } # } # resource { # name: "switch-yy-01" # ip: "10.16.110.12" # port: 8080 # }file_path: <string> filter: <cloudprober.rds.Filter> format: (UNSPECIFIED|TEXTPB|JSON|YAML): <enum># If specified, file will be re-read at the given interval.re_eval_sec: <int32>
cloudprober.targets.gce.ForwardingRules #
# Important: if multiple probes use forwarding_rules targets, only the # settings in the definition will take effect. # TODO(manugarg): Fix this behavior. # # For regional forwarding rules, regions to return forwarding rules for. # Default is to return forwarding rules from the region that the VM is # running in. To return forwarding rules from all regions, specify region as # "all".region: <string># For global forwarding rules, if it is set to true, it will ignore # the value for the above region property.global_rule: <bool> | default: false
cloudprober.targets.gce.GlobalOptions #
# How often targets should be evaluated/expandedre_eval_sec: <int32> | default: 900# Compute API version.api_version: <string> | default: v1
cloudprober.targets.gce.Instances #
# Use DNS to resolve target names (instances). If set to false (default), # IP addresses specified in the compute.Instance resource is used. If set # to true all the other resolving options are ignored.use_dns_to_resolve: <bool> | default: false network_interface: <cloudprober.targets.gce.Instances.NetworkInterface># Labels to filter instances by ("key:value-regex" format).label: <string>
cloudprober.targets.gce.Instances.NetworkInterface #
index: <int32> | default: 0 ip_type: (PRIVATE|PUBLIC|ALIAS): <enum>
cloudprober.targets.gce.TargetsConf #
# If running on GCE, this defaults to the local project. # Note: Multiple projects support in targets is experimental and may go away # with future iterations.project: <string> [instances <cloudprober.targets.gce.Instances> | forwarding_rules <cloudprober.targets.gce.ForwardingRules>]: <oneof>
cloudprober.targets.lameduck.Options #
# How often to check for lame-ducked targetsre_eval_sec: <int32> | default: 10# Runtime config project. If running on GCE, this defaults to the project # containing the VM.runtimeconfig_project: <string># Lame duck targets runtime config name. An operator will create a variable # here to mark a target as lame-ducked.runtimeconfig_name: <string> | default: lame-duck-targets# Lame duck targets pubsub topic name. An operator will create a message # here to mark a target as lame-ducked.pubsub_topic: <string># Lame duck expiration time. We ignore variables (targets) that have been # updated more than these many seconds ago. This is a safety mechanism for # failing to cleanup. Also, the idea is that if a target has actually # disappeared, automatic targets expansion will take care of that some time # during this expiration period.expiration_sec: <int32> | default: 300# Use an RDS client to get lame-duck-targets. # This option is always true now and will be removed after v0.10.7.use_rds: <bool># RDS server options, for example: # rds_server_options { # server_address: "rds-server.xyz:9314" # oauth_config: { # ... # }rds_server_options: <cloudprober.rds.ClientConf.ServerOptions>