diff --git a/CHANGELOG.md b/CHANGELOG.md index 280a518762a02f919b44446db02d333ebe788796..dcd3b43d3afc6e1331c87e85e40fc2f09114922f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,13 @@ - [#1949](https://github.com/influxdata/telegraf/issues/1949): Fix windows `net` plugin. -## v1.1 [unreleased] +## v1.1.1 [unreleased] + +### Bugfixes + +- [#2023](https://github.com/influxdata/telegraf/issues/2023): Fix issue parsing toml durations with single quotes. + +## v1.1.0 [2016-11-07] ### Release Notes diff --git a/internal/internal.go b/internal/internal.go index 28b37c09f2f1bd6814c8631dd926887cdfeb3236..aae7aa773f87e9299d28c8051cd0c4ea20ecd10a 100644 --- a/internal/internal.go +++ b/internal/internal.go @@ -35,8 +35,9 @@ type Duration struct { // UnmarshalTOML parses the duration from the TOML config file func (d *Duration) UnmarshalTOML(b []byte) error { var err error + b = bytes.Trim(b, `'`) - // see if we can straight convert it + // see if we can directly convert it d.Duration, err = time.ParseDuration(string(b)) if err == nil { return nil diff --git a/internal/internal_test.go b/internal/internal_test.go index 0d98218575be8e5afaf604303a7cddd5a523a3bf..aafc1929a57f51700f23f7bf416bbce20a1213b0 100644 --- a/internal/internal_test.go +++ b/internal/internal_test.go @@ -142,6 +142,10 @@ func TestDuration(t *testing.T) { d.UnmarshalTOML([]byte(`1s`)) assert.Equal(t, time.Second, d.Duration) + d = Duration{} + d.UnmarshalTOML([]byte(`'1s'`)) + assert.Equal(t, time.Second, d.Duration) + d = Duration{} d.UnmarshalTOML([]byte(`10`)) assert.Equal(t, 10*time.Second, d.Duration)