Sha256: 1d0259cacfd0597cea2f0a9a589d3ebabeffd5cfc2081a762049d18ae3456ad0
Contents?: true
Size: 998 Bytes
Versions: 22
Compression:
Stored size: 998 Bytes
Contents
# frozen_string_literal: true require "httparty" require "attr_extras" require "barsoom_utils/exception_notifier" module BarsoomUtils class PingHealthCheck method_object :id def call return unless ENV["ENABLE_HEALTH_CHECKS"] response = ping_healthcheck if response.code != 200 # "The presence of the cf-request-id header in the response confirms # the request was proxied through Cloudflare" # https://support.cloudflare.com/hc/en-us/articles/203118044-Gathering-information-for-troubleshooting-sites raise "Bad response, cf-request-id header: #{response.headers["cf-request-id"]}, response body: #{response.inspect}" else response end rescue => ex BarsoomUtils::ExceptionNotifier.message("Couldn't report to healthchecks.io, maybe the service is down?", "Check: #{id}, Error: #{ex.inspect}") end private def ping_healthcheck HTTParty.get("https://hchk.io/#{id}") end end end
Version data entries
22 entries across 22 versions & 1 rubygems