Exports limits and usage for metrics available through the GCP APIs (currently only supports Compute Engine).
- Set up a service account in the project you wish to monitor. The account should be given the following permissions:
- compute.projects.get
- compute.regions.list
- Authentication is performed using the standard Application Default Credentials
- To use a credentials.json key file export the environment variable
GOOGLE_APPLICATION_CREDENTIALS=path-to-credentials.json
- The exporter need to know which project to monitor quotas for
- Specify project using
--gcp.project_id
- Export environment variable
GOOGLE_PROJECT_ID
- Fetch from compute metadata
http://metadata.google.internal/computeMetadata/v1/project/project-id
- Copy the example file and add your project id to it
- Change the volume to point to your credentials file if different
- Run
docker-compose up
and you'll have a prometheus instance running at http://localhost:9090 and a gcp-quota-exporter instance running at http://localhost:9592.
docker build -t gcp-quota-exporter .
docker run -it --rm -v $(pwd)/credentials.json:/app/credentials.json -e GOOGLE_APPLICATION_CREDENTIALS=/app/credentials.json -e GOOGLE_PROJECT_ID=project_id gcp-quota-exporter
docker run -it --rm -v $(pwd)/credentials.json:/app/credentials.json -e GOOGLE_APPLICATION_CREDENTIALS=/app/credentials.json -e GOOGLE_PROJECT_ID=project_id mintel/gcp-quota-exporter