Sha256: 0c678fff0f02920fc9bb8d59a96b8d4eab923a285edd965bf038b72ea777d07d
Contents?: true
Size: 1.05 KB
Versions: 1
Compression:
Stored size: 1.05 KB
Contents
class ErrorReporter def self.report_error(sender_name, error, facebook_connection: nil) raise error unless report_error? Storage.set(:last_error_reported_time, Time.now) screenshot = include_screenshot?(facebook_connection) ? create_screenshot(facebook_connection) : nil Senders.by_name(sender_name).send_error(error, screenshot: screenshot) raise error end private_class_method def self.include_screenshot?(facebook_connection) Config.option(:errors, :include_screenshot) && facebook_connection.present? end private_class_method def self.create_screenshot(facebook_connection) facebook_connection.driver.screenshot_as(:png) rescue StandardError nil end private_class_method def self.report_error? min_minutes_between_reports = Config.option(:errors, :min_minutes_between_reports, default: 0) last_error_reported_time = Storage.get(:last_error_reported_time, default: Time.new(2000)) next_report_time = last_error_reported_time + min_minutes_between_reports.minutes Time.now > next_report_time end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fuck_facebook-0.5.0 | src/error_reporter.rb |