Prometheus To Cloudwatch Versions Save

Utility for scraping Prometheus metrics from a Prometheus client endpoint and publishing them to CloudWatch

0.14.0

3 years ago

what

  • Use Go modules for dependencies

why

  • Keep up to date

0.13.0

3 years ago

what

  • Close connection to scrape target after retrieving data

why

  • Fixes connection leakage

0.12.1

4 years ago

what

  • Add missing docs for FORCE_HIGH_RES param

why

  • Missed in the previous PR

0.12.0

4 years ago

what

  • Add a flag to publish metrics with high resolution

why

  • This tool only published metrics with high resolution when the original prometheus metrics have the label _cw_high_res.

  • However, in some cases where we run exporters and prom-to-cloudwatch is connected to the exporters, we can't add the high res label

0.11.0

4 years ago

what

  • Add aws_session_token argument, to enable use of temp AWS credentials

why

  • This PR addresses a minor issue whereby temporary AWS credentials cannot be used to authenticate the AWS CloudWatch client. Temporary credentials require the use of an AWS_SESSION_TOKEN. This is currently set to "" in the NewStaticCredentials invocation.

  • This is mainly for manual testing purposes, as it is likely that most deployments of this app would be within an EC2 instance or Kubernetes cluster etc., where CW permission can be resolved by the chain of credential providers.

0.10.0

4 years ago

what

  • Add ability to include dimensions per-metric

why

  • Compliments #28
  • It's useful to have a whitelist option for dimensions per-metric as well

0.9.0

4 years ago

what

  • Add ability to exclude dimensions per-metric

why

  • This feature allows users to exclude a set of dimensions on a per-metric basis. This attempts to deal with the 10 dimensions/metric constraint in CloudWatch, where sometimes the valuable dimensions are left out.

The format is:

EXCLUDE_DIMENSIONS_FOR_METRICS=metric_glob*=dim1,dim2;metric2_*=dim3;
# will exclude 'dim1' and 'dim2' from any metric matching 'metric_glob*'
# and 'dim3' from any metric matching 'metric2_*'
  • Closes #27

0.8.0

4 years ago

what

  • Bug fix for helm template

why

  • When using the helm chart, the following error is thrown:

error validating data: ValidationError(Deployment.spec.template.spec): unknown field "resources" in io.k8s.api.core.v1.PodSpec;

This is because helm chart Deployment has resources placed at Deployment.spec.template.spec.resources where if should be at Deployment.spec.template.spec.containers[0].resources instead

0.7.0

4 years ago

what

  • Simplify conditional removing 'else' statement

why

  • Simplify if statement by removing the else block once it has no logical effect on how code will execute

0.6.0

4 years ago

what

  • Compress CloudWatch API request payload using gzip

why

  • CloudWatch appears to be happily consuming gzip-compressed metric payloads
  • 3x-5x reduction in payload size could be archived