go-kit / go-kit/kit

Support High-Resolution metrics for CloudWatch

Open
#1,038 1 comment 3 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
27.4k
Forks
2.4k
PR merge metrics
No merged PRs in 30d

Description

Hi there.

I'm using the kit to send custom metrics to Amazon CloudWatch.
By default the standard resolution has one-minute granularity, but there is a possibility to use high resolution, with data at a granularity of one second. [More info (amazon docs)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html#high-resolution-metrics)

```go
// Encapsulates the information sent to either create a metric or add new values
// to be aggregated into an existing metric.
type MetricDatum struct {
...

// Valid values are 1 and 60. Setting this to 1 specifies this metric as a high-resolution
// metric, so that CloudWatch stores the metric with sub-minute resolution down
// to one second. Setting this to 60 specifies this metric as a regular-resolution
// metric, which CloudWatch stores at 1-minute resolution. Currently, high resolution
// is available only for custom metrics. For more information about high-resolution
// metrics, see High-Resolution Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html#high-resolution-metrics)
// in the Amazon CloudWatch User Guide.
//
// This field is optional, if you do not specify it the default of 60 is used.
StorageResolution *int64 `min:"1" type:"integer"`

...
}
```

So, now using this kit there no possibility to set this parameter to custom value before sending to CloudWatch and it's set to 60 by default.
I'd like to implement this feature. I think it can be really useful for anyone who uses this kit to send custom metrics to Amazon CloudWatch.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.