From 110f157621b873fed8f529f7024be3005efe219d Mon Sep 17 00:00:00 2001 From: Mitsuhiro Tanda Date: Thu, 7 Sep 2017 15:56:16 +0900 Subject: [PATCH] parse duration --- pkg/tsdb/cloudwatch/cloudwatch.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkg/tsdb/cloudwatch/cloudwatch.go b/pkg/tsdb/cloudwatch/cloudwatch.go index 58c14685d96..d86acfa6ee4 100644 --- a/pkg/tsdb/cloudwatch/cloudwatch.go +++ b/pkg/tsdb/cloudwatch/cloudwatch.go @@ -254,9 +254,19 @@ func parseQuery(model *simplejson.Json) (*CloudWatchQuery, error) { p = "60" } } - period, err := strconv.Atoi(p) - if err != nil { - return nil, err + + period := 300 + if regexp.MustCompile(`^\d+$`).Match([]byte(p)) { + period, err = strconv.Atoi(p) + if err != nil { + return nil, err + } + } else { + d, err := time.ParseDuration(p) + if err != nil { + return nil, err + } + period = int(d.Seconds()) } alias := model.Get("alias").MustString("{{metric}}_{{stat}}")