multi_daemons 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/multi_daemons.rb +13 -1
- data/lib/multi_daemons/configuration.rb +9 -0
- data/lib/multi_daemons/daemon.rb +1 -0
- data/lib/multi_daemons/error_reporter.rb +16 -0
- data/lib/multi_daemons/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dffea966b602d924ca26d77e1202c87b7c2392052471d7e27a0cf1a17abae5d7
|
4
|
+
data.tar.gz: 28a0f94d79fc7fb6e612a41b6fd2d2a83731f846eeaead4e725f5a9cb255eeb0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 81afa3560717b5bc5d309d7c75ebaa6c8c667d1b29f87e1122b7f10bcec3e444f306953c04f8f84bad5c3b57ab063ddda1a5184844fb83e916b4d207ed4b758f
|
7
|
+
data.tar.gz: 47ff8582405bd945f2f204d67d868b2ade4a324a621c9aa204192a9290992383aaf637e79653652b61b5941a977104676627fc54fbe907c9e03bafbe76fff104
|
data/lib/multi_daemons.rb
CHANGED
@@ -1,14 +1,18 @@
|
|
1
1
|
# require 'multi_daemons/version'
|
2
2
|
require_relative 'multi_daemons/controller'
|
3
|
+
require_relative 'multi_daemons/configuration'
|
4
|
+
require_relative 'multi_daemons/daemon'
|
5
|
+
require_relative 'multi_daemons/error_reporter'
|
3
6
|
require_relative 'multi_daemons/pid_store'
|
4
7
|
require_relative 'multi_daemons/pid'
|
5
|
-
require_relative 'multi_daemons/daemon'
|
6
8
|
require_relative 'multi_daemons/validate'
|
7
9
|
require 'fileutils'
|
8
10
|
require 'byebug'
|
9
11
|
require 'timeout'
|
10
12
|
|
11
13
|
module MultiDaemons
|
14
|
+
CONFIG = Configuration.new
|
15
|
+
|
12
16
|
def self.runner(daemons, options = {})
|
13
17
|
raise unless Validate.valid_multi_daemon?(daemons)
|
14
18
|
|
@@ -16,6 +20,14 @@ module MultiDaemons
|
|
16
20
|
daemonize(controller)
|
17
21
|
end
|
18
22
|
|
23
|
+
def self.error_reporters
|
24
|
+
CONFIG.error_reporters
|
25
|
+
end
|
26
|
+
|
27
|
+
def self.error_reporters=(reporters)
|
28
|
+
CONFIG.error_reporters = reporters
|
29
|
+
end
|
30
|
+
|
19
31
|
def self.daemonize(controller)
|
20
32
|
case !ARGV.empty? && ARGV[0]
|
21
33
|
when 'start'
|
data/lib/multi_daemons/daemon.rb
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
module MultiDaemons
|
2
|
+
class ErrorReporter
|
3
|
+
attr_accessor :reporters
|
4
|
+
|
5
|
+
def self.report(exception, context_hash = {})
|
6
|
+
MultiDaemons.error_reporters.compact.each do |reporter|
|
7
|
+
begin
|
8
|
+
reporter.call(exception, self, context_hash)
|
9
|
+
rescue => inner_exception
|
10
|
+
puts inner_exception
|
11
|
+
puts inner_exception.backtrace.join("\n") unless inner_exception.backtrace
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multi_daemons
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- santhanakarthikeyan
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-12-
|
11
|
+
date: 2018-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -99,8 +99,10 @@ files:
|
|
99
99
|
- bin/console
|
100
100
|
- bin/setup
|
101
101
|
- lib/multi_daemons.rb
|
102
|
+
- lib/multi_daemons/configuration.rb
|
102
103
|
- lib/multi_daemons/controller.rb
|
103
104
|
- lib/multi_daemons/daemon.rb
|
105
|
+
- lib/multi_daemons/error_reporter.rb
|
104
106
|
- lib/multi_daemons/pid.rb
|
105
107
|
- lib/multi_daemons/pid_store.rb
|
106
108
|
- lib/multi_daemons/validate.rb
|