This tool helps developers see how popular their code is and how it's being used.
It works with Prometheus and Grafana to collect data from Github, store it in Prometheus, and create visualizations with Grafana. You can use Grafana to customize the data you collect and create dashboards that fit your needs.
To get started with this package, you'll need to create a Github API token. Once you have that, you can start collecting metrics data.
# Gitgub API token
GITHUB_TOKEN=
# Github repositories to follow (comma separated)
GITHUB_REPOSITORIES=
version: "3.7"
services:
twitter-metrics:
image: ghcr.io/metrixio/github-public:latest
environment:
GITHUB_TOKEN: ...
GITHUB_REPOSITORIES: ...
restart: on-failure
prometheus:
image: prom/prometheus
volumes:
- ./runtime/prometheus:/prometheus
restart: always
grafana:
image: grafana/grafana
depends_on:
- prometheus
ports:
- 3000:3000
volumes:
- ./runtime/grafana:/var/lib/grafana
restart: always
composer create-project metrixio/github-public
Define the repositories you want to track in .env
file
# Gitgub API token
GITHUB_TOKEN=xxx
# Github repositories to follow (comma separated)
GITHUB_REPOSITORIES=spiral/framework,...
Once the project is installed and configured you can start application server:
./rr serve
Metrics will be available on http://127.0.0.1:2112.
Note: To fix unable to open metrics page, change metrics address in RoadRunner config file to
127.0.0.1:2112
.
The package is built with some of the best tools out there for PHP. It's powered by Spiral Framework, which makes it super fast and efficient, and it uses RoadRunner as the server, which is a really great tool for collecting metrics data for Prometheus.