Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
* [ENHANCEMENT] Add override to limit number of blocks inspected in tag value search [#2358](https://github.com/grafana/tempo/pull/2358) (@mapno)
* [ENHANCEMENT] Add synchronous read mode to vParquet and vParquet2 optionally enabled by env vars [#2165](https://github.com/grafana/tempo/pull/2165) (@mdisibio)
* [ENHANCEMENT] Add option to override metrics-generator ring port [#2399](https://github.com/grafana/tempo/pull/2399) (@mdisibio)
* [ENHANCEMENT] Add support for IPv6 [#1555](https://github.com/grafana/tempo/pull/1555) (@zalegrala)
* [BUGFIX] tempodb integer divide by zero error [#2167](https://github.com/grafana/tempo/issues/2167) (@kroksys)

## v2.1.1 / 2023-04-28
Expand Down
4 changes: 2 additions & 2 deletions cmd/tempo-serverless/cloud-run/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@ require (
github.com/googleapis/gax-go/v2 v2.7.0 // indirect
github.com/gorilla/handlers v1.5.1 // indirect
github.com/gorilla/mux v1.8.0 // indirect
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2 // indirect
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f // indirect
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1 // indirect
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9 // indirect
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.0.1 // indirect
Expand Down
8 changes: 4 additions & 4 deletions cmd/tempo-serverless/cloud-run/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -300,10 +300,10 @@ github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv
github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2 h1:NRaJoA3dr/JE6jFJi6RFAyHxCouTL7idPe+Y14EBsAQ=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2/go.mod h1:ulYLLoSd71AWIjxgifLO86Lndx82Yj+IcV+fFnh8tkI=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f h1:ANwIMe7kOiMNTK88tusoNDb840pWVskI4rCrdoMv5i0=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1 h1:sMRNbvPdgXIBh3LMJeZ6ykxZE7kchj8vkvmjBypu43M=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1/go.mod h1:31wpEibXmd1yC7sUBw1ilN9dhWatwQwbcOAbZGtTr/M=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9 h1:WB3bGH2f1UN6jkd6uAEWfHB8OD7dKJ0v2Oo6SNfhpfQ=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw=
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
Expand Down
4 changes: 2 additions & 2 deletions cmd/tempo-serverless/lambda/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ require (
github.com/googleapis/gax-go/v2 v2.7.0 // indirect
github.com/gorilla/handlers v1.5.1 // indirect
github.com/gorilla/mux v1.8.0 // indirect
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2 // indirect
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f // indirect
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1 // indirect
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9 // indirect
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.0.1 // indirect
Expand Down
8 changes: 4 additions & 4 deletions cmd/tempo-serverless/lambda/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -304,10 +304,10 @@ github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv
github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2 h1:NRaJoA3dr/JE6jFJi6RFAyHxCouTL7idPe+Y14EBsAQ=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2/go.mod h1:ulYLLoSd71AWIjxgifLO86Lndx82Yj+IcV+fFnh8tkI=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f h1:ANwIMe7kOiMNTK88tusoNDb840pWVskI4rCrdoMv5i0=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1 h1:sMRNbvPdgXIBh3LMJeZ6ykxZE7kchj8vkvmjBypu43M=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1/go.mod h1:31wpEibXmd1yC7sUBw1ilN9dhWatwQwbcOAbZGtTr/M=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9 h1:WB3bGH2f1UN6jkd6uAEWfHB8OD7dKJ0v2Oo6SNfhpfQ=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw=
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
Expand Down
89 changes: 89 additions & 0 deletions docs/sources/tempo/configuration/ipv6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
title: Configure IPv6
weight: 37
---

# Configure IPv6

Tempo can be configured to communicate between the components using Internet Protocol Version 6, or IPv6.
Comment thread
zalegrala marked this conversation as resolved.

> Note: In order to support this support this configuration, the underlying infrastructure must support this address family. This configuration may be used in a single-stack IPv6 environment, or in a dual-stack environment where both IPv6 and IPv4 are present. In a dual-stack scenario, only one address family may be configured at a time, and all components must be configured for that address family.
Comment thread
zalegrala marked this conversation as resolved.

## Protocol configuration

This sample listen configuration will allow the gRPC and HTTP servers to listen on IPv6, and configure the various memberlist components to enable IPv6.

```yaml
memberlist:
bind_addr:
- '::'
bind_port: 7946

compactor:
ring:
kvstore:
store: memberlist
enable_inet6: true

metrics_generator:
ring:
enable_inet6: true

ingester:
lifecycler:
address: '::'
enable_inet6: true

server:
grpc_listen_address: '[::0]'
grpc_listen_port: 9095
http_listen_address: '[::0]'
http_listen_port: 3200
```

## Kubernetes service configuration

Each service fronting the workloads will need to be configured with with `spec.ipFamilies` and `spec.ipFamilyPolicy` set. See this `compactor` example.

```yaml
apiVersion: v1
kind: Service
metadata:
labels:
name: compactor
name: compactor
namespace: trace
spec:
clusterIP: fccb::31a7
clusterIPs:
- fccb::31a7
internalTrafficPolicy: Cluster
ipFamilies:
- IPv6
ipFamilyPolicy: SingleStack
ports:
- name: compactor-http-metrics
port: 3200
protocol: TCP
targetPort: 3200
selector:
app: compactor
name: compactor
sessionAffinity: None
type: ClusterIP
```

You can check the listening service from within a pod.

```sh
❯ k exec -it compactor-55c778b8d9-2kch2 -- sh
/ # apk add iproute2
OK: 12 MiB in 27 packages
/ # ss -ltn -f inet
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
/ # ss -ltn -f inet6
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 4096 *:7946 *:*
LISTEN 0 4096 *:9095 *:*
LISTEN 0 4096 *:3200 *:*
```
6 changes: 3 additions & 3 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ require (
github.com/google/go-cmp v0.5.9
github.com/google/uuid v1.3.0
github.com/gorilla/mux v1.8.0
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1
github.com/grafana/e2e v0.1.1-0.20221018202458-cffd2bb71c7b
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645
github.com/hashicorp/go-hclog v1.4.0
Expand Down Expand Up @@ -101,11 +101,11 @@ require (
require (
github.com/Azure/go-autorest/autorest v0.11.28
github.com/googleapis/gax-go/v2 v2.7.0
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0
go.opentelemetry.io/collector/exporter v0.74.0
go.opentelemetry.io/collector/receiver v0.74.0
golang.org/x/exp v0.0.0-20221002003631-540bb7301a08
golang.org/x/exp v0.0.0-20230321023759-10a507213a29
)

require (
Expand Down
12 changes: 6 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -480,12 +480,12 @@ github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB7
github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4=
github.com/gorilla/sessions v1.2.1/go.mod h1:dk2InVEVJ0sfLlnXv9EAgkf6ecYs/i80K/zI+bUmuGM=
github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2 h1:NRaJoA3dr/JE6jFJi6RFAyHxCouTL7idPe+Y14EBsAQ=
github.com/grafana/dskit v0.0.0-20230202132725-6043e861a8e2/go.mod h1:ulYLLoSd71AWIjxgifLO86Lndx82Yj+IcV+fFnh8tkI=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1 h1:sMRNbvPdgXIBh3LMJeZ6ykxZE7kchj8vkvmjBypu43M=
github.com/grafana/dskit v0.0.0-20230417151531-1725bcc1e9a1/go.mod h1:31wpEibXmd1yC7sUBw1ilN9dhWatwQwbcOAbZGtTr/M=
github.com/grafana/e2e v0.1.1-0.20221018202458-cffd2bb71c7b h1:Ha+kSIoTutf4ytlVw/SaEclDUloYx0+FXDKJWKhNbE4=
github.com/grafana/e2e v0.1.1-0.20221018202458-cffd2bb71c7b/go.mod h1:3UsooRp7yW5/NJQBlXcTsAHOoykEhNUYXkQ3r6ehEEY=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f h1:ANwIMe7kOiMNTK88tusoNDb840pWVskI4rCrdoMv5i0=
github.com/grafana/gomemcache v0.0.0-20230105173749-11f792309e1f/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9 h1:WB3bGH2f1UN6jkd6uAEWfHB8OD7dKJ0v2Oo6SNfhpfQ=
github.com/grafana/gomemcache v0.0.0-20230316202710-a081dae0aba9/go.mod h1:PGk3RjYHpxMM8HFPhKKo+vve3DdlPUELZLSDEFehPuU=
github.com/grafana/memberlist v0.3.1-0.20220708130638-bd88e10a3d91 h1:/NipyHnOmvRsVzj81j2qE0VxsvsqhOB0f4vJIhk2qCQ=
github.com/grafana/memberlist v0.3.1-0.20220708130638-bd88e10a3d91/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE=
github.com/grafana/regexp v0.0.0-20221005093135-b4c2bcb0a4b6 h1:A3dhViTeFDSQcGOXuUi6ukCQSMyDtDISBp2z6OOo2YM=
Expand Down Expand Up @@ -1118,8 +1118,8 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0
golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4=
golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM=
golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU=
golang.org/x/exp v0.0.0-20221002003631-540bb7301a08 h1:LtBIgSqNhkuC9gA3BFjGy5obHQT1lnmNsMDFSqWzQ5w=
golang.org/x/exp v0.0.0-20221002003631-540bb7301a08/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE=
golang.org/x/exp v0.0.0-20230321023759-10a507213a29 h1:ooxPy7fPvB4kwsA2h+iBNHkAbp/4JxTSwCmvdjEYmug=
golang.org/x/exp v0.0.0-20230321023759-10a507213a29/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc=
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
Expand Down
1 change: 1 addition & 0 deletions modules/compactor/compactor_ring.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ type RingConfig struct {
InstanceInterfaceNames []string `yaml:"instance_interface_names"`
InstancePort int `yaml:"instance_port" doc:"hidden"`
InstanceAddr string `yaml:"instance_addr" doc:"hidden"`
EnableInet6 bool `yaml:"enable_inet6"`

// Injected internally
ListenPort int `yaml:"-"`
Expand Down
9 changes: 6 additions & 3 deletions modules/compactor/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ package compactor

import (
"flag"
"fmt"
"net"
"strconv"
"time"

"github.com/go-kit/log"
Expand Down Expand Up @@ -43,16 +44,18 @@ func (cfg *Config) RegisterFlagsAndApplyDefaults(prefix string, f *flag.FlagSet)
}

func toBasicLifecyclerConfig(cfg RingConfig, logger log.Logger) (ring.BasicLifecyclerConfig, error) {
instanceAddr, err := ring.GetInstanceAddr(cfg.InstanceAddr, cfg.InstanceInterfaceNames, logger)
instanceAddr, err := ring.GetInstanceAddr(cfg.InstanceAddr, cfg.InstanceInterfaceNames, logger, cfg.EnableInet6)
if err != nil {
return ring.BasicLifecyclerConfig{}, err
}

instancePort := ring.GetInstancePort(cfg.InstancePort, cfg.ListenPort)

instanceAddrPort := net.JoinHostPort(instanceAddr, strconv.Itoa(instancePort))

return ring.BasicLifecyclerConfig{
ID: cfg.InstanceID,
Addr: fmt.Sprintf("%s:%d", instanceAddr, instancePort),
Addr: instanceAddrPort,
HeartbeatPeriod: cfg.HeartbeatPeriod,
NumTokens: ringNumTokens,
}, nil
Expand Down
10 changes: 7 additions & 3 deletions modules/generator/generator_ring.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ package generator

import (
"flag"
"fmt"
"net"
"os"
"strconv"
"time"

"github.com/go-kit/log/level"
Expand All @@ -23,6 +24,7 @@ type RingConfig struct {
InstanceInterfaceNames []string `yaml:"instance_interface_names"`
InstanceAddr string `yaml:"instance_addr"`
InstancePort int `yaml:"instance_port"`
EnableInet6 bool `yaml:"enable_inet6"`

// Injected internally
ListenPort int `yaml:"-"`
Expand Down Expand Up @@ -57,17 +59,19 @@ func (cfg *RingConfig) ToRingConfig() ring.Config {
}

func (cfg *RingConfig) toLifecyclerConfig() (ring.BasicLifecyclerConfig, error) {
instanceAddr, err := ring.GetInstanceAddr(cfg.InstanceAddr, cfg.InstanceInterfaceNames, log.Logger)
instanceAddr, err := ring.GetInstanceAddr(cfg.InstanceAddr, cfg.InstanceInterfaceNames, log.Logger, cfg.EnableInet6)
if err != nil {
level.Error(log.Logger).Log("msg", "failed to get instance address", "err", err)
return ring.BasicLifecyclerConfig{}, err
}

instancePort := ring.GetInstancePort(cfg.InstancePort, cfg.ListenPort)

instanceAddrPort := net.JoinHostPort(instanceAddr, strconv.Itoa(instancePort))

return ring.BasicLifecyclerConfig{
ID: cfg.InstanceID,
Addr: fmt.Sprintf("%s:%d", instanceAddr, instancePort),
Addr: instanceAddrPort,
HeartbeatPeriod: cfg.HeartbeatPeriod,
NumTokens: ringNumTokens,
}, nil
Expand Down
50 changes: 50 additions & 0 deletions operations/jsonnet/microservices/common.libsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
util+:: {
local k = import 'ksonnet-util/kausal.libsonnet',
local container = k.core.v1.container,
local service = k.core.v1.service,

withResources(resources)::
k.util.resourcesRequests(resources.requests.cpu, resources.requests.memory) +
Expand All @@ -12,5 +13,54 @@
container.mixin.readinessProbe.httpGet.withPort($._config.port) +
container.mixin.readinessProbe.withInitialDelaySeconds(15) +
container.mixin.readinessProbe.withTimeoutSeconds(1),

withInet6():: {
tempo_compactor_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_distributor_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_ingester_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_querier_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_query_frontend_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_query_frontend_discovery_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
tempo_metrics_generator_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
gossip_ring_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
ingest_service+:
service.mixin.spec.withIpFamilies(['IPv6']),
memcached+: {
service+:
service.mixin.spec.withIpFamilies(['IPv6']),
},
tempo_config+:: {
server+: {
http_listen_address: '[::0]',
grpc_listen_address: '[::0]',
},
ingester+: {
lifecycler+: {
enable_inet6: true,
},
},
memberlist+: {
bind_addr: ['::'],
},
compactor+: {
ring+: {
enable_inet6: true,
},
},
metrics_generator+: {
ring+: {
enable_inet6: true,
},
},
},
},
},
}
4 changes: 2 additions & 2 deletions pkg/cache/memcached_client.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ package cache
import (
"context"
"flag"
"fmt"
"net"
"sort"
"strconv"
"strings"
"sync"
"time"
Expand Down Expand Up @@ -253,7 +253,7 @@ func (c *memcachedClient) updateMemcacheServers() error {
return err
}
for _, srv := range addrs {
servers = append(servers, fmt.Sprintf("%s:%d", srv.Target, srv.Port))
servers = append(servers, net.JoinHostPort(srv.Target, strconv.Itoa(int(srv.Port))))
}
}

Expand Down
Loading