Skip to content

Commit

Permalink
Support a proxy in splunk log driver
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Nephin <[email protected]>
  • Loading branch information
dnephin committed Feb 7, 2018
1 parent 7d29652 commit 3c4537d
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
1 change: 1 addition & 0 deletions daemon/logger/splunk/splunk.go
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@ func New(info logger.Info) (logger.Logger, error) {

transport := &http.Transport{
TLSClientConfig: tlsConfig,
Proxy: http.ProxyFromEnvironment,
}
client := &http.Client{
Transport: transport,
Expand Down
32 changes: 32 additions & 0 deletions daemon/logger/splunk/splunk_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,14 @@ import (
"compress/gzip"
"context"
"fmt"
"net/http"
"os"
"runtime"
"testing"
"time"

"github.com/docker/docker/daemon/logger"
"github.com/gotestyourself/gotestyourself/env"
"github.com/stretchr/testify/require"
)

Expand Down Expand Up @@ -82,6 +84,36 @@ func TestNewMissedToken(t *testing.T) {
}
}

func TestNewWithProxy(t *testing.T) {
proxy := "http://proxy.testing:8888"
reset := env.Patch(t, "HTTP_PROXY", proxy)
defer reset()

// must not be localhost
splunkURL := "http://example.com:12345"
logger, err := New(logger.Info{
Config: map[string]string{
splunkURLKey: splunkURL,
splunkTokenKey: "token",
splunkVerifyConnectionKey: "false",
},
ContainerID: "containeriid",
})
require.NoError(t, err)
splunkLogger := logger.(*splunkLoggerInline)

proxyFunc := splunkLogger.transport.Proxy
require.NotNil(t, proxyFunc)

req, err := http.NewRequest("GET", splunkURL, nil)
require.NoError(t, err)

proxyURL, err := proxyFunc(req)
require.NoError(t, err)
require.NotNil(t, proxyURL)
require.Equal(t, proxy, proxyURL.String())
}

// Test default settings
func TestDefault(t *testing.T) {
hec := NewHTTPEventCollectorMock(t)
Expand Down

0 comments on commit 3c4537d

Please sign in to comment.