https://github.com/lekpamartin/uptimerobot_exporter
Expose uptimerobot.com metrics for prometheus and visualize it in Grafana
https://github.com/lekpamartin/uptimerobot_exporter
docker docker-compose docker-image dockerfile exporter grafana grafana-dashboard prometheus uptimerobot
Last synced: about 2 months ago
JSON representation
Expose uptimerobot.com metrics for prometheus and visualize it in Grafana
- Host: GitHub
- URL: https://github.com/lekpamartin/uptimerobot_exporter
- Owner: lekpamartin
- License: apache-2.0
- Created: 2019-02-21T10:31:47.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-07-27T07:19:36.000Z (11 months ago)
- Last Synced: 2025-07-27T09:15:18.432Z (11 months ago)
- Topics: docker, docker-compose, docker-image, dockerfile, exporter, grafana, grafana-dashboard, prometheus, uptimerobot
- Language: Python
- Homepage:
- Size: 403 KB
- Stars: 48
- Watchers: 3
- Forks: 26
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# uptimerobot.com prometheus exporter
[](https://hub.docker.com/r/lekpamartin/uptimerobot_exporter/tags)

Exports all your uptimerobot.com checks for prometheus scraping,
so you can use external, third-party checks in your monitoring setup.
If you do not have a pro account, any scrape interval shorter than
`scrape_interval: 5m` for this exporter will a) produce duplicated data
and b) misuse uptimerobots API.
## Requirements
- Python
- [requests](http://www.python-requests.org/en/master/)
## Running
Accepted parameters:
- api_key: Your uptimerobot.com API key. See section 'API Settings' in [your account details](https://uptimerobot.com/dashboard#mySettings).
- server_name (optional): Name to bind the HTTP server to. Default: 0.0.0.0
- server_port (optional): Port to bind the HTTP server to. Default: 9705
### Docker
```bash
docker run -d --name uptimerobot_exporter -e 'UPTIMEROBOT_API_KEY=your_uptime_robot_api_key' -p 9705:9705 --read-only lekpamartin/uptimerobot_exporter
```
#### docker-compose
Example compose file:
version: '2.1'
services:
exporter:
image: lekpamartin/uptimerobot_exporter
restart: unless-stopped
environment:
UPTIMEROBOT_API_KEY: your_uptime_robot_api_key
ports:
- 9705:9705
read_only: true
### Others
You can either pass script arguments (run `python exporter.py -h` for an explanation)
or set the following environment variables:
- `UPTIMEROBOT_API_KEY`
- `UPTIMEROBOT_SERVER_NAME`
- `UPTIMEROBOT_SERVER_PORT`
## Exported data
- number of down monitors : down_monitors
- number of up monitors : up_monitors
- number of paused monitors : paused_monitors
- Maximum monitor : monitor_limit
- Monitor status (Monitors) : name, url, type, [keyword], [keyword_value], interval, status (color change with status)
- Responste time : Minimum (min), maximum (max), average (avg) and current
- public status page (psp)
## Grafana / Prometheus
1. Deploy exporter
2. Add target in prometheus
3. Add prometheus Data source in grafana
4. Import Grafana dashboard (import json or ID 9955)
Enjoy !!!
## Docs
Forked from https://github.com/hnrd/uptimerobot_exporter.git