Skip to content

tcaty/dockerhub-rate-limit-exporter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docker Hub rate limit exporter

This tool created for monitoring Dokcer Hub rate limits according to this tutorial.

Usage

There are two commands:

  • fetch - fetch and print current rate limits to console
  • scrape - scrape rate limits with some interval and export them in Prometheus format

fetch

If you want to understand your rate limits immediatly, you should use command below:

docker run --rm -it tcaty/dockerhub-rate-limit-exporter fetch

Output:

Mode: anonymous
Repository: ratelimitpreview/test
Host: xxx.xxx.xxx.xxx
RateLimit [Total]: 100
RateLimit [Remaining]: 100

scrape

If you want to have access to rate limits usage history, you should run scraper command:

docker run \
  --rm --publish "8080:8080" \
  -it tcaty/dockerhub-rate-limit-exporter scrape

Check metrics with command:

curl -s 0.0.0.0:8080/metrics | head -n 6

Output:

# HELP dockerhub_rate_limit_remaining RateLimit-Remaining
# TYPE dockerhub_rate_limit_remaining gauge
dockerhub_rate_limit_remaining{host="xxx.xxx.xxx.xxx",mode="anonymous",username=""} 100
# HELP dockerhub_rate_limit_total RateLimit-Limit
# TYPE dockerhub_rate_limit_total gauge
dockerhub_rate_limit_total{host="xxx.xxx.xxx.xxx",mode="anonymous",username=""} 100

Configuration

You can configure exporter via command line argmunets. Use command below to display available flags:

docker run --rm -it dockerhub-rate-limit-exporter --help

Also you can set flag value by using environment variable. For example, flag --username corresponds to $USERNAME env variable.

Examples

There are two examples in examples/ folder:

  • simple - simple example with one exporter instance in anonymous mode.
  • auth-n-anon - example with several exporter instances in anonymous and authenticated modes.

Both of them provide provisioning grafana dashboard for rate limit metrics. It looks like this:

Без имени

To run any of them move to their folder and run command:

docker-compose up -d

Then open in browser:

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors