Skip to content

Export uptimerobot.com monitor results as prometheus.io metrics

Notifications You must be signed in to change notification settings

wosc/prometheus-uptimerobot

Repository files navigation

prometheus metrics for uptimerobot.com

This packages exports Uptime Robot monitor results as Prometheus metrics.

Usage

Configure API key

You'll need to provide the API key of your uptimerobot.com account using a configuration file:

[default]
api_key = 123456789

See the Uptime Robot API documentation for details.

Set up HTTP service

Then you need to set up an HTTP server, either with a dedicated process:

$ uptimerobot_exporter --host localhost --port 9429 --config /path/to/config

or as a CGI script, if you have infrastructure for that set up anyway. Here's an example apache configuration snippet to do this:

ScriptAlias /metrics/uptimerobot /path/to/uptimerobot_exporter_cgi
<Location /metrics/uptimerobot>
  SetEnv PROMETHEUS_UPTIMEROBOT_CONFIG /path/to/config
  # SetEnv PROMETHEUS_UPTIMEROBOT_LOGFILE /path/to/log  # optional, for debugging
</Location>

Configure Prometheus

scrape_configs:
  - job_name: 'uptimerobot'
    scrape_interval: 300s
    static_configs:
      - targets: ['localhost:9429']

The following metrics are exported, each with labels {monitor_name="example.com",monitor_type="http",monitor_url="https://example.com"}:

  • uptimerobot_up gauge (1=up, 0=down)
  • uptimerobot_status gauge
  • uptimerobot_responsetime gauge
  • uptimerobot_ssl_expire gauge (unix timestamp), if applicable

See the Uptime Robot API documentation section "Parameters" for details on the possible status values. The monitor_type is translated from its numeric code to one of http, http keyword, ping, or port.

Additionally, a uptimerobot_scrape_duration_seconds gauge is exported.

About

Export uptimerobot.com monitor results as prometheus.io metrics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages