A prometheus exporter for monitoring pull requests for specified users in the last X number of days.
MIT License
A prometheus exporter for monitoring pull requests for specified users in the last X number of days. Useful for tracking things like hacktoberfest within your org.
Once started, application will be accessible at http://localhost:8080/metrics
# Install with Go
go install github.com/circa10a/github-pr-exporter@latest
# Execute
❯ github-pr-exporter -h
Usage of ./github-pr-exporter:
--config string Path to config file (default "./config.yaml")
--days-ago int How many days back to search for pull requests (default 90)
--ignore-user-repos Ignore the user's own repos
--interval int How many seconds to wait before refreshing pull request data. Defaults to 6 hours (default 21600)
--port int What port to listen on (default 8080)
pflag: help requested
The CLI expects a YAML config file like so:
---
config:
users:
- circa10a
- sindresorhus
You can also look in the examples directory
docker run -p 8080:8080 -v $PWD/config.yaml:/config.yaml circa10a/github-pr-exporter
First, update examples/config.yaml
Then, to start a preconfigured prometheus + grafana + exporter stack:
docker compose up
Then you can browse the preconfigured dashboard at http://localhost:3000/d/h_PRluMnk/pull-requests?orgId=1
Name | Type | Cardinality | Help |
---|---|---|---|
pull_request | gauge | 4 | A pull request from a user in config. Contains labels user , created_at , link , and status
|
pull_request_total | gauge | 0 | Total number of pull requests created by all users in the configured time window (previous 90 days) |