mirror of
https://github.com/prometheus/prometheus.git
synced 2024-11-09 23:24:05 -08:00
Adding Consul Enterprise Admin Partitions (#11482)
* Adding Consul Enterprise Admin Partitions Signed-off-by: dcanadillas <dcanadillas@hashicorp.com>
This commit is contained in:
parent
5ac12ac351
commit
51a44e6657
|
@ -60,6 +60,8 @@ const (
|
|||
datacenterLabel = model.MetaLabelPrefix + "consul_dc"
|
||||
// namespaceLabel is the name of the label containing the namespace (Consul Enterprise only).
|
||||
namespaceLabel = model.MetaLabelPrefix + "consul_namespace"
|
||||
// partitionLabel is the name of the label containing the Admin Partition (Consul Enterprise only).
|
||||
partitionLabel = model.MetaLabelPrefix + "consul_partition"
|
||||
// taggedAddressesLabel is the prefix for the labels mapping to a target's tagged addresses.
|
||||
taggedAddressesLabel = model.MetaLabelPrefix + "consul_tagged_address_"
|
||||
// serviceIDLabel is the name of the label containing the service ID.
|
||||
|
@ -112,6 +114,7 @@ type SDConfig struct {
|
|||
Token config.Secret `yaml:"token,omitempty"`
|
||||
Datacenter string `yaml:"datacenter,omitempty"`
|
||||
Namespace string `yaml:"namespace,omitempty"`
|
||||
Partition string `yaml:"partition,omitempty"`
|
||||
TagSeparator string `yaml:"tag_separator,omitempty"`
|
||||
Scheme string `yaml:"scheme,omitempty"`
|
||||
Username string `yaml:"username,omitempty"`
|
||||
|
@ -183,6 +186,7 @@ type Discovery struct {
|
|||
client *consul.Client
|
||||
clientDatacenter string
|
||||
clientNamespace string
|
||||
clientPartition string
|
||||
tagSeparator string
|
||||
watchedServices []string // Set of services which will be discovered.
|
||||
watchedTags []string // Tags used to filter instances of a service.
|
||||
|
@ -210,6 +214,7 @@ func NewDiscovery(conf *SDConfig, logger log.Logger) (*Discovery, error) {
|
|||
Scheme: conf.Scheme,
|
||||
Datacenter: conf.Datacenter,
|
||||
Namespace: conf.Namespace,
|
||||
Partition: conf.Partition,
|
||||
Token: string(conf.Token),
|
||||
HttpClient: wrapper,
|
||||
}
|
||||
|
@ -227,6 +232,7 @@ func NewDiscovery(conf *SDConfig, logger log.Logger) (*Discovery, error) {
|
|||
refreshInterval: time.Duration(conf.RefreshInterval),
|
||||
clientDatacenter: conf.Datacenter,
|
||||
clientNamespace: conf.Namespace,
|
||||
clientPartition: conf.Partition,
|
||||
finalizer: wrapper.CloseIdleConnections,
|
||||
logger: logger,
|
||||
}
|
||||
|
@ -547,6 +553,7 @@ func (srv *consulService) watch(ctx context.Context, ch chan<- []*targetgroup.Gr
|
|||
addressLabel: model.LabelValue(serviceNode.Node.Address),
|
||||
nodeLabel: model.LabelValue(serviceNode.Node.Node),
|
||||
namespaceLabel: model.LabelValue(serviceNode.Service.Namespace),
|
||||
partitionLabel: model.LabelValue(serviceNode.Service.Partition),
|
||||
tagsLabel: model.LabelValue(tags),
|
||||
serviceAddressLabel: model.LabelValue(serviceNode.Service.Address),
|
||||
servicePortLabel: model.LabelValue(strconv.Itoa(serviceNode.Service.Port)),
|
||||
|
|
|
@ -518,6 +518,7 @@ The following meta labels are available on targets during [relabeling](#relabel_
|
|||
* `__meta_consul_address`: the address of the target
|
||||
* `__meta_consul_dc`: the datacenter name for the target
|
||||
* `__meta_consul_health`: the health status of the service
|
||||
* `__meta_consul_partition`: the admin partition name where the service is registered
|
||||
* `__meta_consul_metadata_<key>`: each node metadata key value of the target
|
||||
* `__meta_consul_node`: the node name defined for the target
|
||||
* `__meta_consul_service_address`: the service address of the target
|
||||
|
@ -536,6 +537,8 @@ The following meta labels are available on targets during [relabeling](#relabel_
|
|||
[ datacenter: <string> ]
|
||||
# Namespaces are only supported in Consul Enterprise.
|
||||
[ namespace: <string> ]
|
||||
# Admin Partitions are only supported in Consul Enterprise.
|
||||
[ partition: <string> ]
|
||||
[ scheme: <string> | default = "http" ]
|
||||
# The username and password fields are deprecated in favor of the basic_auth configuration.
|
||||
[ username: <string> ]
|
||||
|
|
Loading…
Reference in a new issue