diff --git a/plugins/outputs/influxdb/http_test.go b/plugins/outputs/influxdb/http_test.go index 1ce30642b..c3e901ce5 100644 --- a/plugins/outputs/influxdb/http_test.go +++ b/plugins/outputs/influxdb/http_test.go @@ -1062,7 +1062,7 @@ func TestDBRPTagsCreateDatabaseNotCalledOnRetryAfterForbidden(t *testing.T) { } output := influxdb.InfluxDB{ - URL: u.String(), + URLs: []string{u.String()}, Database: "telegraf", DatabaseTag: "database", Log: testutil.Logger{}, @@ -1149,7 +1149,7 @@ func TestDBRPTagsCreateDatabaseCalledOnDatabaseNotFound(t *testing.T) { } output := influxdb.InfluxDB{ - URL: u.String(), + URLs: []string{u.String()}, Database: "telegraf", DatabaseTag: "database", Log: testutil.Logger{}, @@ -1203,7 +1203,7 @@ func TestDBNotFoundShouldDropMetricWhenSkipDatabaseCreateIsTrue(t *testing.T) { logger := &testutil.CaptureLogger{} output := influxdb.InfluxDB{ - URL: u.String(), + URLs: []string{u.String()}, Database: "telegraf", DatabaseTag: "database", SkipDatabaseCreation: true, diff --git a/plugins/outputs/influxdb/influxdb.go b/plugins/outputs/influxdb/influxdb.go index eb71c651f..8595a22b9 100644 --- a/plugins/outputs/influxdb/influxdb.go +++ b/plugins/outputs/influxdb/influxdb.go @@ -36,7 +36,6 @@ type Client interface { // InfluxDB struct is the primary data structure for the plugin type InfluxDB struct { - URL string `toml:"url" deprecated:"0.1.9;1.30.0;use 'urls' instead"` URLs []string `toml:"urls"` Username config.Secret `toml:"username"` Password config.Secret `toml:"password"` @@ -55,16 +54,14 @@ type InfluxDB struct { ContentEncoding string `toml:"content_encoding"` SkipDatabaseCreation bool `toml:"skip_database_creation"` InfluxUintSupport bool `toml:"influx_uint_support"` + Precision string `toml:"precision" deprecated:"1.0.0;option is ignored"` + Log telegraf.Logger `toml:"-"` tls.ClientConfig - Precision string `toml:"precision" deprecated:"1.0.0;option is ignored"` - clients []Client CreateHTTPClientF func(config *HTTPConfig) (Client, error) CreateUDPClientF func(config *UDPConfig) (Client, error) - - Log telegraf.Logger } func (*InfluxDB) SampleConfig() string { @@ -74,17 +71,11 @@ func (*InfluxDB) SampleConfig() string { func (i *InfluxDB) Connect() error { ctx := context.Background() - urls := make([]string, 0, len(i.URLs)) - urls = append(urls, i.URLs...) - if i.URL != "" { - urls = append(urls, i.URL) + if len(i.URLs) == 0 { + i.URLs = []string{defaultURL} } - if len(urls) == 0 { - urls = append(urls, defaultURL) - } - - for _, u := range urls { + for _, u := range i.URLs { parts, err := url.Parse(u) if err != nil { return fmt.Errorf("error parsing url [%q]: %w", u, err) diff --git a/plugins/outputs/influxdb/influxdb_test.go b/plugins/outputs/influxdb/influxdb_test.go index 3f42114fb..29c5c3c97 100644 --- a/plugins/outputs/influxdb/influxdb_test.go +++ b/plugins/outputs/influxdb/influxdb_test.go @@ -53,8 +53,7 @@ func (c *MockClient) SetLogger(log telegraf.Logger) { func TestDeprecatedURLSupport(t *testing.T) { var actual *influxdb.UDPConfig output := influxdb.InfluxDB{ - URL: "udp://localhost:8089", - + URLs: []string{"udp://localhost:8089"}, CreateUDPClientF: func(config *influxdb.UDPConfig) (influxdb.Client, error) { actual = config return &MockClient{}, nil