{"id":16366056,"url":"https://github.com/captn3m0/prometheus-act-exporter","last_synced_at":"2025-10-26T07:30:22.717Z","repository":{"id":37940857,"uuid":"135992444","full_name":"captn3m0/prometheus-act-exporter","owner":"captn3m0","description":"Exposes your current ACT Fibernet Internet usage as prometheus metrics. Scrapes the data from the ACT Portal website by using puppeteer. ","archived":true,"fork":false,"pushed_at":"2023-09-27T09:50:27.000Z","size":209,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-17T16:11:59.082Z","etag":null,"topics":["act","act-fibernet","bandwidth-monitor","exporter","fibernet","indian-isp","isp","metrics","prometheus","prometheus-exporter","puppeteer"],"latest_commit_sha":null,"homepage":"https://git.captnemo.in/nemo/prometheus-act-exporter","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/captn3m0.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null}},"created_at":"2018-06-04T08:12:17.000Z","updated_at":"2023-09-27T09:50:40.000Z","dependencies_parsed_at":"2023-02-13T04:30:36.445Z","dependency_job_id":"f7296f8d-5713-4a2d-8687-4ee98f765898","html_url":"https://github.com/captn3m0/prometheus-act-exporter","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Fprometheus-act-exporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Fprometheus-act-exporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Fprometheus-act-exporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Fprometheus-act-exporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/captn3m0","download_url":"https://codeload.github.com/captn3m0/prometheus-act-exporter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238030210,"owners_count":19404857,"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":["act","act-fibernet","bandwidth-monitor","exporter","fibernet","indian-isp","isp","metrics","prometheus","prometheus-exporter","puppeteer"],"created_at":"2024-10-11T02:45:11.687Z","updated_at":"2025-10-26T07:30:17.366Z","avatar_url":"https://github.com/captn3m0.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# prometheus-act-exporter\n\n![Docker Image Version (latest semver)](https://img.shields.io/docker/v/captn3m0/prometheus-act-exporter) ![Docker Image Size (latest semver)](https://img.shields.io/docker/image-size/captn3m0/prometheus-act-exporter) [![npm version](https://badge.fury.io/js/prometheus-act-exporter.svg)](https://badge.fury.io/js/prometheus-act-exporter) [![License: WTFPL](https://img.shields.io/badge/License-WTFPL-blue.svg)](http://www.wtfpl.net/) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](http://makeapullrequest.com)\n\nExposes your current ACT FUP usage as prometheus metrics. Scrapes the data from the ACT Portal website by using [puppeteer](https://developers.google.com/web/tools/puppeteer/). This only supports [ACT Fibernet](https://www.actcorp.in/) in India.\n\n**Note**: Broken since the portal got redesigned and now requires authentication.\n\n- Supports flexibytes\n- Reports aggregate metrics as well\n- Only tested for ACT Bangalore connections.\n\n## Metrics\n\nSample:\n\n```\n# HELP act_fup_live_usage_bytes ACT live usage in bytes (precision GB)\n# TYPE act_fup_live_usage_bytes gauge\nact_fup_live_usage_bytes 0\n\n# HELP act_fup_live_total_bytes ACT live usage in bytes (precision GB)\n# TYPE act_fup_live_total_bytes gauge\nact_fup_live_total_bytes 800000000\n\n# HELP act_fup_flexibytes_usage_bytes ACT flexibytes usage in bytes (precision GB)\n# TYPE act_fup_flexibytes_usage_bytes gauge\nact_fup_flexibytes_usage_bytes 102580000\n\n# HELP act_fup_flexibytes_total_bytes ACT flexibytes usage in bytes (precision GB)\n# TYPE act_fup_flexibytes_total_bytes gauge\nact_fup_flexibytes_total_bytes 100000000\n\n# HELP act_fup_aggregate_usage_bytes ACT aggregate usage in bytes (precision GB)\n# TYPE act_fup_aggregate_usage_bytes gauge\nact_fup_aggregate_usage_bytes 102580000\n\n# HELP act_fup_aggregate_total_bytes ACT aggregate usage in bytes (precision GB)\n# TYPE act_fup_aggregate_total_bytes gauge\nact_fup_aggregate_total_bytes 900000000\n```\n\n# Using as a npm package\n\nInstall it with `npm i prometheus-act-exporter`.\n\n```js\nconst act = require(\"prometheus-act-exporter\");\nlet m = await act.getUsage();\n// Returns\n// {\n//   live: { usedBytes: 0, totalBytes: 800000000 },\n//   flexibytes: { usedBytes: 102580000, totalBytes: 100000000 },\n//   aggregate: { usedBytes: 102580000, totalBytes: 900000000 }\n// }\n// calculations made assuming ACT is using SI GB (exactly 1 billion bytes)\n```\n\n# Configuration\n\nYou can pass the following environment variables:\n\n1.  `PROXY_SERVER`: Use a proxy server to connect to ACT. Use a `socks5` proxy, since ACT returns a 403 if you try to use a CONNECT proxy. `export PROXY_SERVER=\"socks5://10.8.0.14:1080\"`\n2.  `CHROME_BIN`: Set Chrome/Chromium executable path. Helpful if you have chromium already installed and don't want puppeteer to download it again. You can set `PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1` before running `npm install` to disable puppeteer's chromium download.\n3.  `DISABLE_HEADLESS`: If set, chrome will not launch in headless mode.\n\n# Usage\n\n## Docker\n\nIf running via Docker, here are some simple cookbook configurations:\n\n`docker run -it -p 3000:3000 -e captn3m0/prometheus-act-exporter`\n\nRun a simple test server locally in debug mode and test it on `http://localhost:3000/metrics`\n\n## Node\n\n```sh\nexport DISABLE_HEADLESS=1\n# Change to the correct invocation\nexport CHROME_BIN=$(which chromium)\nnpm install\nnode server.js\ncurl localhost:3000/metrics\n```\n\n# LICENSE\n\nThis is licensed under WTFPL. See COPYING file for the full text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptn3m0%2Fprometheus-act-exporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaptn3m0%2Fprometheus-act-exporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptn3m0%2Fprometheus-act-exporter/lists"}