Module: StandardCircuit

Defined in:
lib/standard_circuit.rb,
lib/standard_circuit/config.rb,
lib/standard_circuit/health.rb,
lib/standard_circuit/runner.rb,
lib/standard_circuit/version.rb,
lib/standard_circuit/network_errors.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/standard_circuit/active_storage/s3_service.rb

Defined Under Namespace

Modules: ActiveStorage, AdapterErrors, ControllerSupport, ErrorTaxonomies, Health, Mailer, NetworkErrors, Notifiers Classes: Config, Error, HealthController, Runner, UnknownCircuit

Constant Summary collapse

VERSION =
"0.1.2"

Class Method Summary collapse

Class Method Details

.configObject



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

def config
  @config ||= Config.new
end

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

Yields:



27
28
29
30
31
# File 'lib/standard_circuit.rb', line 27

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

.force_closed(name, &block) ⇒ Object



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

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

.force_open(name, &block) ⇒ Object



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

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

.health_overall(snapshot = nil) ⇒ Object



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

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

.health_reportObject



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

def health_report
  runner.health_report
end

.health_snapshotObject



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

def health_snapshot
  runner.health_snapshot
end

.reset!Object



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

def reset!
  runner.reset!
end

.reset_force!Object



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

def reset_force!
  runner.reset_force!
end

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



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

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

.runnerObject



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

def runner
  @runner ||= Runner.new
end