Skip to content

tidbcloud/aws-limits-exporter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWS Limits Exporter

This is a small Go server that provides a Prometheus metrics endpoint that exposes AWS usage and limits as reported by the AWS Trusted Advisor API.

Usage

There are Docker images ready for use:

# Start exporter container
$ docker run -it --rm -p 8080:8080 -e AWS_ACCESS_KEY=<KEY> -e AWS_SECRET_ACCESS_KEY=<SECRET> \
      danielfm/aws-limits-exporter:latest -logtostderr

# Scrape metrics
$ curl http://localhost:8080/metrics

AWS Credentials

For this to work, it must have access to AWS credentials in ~/.aws/credentials, or via AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables.

The following IAM policy describes which actions the user must be able to perform in order for this server to work:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "support:DescribeTrustedAdvisorCheckResult",
                "support:RefreshTrustedAdvisorCheck"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

Flags

Usage of ./bin/aws-limits-exporter:
  -alsologtostderr
        log to standard error as well as files
  -listen-address string
        The address to listen on for HTTP requests. (default ":8080")
  -log_backtrace_at value
        when logging hits line file:N, emit a stack trace
  -log_dir string
        If non-empty, write log files in this directory
  -logtostderr
        log to standard error instead of files
  -region string
        The AWS region to show metrics for (default all regions).
  -stderrthreshold value
        logs at or above this threshold go to stderr
  -v value
        log level for V logs
  -vmodule value
        comma-separated list of pattern=N settings for file-filtered logging

Donate

If this project is useful for you, buy me a beer!

Bitcoin: bc1qtwyfcj7pssk0krn5wyfaca47caar6nk9yyc4mu

License

Copyright (C) Daniel Fernandes Martins

Distributed under the New BSD License. See LICENSE for further details.

About

Expose AWS service usage and limits to Prometheus

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 87.4%
  • Makefile 8.2%
  • Dockerfile 4.4%