Skip to content

Prometheus metrics ​

GET http://127.0.0.1:9090/metrics, text format, no authentication. → Statistics

MetricTypeLabelsDescription
otterroute_requests_totalcounterroute, cache, classRequests served. cache: HIT, MISS, STALE, REVALIDATED, BYPASS, none; class: 2xx…5xx.
otterroute_response_bytes_totalcounterrouteBytes sent to visitors.
otterroute_upstream_errors_totalcounterroute, storageErrors towards the storage.
otterroute_request_duration_secondshistogramrouteLatency up to the response (_bucket, _sum, _count).
otterroute_cache_bytesgauge—Space used by the cache.
otterroute_cache_max_bytesgauge—Cache limit.
otterroute_cache_entriesgauge—Copies in cache.
otterroute_cache_inflightgauge—Downloads from the storage in progress.
otterroute_config_versiongauge—Version of the active configuration.
otterroute_build_infogaugeversion, installAlways 1: running version and installation type (docker, service, binary, source).
otterroute_image_transforms_totalcounterresultImages on the fly: ok, error (invalid file, 422), too_large (413), busy (timed out or interrupted, 503).
otterroute_image_transform_seconds_sum / _countcounter—Total time and number of successful transformations: the average is sum / count.
otterroute_signed_links_denied_totalcounter—Requests refused with 403 for a missing, expired or invalid signed link.
otterroute_acme_issuances_totalcounterresultIssuances of automatic certificates: ok, error.
otterroute_certificate_not_after_timestamp_secondsgaugehostExpiry of the domain's certificate (Unix seconds); absent if there is none.
otterroute_certificate_servinggaugehost1 if the node serves on HTTPS an unexpired certificate for the domain.
otterroute_update_availablegauge—1 if a newer version than the one in use exists.
otterroute_update_last_check_timestamp_secondsgauge—Last check for new versions (0 = never).
otterroute_update_checks_totalcounterresultChecks for new versions: ok, error.
otterroute_updates_totalcounterresultUpdates seen by this process: applied (start after a version change), rolled_back.

Requests that match no rule have route="-".

Useful queries and alerts ​

text
# certificates expiring within 14 days
(otterroute_certificate_not_after_timestamp_seconds - time()) < 14 * 86400

# a domain with no certificate in use
otterroute_certificate_serving == 0

# average duration of an image transformation (last 5 minutes)
rate(otterroute_image_transform_seconds_sum[5m]) / rate(otterroute_image_transform_seconds_count[5m])

# failed or postponed transformations
sum(rate(otterroute_image_transforms_total{result!="ok"}[5m]))

# the node has not checked for versions for more than 3 days (with the check on)
time() - otterroute_update_last_check_timestamp_seconds > 3 * 86400

# a new version exists
otterroute_update_available == 1

Rilasciato con licenza MIT o Apache-2.0, a scelta.