{"id":21134105,"url":"https://github.com/horgix/github-metrics-exporter","last_synced_at":"2026-05-17T11:34:09.343Z","repository":{"id":36993277,"uuid":"504125016","full_name":"Horgix/github-metrics-exporter","owner":"Horgix","description":"Gathering of various GitHub metrics + export in Prometheus/Openmetrics format","archived":false,"fork":false,"pushed_at":"2023-03-13T13:08:20.000Z","size":173,"stargazers_count":1,"open_issues_count":10,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-05T17:46:08.931Z","etag":null,"topics":["github","metrics","metrics-exporter","prometheus"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Horgix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-16T11:16:09.000Z","updated_at":"2022-10-16T12:09:41.000Z","dependencies_parsed_at":"2023-02-18T06:45:18.590Z","dependency_job_id":null,"html_url":"https://github.com/Horgix/github-metrics-exporter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Horgix%2Fgithub-metrics-exporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Horgix%2Fgithub-metrics-exporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Horgix%2Fgithub-metrics-exporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Horgix%2Fgithub-metrics-exporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Horgix","download_url":"https://codeload.github.com/Horgix/github-metrics-exporter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243581060,"owners_count":20314162,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","metrics","metrics-exporter","prometheus"],"created_at":"2024-11-20T06:23:15.957Z","updated_at":"2026-05-17T11:34:04.324Z","avatar_url":"https://github.com/Horgix.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub Metrics Exporter\n\n[![GitHub Actions badge - `Build` workflow](https://img.shields.io/github/workflow/status/Horgix/github-metrics-exporter/Build/main?label=Build)](https://github.com/Horgix/github-metrics-exporter/actions/workflows/build.yml)\n\nThis project is a \"metric exporter\" for GitHub metrics. Essentially, it\ncollects them through GitHub API (mainly the GraphQL one) and expose them e.g.\nthrough an HTTP endpoint with a Prometheus format.\n\nIt aims at collecting metrics such as:\n\n- Total number of PRs on a repo\n- Number of open PRs on a repo\n- Number of drafts PRs on a repo\n- Age of the oldest open PR on a repo\n- Number of PRs that wait for a given user reviews\n- Number of PRs currently open by a given user\n- ...\n\nin order to create graphs, alerts, whatever you want with them!\n\n## Status: ultra-early-alpha-wip-quickndirty-poc\n\nThis project, as you'll quickly notice by looking around, is currently more of\na test than anything else.\n\nWhat that means is that **it's definitely not doing everything it claims**.\n\nWhat is also means is that **contributions are more than welcome and you can\ntotally shape the future of this project** if you want to :)\n\n## How it works\n\nSummary:\n\n- [![Octocrab\n  badge](https://img.shields.io/badge/crates.io-octocrab-orange)](https://crates.io/crates/octocrab)\n  `github-metrics` uses the **Octocrab** Rust GitHub client library to query\n  the GitHub GraphQL API\n- [![Serde\n  badge](https://img.shields.io/badge/crates.io-serde-orange)](https://crates.io/crates/serde)\n  The response is deserialized into proper structs using **Serde** and **Serde\n  JSON** with as much default (de)serializer as possible, but also some custom\n  ones (e.g. to extract nested values from GraphQL reponses or to compute\n  `Durations` between a given date and now)\n- [![Anyhow\n  badge](https://img.shields.io/badge/crates.io-anyhow-orange)](https://crates.io/crates/anyhow)\n  **Anyhow** is used to give proper context to errors while still keeping a\n  readable code\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorgix%2Fgithub-metrics-exporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhorgix%2Fgithub-metrics-exporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhorgix%2Fgithub-metrics-exporter/lists"}