Class: ServiceSkeleton::Runner
- Inherits:
-
Object
- Object
- ServiceSkeleton::Runner
- Includes:
- LoggingHelpers
- Defined in:
- lib/service_skeleton/runner.rb
Instance Method Summary collapse
-
#initialize(klass, env) ⇒ Runner
constructor
A new instance of Runner.
- #run ⇒ Object
Constructor Details
#initialize(klass, env) ⇒ Runner
Returns a new instance of Runner.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/service_skeleton/runner.rb', line 19 def initialize(klass, env) @config = (klass.config_class || ServiceSkeleton::Config).new(env, klass.service_name, klass.registered_variables) @logger = @config.logger @metrics_registry = Prometheus::Client::Registry.new @ultravisor = ServiceSkeleton.generate( config: @config, metrics_registry: @metrics_registry, service_metrics: klass.registered_metrics, service_signal_handlers: { klass.service_name.to_sym => klass.registered_signal_handlers } ) klass.register_ultravisor_children(@ultravisor, config: @config, metrics_registry: @metrics_registry) end |
Instance Method Details
#run ⇒ Object
35 36 37 38 39 40 |
# File 'lib/service_skeleton/runner.rb', line 35 def run @config.pre_run_logger.info(logloc) { "Starting service #{@config.service_name}" } @config.pre_run_logger.info(logloc) { (["Environment:"] + @config.env.map { |k, v| "#{k}=#{v.inspect}" }).join("\n ") } @ultravisor.run end |