Skip to content

Commit 1d09443

Browse files
pranavsriram8l-technicore
authored andcommitted
Add ds endpoint for telemetry client in case of SingleStack IPv6
1 parent e926745 commit 1d09443

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

pkg/metrics/pusher.go

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import (
1818
"context"
1919
"fmt"
2020
"os"
21+
"strings"
2122
"time"
2223

2324
"github.com/pkg/errors"
@@ -32,11 +33,14 @@ import (
3233
)
3334

3435
const (
35-
metricSubmissionTimeout = time.Second * 5
36-
jitterFactor = 0.1
37-
configFilePath = "/etc/oci/config.yaml"
38-
telemetryIngestionServiceName = "telemetry-ingestion"
39-
configFileName = "config.yaml"
36+
metricSubmissionTimeout = time.Second * 5
37+
jitterFactor = 0.1
38+
configFilePath = "/etc/oci/config.yaml"
39+
telemetryIngestionServiceName = "telemetry-ingestion"
40+
telemetryIngestionServiceNameDualStack = "ds.telemetry-ingestion"
41+
configFileName = "config.yaml"
42+
Ipv6Stack = "IPv6"
43+
ClusterIpFamilyEnv = "CLUSTER_IP_FAMILY"
4044
)
4145

4246
// MonitoringClient is wrapper interface over the oci golang monitoring client
@@ -101,13 +105,19 @@ func NewMetricPusher(logger *zap.SugaredLogger) (*MetricPusher, error) {
101105
return nil, nil
102106
}
103107

108+
telemetryEndpoint := common.StringToRegion(cfg.RegionKey).Endpoint(telemetryIngestionServiceName)
109+
// dual stack endpoint to be called in case of SingleStack IPv6 only
110+
clusterIpFamily, ok := os.LookupEnv(ClusterIpFamilyEnv)
111+
if ok && strings.EqualFold(clusterIpFamily, Ipv6Stack) {
112+
telemetryEndpoint = common.StringToRegion(cfg.RegionKey).Endpoint(telemetryIngestionServiceNameDualStack)
113+
}
114+
104115
cp, err := auth.InstancePrincipalConfigurationProvider()
105116
if err != nil {
106117
logger.With("error", err).Error("error occurred while creating auth provider")
107118
return nil, err
108119
}
109120

110-
telemetryEndpoint := common.StringToRegion(cfg.RegionKey).Endpoint(telemetryIngestionServiceName)
111121
client, err := monitoring.NewMonitoringClientWithConfigurationProvider(cp)
112122
if err != nil {
113123
logger.With(err).Error("error occurred while creating monitoring client")

0 commit comments

Comments
 (0)