Module: StandardCircuit

Defined in:
lib/standard_circuit.rb,
lib/standard_circuit/config.rb,
lib/standard_circuit/engine.rb,
lib/standard_circuit/health.rb,
lib/standard_circuit/runner.rb,
lib/standard_circuit/version.rb,
lib/standard_circuit/subscribers.rb,
lib/standard_circuit/event_emitter.rb,
lib/standard_circuit/network_errors.rb,
lib/standard_circuit/notifier_bridge.rb,
lib/standard_circuit/error_taxonomies.rb,
lib/standard_circuit/notifiers/logger.rb,
lib/standard_circuit/notifiers/sentry.rb,
lib/standard_circuit/health_controller.rb,
lib/standard_circuit/notifiers/metrics.rb,
lib/standard_circuit/adapter_errors/aws.rb,
lib/standard_circuit/controller_support.rb,
lib/standard_circuit/adapter_errors/smtp.rb,
lib/standard_circuit/adapter_errors/stripe.rb,
lib/standard_circuit/adapter_errors/faraday.rb,
lib/standard_circuit/mailer/delivery_method.rb,
lib/standard_circuit/mailer/circuit_open_error.rb,
lib/generators/standard_circuit/install/install_generator.rb,
lib/standard_circuit/active_storage/s3_service.rb

Defined Under Namespace

Modules: ActiveStorage, AdapterErrors, ControllerSupport, ErrorTaxonomies, EventEmitter, Generators, Health, Mailer, NetworkErrors, Notifiers Classes: Config, Engine, Error, HealthController, NotifierBridge, Runner, Subscribers, UnknownCircuit

Constant Summary collapse

VERSION =
"0.2.0"

Class Method Summary collapse

Class Method Details

.configObject



38
39
40
# File 'lib/standard_circuit.rb', line 38

def config
  @config ||= Config.new
end

.configure {|config| ... } ⇒ Object

Yields:



31
32
33
34
35
36
# File 'lib/standard_circuit.rb', line 31

def configure
  yield config
  runner.apply_config!(config)
  subscribers.setup!
  config
end

.force_closed(name, &block) ⇒ Object



58
59
60
# File 'lib/standard_circuit.rb', line 58

def force_closed(name, &block)
  runner.force_closed(name, &block)
end

.force_open(name, &block) ⇒ Object



54
55
56
# File 'lib/standard_circuit.rb', line 54

def force_open(name, &block)
  runner.force_open(name, &block)
end

.health_overall(snapshot = nil) ⇒ Object



74
75
76
# File 'lib/standard_circuit.rb', line 74

def health_overall(snapshot = nil)
  runner.health_overall(snapshot)
end

.health_reportObject



78
79
80
# File 'lib/standard_circuit.rb', line 78

def health_report
  runner.health_report
end

.health_snapshotObject



70
71
72
# File 'lib/standard_circuit.rb', line 70

def health_snapshot
  runner.health_snapshot
end

.reset!Object



66
67
68
# File 'lib/standard_circuit.rb', line 66

def reset!
  runner.reset!
end

.reset_force!Object



62
63
64
# File 'lib/standard_circuit.rb', line 62

def reset_force!
  runner.reset_force!
end

.run(name, fallback: nil, &block) ⇒ Object



50
51
52
# File 'lib/standard_circuit.rb', line 50

def run(name, fallback: nil, &block)
  runner.run(name, fallback: fallback, &block)
end

.runnerObject



42
43
44
# File 'lib/standard_circuit.rb', line 42

def runner
  @runner ||= Runner.new
end

.subscribersObject



46
47
48
# File 'lib/standard_circuit.rb', line 46

def subscribers
  @subscribers ||= Subscribers.new
end