Merge pull request #812 from Marmelatze/consul_services

Use Consul ServiceAddress instead of Address when set
This commit is contained in:
Fabian Reinartz 2015-06-17 20:10:52 +02:00
commit 459d18cf18

View file

@ -258,6 +258,10 @@ func (cd *ConsulDiscovery) watchService(srv *consulService, ch chan<- *config.Ta
for _, node := range nodes {
addr := fmt.Sprintf("%s:%d", node.Address, node.ServicePort)
// Use ServiceAddress instead of Address if not empty.
if len(node.ServiceAddress) > 0 {
addr = fmt.Sprintf("%s:%d", node.ServiceAddress, node.ServicePort)
}
// We surround the separated list with the separator as well. This way regular expressions
// in relabeling rules don't have to consider tag positions.
tags := cd.tagSeparator + strings.Join(node.ServiceTags, cd.tagSeparator) + cd.tagSeparator