lib/fusuma.rb in fusuma-3.3.0 vs lib/fusuma.rb in fusuma-3.3.1

- old
+ new

@@ -1,13 +1,13 @@ # frozen_string_literal: true -require_relative "./fusuma/version" -require_relative "./fusuma/multi_logger" -require_relative "./fusuma/config" -require_relative "./fusuma/environment" -require_relative "./fusuma/device" -require_relative "./fusuma/plugin/manager" +require_relative "fusuma/version" +require_relative "fusuma/multi_logger" +require_relative "fusuma/config" +require_relative "fusuma/environment" +require_relative "fusuma/device" +require_relative "fusuma/plugin/manager" # this is top level module module Fusuma # main class class Runner @@ -17,10 +17,14 @@ instance = new instance.set_trap ## NOTE: Uncomment following line to measure performance # instance.run_with_lineprof instance.run + rescue => e + MultiLogger.error("Shutdown by error") + MultiLogger.error(e) + instance.send(:shutdown) end private def read_options(option) @@ -189,14 +193,14 @@ end def set_trap Signal.trap("INT") { shutdown - puts exit + exit } # Trap ^C Signal.trap("TERM") { shutdown - puts exit + exit } # Trap `Kill ` end private