module Safely::Methods
Public Instance Methods
safely(tag: nil, sample: nil, except: nil, only: nil, silence: nil, throttle: false, default: nil, context: {}) { || ... }
click to toggle source
# File lib/safely/core.rb, line 48 def safely(tag: nil, sample: nil, except: nil, only: nil, silence: nil, throttle: false, default: nil, context: {}) yield rescue *Array(only || StandardError) => e raise e if Array(except).any? { |c| e.is_a?(c) } raise e if Safely.raise_envs.include?(Safely.env) if sample ? rand < 1.0 / sample : true begin unless Array(silence).any? { |c| e.is_a?(c) } || Safely.throttled?(e, throttle) Safely.report_exception(e, tag: tag, context: context) end rescue => e2 $stderr.puts "FAIL-SAFE #{e2.class.name}: #{e2.message}" end end default end
Also aliased as: yolo
yolo(tag: nil, sample: nil, except: nil, only: nil, silence: nil, throttle: false, default: nil, context: {})
Alias for: safely