Skip to content

Commit 5c75f28

Browse files
mackjmrjriguera
authored andcommitted
[chore] [exporter/signalfx] Use NewDefaultClientConfig instead of manually creating struct (open-telemetry#35543)
**Description:** This PR makes usage of `NewDefaultClientConfig` instead of manually creating the confighttp.ClientConfig struct. **Link to tracking Issue:** open-telemetry#35457
1 parent 05faa30 commit 5c75f28

File tree

3 files changed

+33
-14
lines changed

3 files changed

+33
-14
lines changed

exporter/signalfxexporter/config_test.go

+22-5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
package signalfxexporter
55

66
import (
7+
"net/http"
78
"net/url"
89
"path/filepath"
910
"testing"
@@ -38,6 +39,10 @@ func TestLoadConfig(t *testing.T) {
3839
seventy := 70
3940
hundred := 100
4041
idleConnTimeout := 30 * time.Second
42+
defaultMaxIdleConns := http.DefaultTransport.(*http.Transport).MaxIdleConns
43+
defaultMaxIdleConnsPerHost := http.DefaultTransport.(*http.Transport).MaxIdleConnsPerHost
44+
defaultMaxConnsPerHost := http.DefaultTransport.(*http.Transport).MaxConnsPerHost
45+
defaultIdleConnTimeout := http.DefaultTransport.(*http.Transport).IdleConnTimeout
4146

4247
tests := []struct {
4348
id component.ID
@@ -50,9 +55,10 @@ func TestLoadConfig(t *testing.T) {
5055
Realm: "ap0",
5156
ClientConfig: confighttp.ClientConfig{
5257
Timeout: 10 * time.Second,
53-
Headers: nil,
58+
Headers: map[string]configopaque.String{},
5459
MaxIdleConns: &hundred,
5560
MaxIdleConnsPerHost: &hundred,
61+
MaxConnsPerHost: &defaultMaxConnsPerHost,
5662
IdleConnTimeout: &idleConnTimeout,
5763
HTTP2ReadIdleTimeout: 10 * time.Second,
5864
HTTP2PingTimeout: 10 * time.Second,
@@ -86,8 +92,13 @@ func TestLoadConfig(t *testing.T) {
8692
ExcludeProperties: nil,
8793
Correlation: &correlation.Config{
8894
ClientConfig: confighttp.ClientConfig{
89-
Endpoint: "",
90-
Timeout: 5 * time.Second,
95+
Endpoint: "",
96+
Timeout: 5 * time.Second,
97+
Headers: map[string]configopaque.String{},
98+
MaxIdleConns: &defaultMaxIdleConns,
99+
MaxIdleConnsPerHost: &defaultMaxIdleConnsPerHost,
100+
MaxConnsPerHost: &defaultMaxConnsPerHost,
101+
IdleConnTimeout: &defaultIdleConnTimeout,
91102
},
92103
StaleServiceTimeout: 5 * time.Minute,
93104
SyncAttributes: map[string]string{
@@ -120,6 +131,7 @@ func TestLoadConfig(t *testing.T) {
120131
},
121132
MaxIdleConns: &seventy,
122133
MaxIdleConnsPerHost: &seventy,
134+
MaxConnsPerHost: &defaultMaxConnsPerHost,
123135
IdleConnTimeout: &idleConnTimeout,
124136
HTTP2ReadIdleTimeout: 10 * time.Second,
125137
HTTP2PingTimeout: 10 * time.Second,
@@ -246,8 +258,13 @@ func TestLoadConfig(t *testing.T) {
246258
},
247259
Correlation: &correlation.Config{
248260
ClientConfig: confighttp.ClientConfig{
249-
Endpoint: "",
250-
Timeout: 5 * time.Second,
261+
Endpoint: "",
262+
Timeout: 5 * time.Second,
263+
Headers: map[string]configopaque.String{},
264+
MaxIdleConns: &defaultMaxIdleConns,
265+
MaxIdleConnsPerHost: &defaultMaxIdleConnsPerHost,
266+
MaxConnsPerHost: &defaultMaxConnsPerHost,
267+
IdleConnTimeout: &defaultIdleConnTimeout,
251268
},
252269
StaleServiceTimeout: 5 * time.Minute,
253270
SyncAttributes: map[string]string{

exporter/signalfxexporter/factory.go

+8-8
Original file line numberDiff line numberDiff line change
@@ -50,18 +50,18 @@ func createDefaultConfig() component.Config {
5050
maxConnCount := defaultMaxConns
5151
idleConnTimeout := 30 * time.Second
5252
timeout := 10 * time.Second
53+
clientConfig := confighttp.NewDefaultClientConfig()
54+
clientConfig.Timeout = defaultHTTPTimeout
55+
clientConfig.MaxIdleConns = &maxConnCount
56+
clientConfig.MaxIdleConnsPerHost = &maxConnCount
57+
clientConfig.IdleConnTimeout = &idleConnTimeout
58+
clientConfig.HTTP2ReadIdleTimeout = defaultHTTP2ReadIdleTimeout
59+
clientConfig.HTTP2PingTimeout = defaultHTTP2PingTimeout
5360

5461
return &Config{
5562
BackOffConfig: configretry.NewDefaultBackOffConfig(),
5663
QueueSettings: exporterhelper.NewDefaultQueueConfig(),
57-
ClientConfig: confighttp.ClientConfig{
58-
Timeout: defaultHTTPTimeout,
59-
MaxIdleConns: &maxConnCount,
60-
MaxIdleConnsPerHost: &maxConnCount,
61-
IdleConnTimeout: &idleConnTimeout,
62-
HTTP2ReadIdleTimeout: defaultHTTP2ReadIdleTimeout,
63-
HTTP2PingTimeout: defaultHTTP2PingTimeout,
64-
},
64+
ClientConfig: clientConfig,
6565
AccessTokenPassthroughConfig: splunk.AccessTokenPassthroughConfig{
6666
AccessTokenPassthrough: true,
6767
},

exporter/signalfxexporter/internal/correlation/config.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@ import (
1616

1717
// DefaultConfig returns default configuration correlation values.
1818
func DefaultConfig() *Config {
19+
clientConfig := confighttp.NewDefaultClientConfig()
20+
clientConfig.Timeout = 5 * time.Second
1921
return &Config{
20-
ClientConfig: confighttp.ClientConfig{Timeout: 5 * time.Second},
22+
ClientConfig: clientConfig,
2123
StaleServiceTimeout: 5 * time.Minute,
2224
SyncAttributes: map[string]string{
2325
conventions.AttributeK8SPodUID: conventions.AttributeK8SPodUID,

0 commit comments

Comments
 (0)