Use internal.Duration for CacheTTL and go fmt

This commit is contained in:
John Engelman 2016-05-05 14:19:54 -05:00
parent c12b89c8ca
commit a4c675dd50
2 changed files with 12 additions and 12 deletions

View File

@ -9,13 +9,13 @@ import (
) )
type AwsCredentials struct { type AwsCredentials struct {
Region string `toml:"region"` // AWS Region Region string `toml:"region"` // AWS Region
AccessKey string `toml:"access_key"` // Explicit AWS Access Key ID AccessKey string `toml:"access_key"` // Explicit AWS Access Key ID
SecretKey string `toml:"secret_key"` // Explicit AWS Secret Access Key SecretKey string `toml:"secret_key"` // Explicit AWS Secret Access Key
RoleArn string `toml:"role_arn"` // Role ARN to assume RoleArn string `toml:"role_arn"` // Role ARN to assume
Profile string `toml:"profile"` // the shared profile to use Profile string `toml:"profile"` // the shared profile to use
SharedCredentialFile string `toml:"shared_credential_file"` // location of shared credential file SharedCredentialFile string `toml:"shared_credential_file"` // location of shared credential file
Token string `toml:"token"` // STS session token Token string `toml:"token"` // STS session token
} }
func (c *AwsCredentials) Credentials() client.ConfigProvider { func (c *AwsCredentials) Credentials() client.ConfigProvider {

View File

@ -22,7 +22,7 @@ type (
Delay internal.Duration `toml:"delay"` Delay internal.Duration `toml:"delay"`
Namespace string `toml:"namespace"` Namespace string `toml:"namespace"`
Metrics []*Metric `toml:"metrics"` Metrics []*Metric `toml:"metrics"`
CacheTTL string `toml:"cache_ttl"` CacheTTL internal.Duration `toml:"cache_ttl"`
client cloudwatchClient client cloudwatchClient
metricCache *MetricCache metricCache *MetricCache
} }
@ -135,7 +135,7 @@ func (c *CloudWatch) Gather(acc telegraf.Accumulator) error {
for _, metric := range allMetrics { for _, metric := range allMetrics {
if isSelected(metric, m.Dimensions) { if isSelected(metric, m.Dimensions) {
metrics = append(metrics, &cloudwatch.Metric{ metrics = append(metrics, &cloudwatch.Metric{
Namespace: aws.String(c.Namespace), Namespace: aws.String(c.Namespace),
MetricName: aws.String(name), MetricName: aws.String(name),
Dimensions: metric.Dimensions, Dimensions: metric.Dimensions,
}) })
@ -177,8 +177,9 @@ func (c *CloudWatch) Gather(acc telegraf.Accumulator) error {
func init() { func init() {
inputs.Add("cloudwatch", func() telegraf.Input { inputs.Add("cloudwatch", func() telegraf.Input {
ttl, _ := time.ParseDuration("1hr")
return &CloudWatch{ return &CloudWatch{
CacheTTL: "1hr", CacheTTL: internal.Duration{Duration: ttl},
} }
}) })
} }
@ -224,11 +225,10 @@ func (c *CloudWatch) fetchNamespaceMetrics() (metrics []*cloudwatch.Metric, err
more = token != nil more = token != nil
} }
cacheTTL, _ := time.ParseDuration(c.CacheTTL)
c.metricCache = &MetricCache{ c.metricCache = &MetricCache{
Metrics: metrics, Metrics: metrics,
Fetched: time.Now(), Fetched: time.Now(),
TTL: cacheTTL, TTL: c.CacheTTL.Duration,
} }
return return