sad 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +1 -0
- data/Gemfile.lock +2 -0
- data/README.md +18 -0
- data/VERSION +1 -1
- data/lib/sad.rb +11 -0
- data/lib/sad/logger.rb +33 -0
- data/lib/sad/payload.rb +1 -1
- data/lib/sad/server.rb +2 -2
- data/sad.gemspec +5 -1
- metadata +19 -2
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -123,6 +123,24 @@ SadJob.enqueue(1,2,3,4,5){|payload|
|
|
123
123
|
}
|
124
124
|
```
|
125
125
|
|
126
|
+
## 日志logger
|
127
|
+
|
128
|
+
Sad.logger是个Logger的实例,通过如下方式来配置:
|
129
|
+
|
130
|
+
```ruby
|
131
|
+
Sad.logger = {:path => 'sad.production.log', :level => 2}
|
132
|
+
Sad.logger.error("Crashed!!!")
|
133
|
+
```
|
134
|
+
|
135
|
+
level的取值如下:
|
136
|
+
|
137
|
+
* DEBUG = 0
|
138
|
+
* INFO = 1
|
139
|
+
* WARN = 2
|
140
|
+
* ERROR = 3
|
141
|
+
* FATAL = 4
|
142
|
+
* UNKNOWN = 5
|
143
|
+
|
126
144
|
## Contributing to sad
|
127
145
|
|
128
146
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.5.0
|
data/lib/sad.rb
CHANGED
@@ -10,4 +10,15 @@ module Sad
|
|
10
10
|
autoload :Server, 'sad/server'
|
11
11
|
autoload :Worker, 'sad/worker'
|
12
12
|
autoload :Runner, 'sad/runner'
|
13
|
+
autoload :Logger, 'sad/logger'
|
14
|
+
|
15
|
+
class << self
|
16
|
+
def logger=(opts)
|
17
|
+
@_logger = ::Sad::Logger.new(opts)
|
18
|
+
end
|
19
|
+
|
20
|
+
def logger
|
21
|
+
@_logger ||= ::Sad::Logger.new
|
22
|
+
end
|
23
|
+
end
|
13
24
|
end
|
data/lib/sad/logger.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
require "logger"
|
2
|
+
|
3
|
+
module Sad
|
4
|
+
class Logger
|
5
|
+
=begin
|
6
|
+
# Low-level information, mostly for developers
|
7
|
+
DEBUG = 0
|
8
|
+
# generic, useful information about system operation
|
9
|
+
INFO = 1
|
10
|
+
# a warning
|
11
|
+
WARN = 2
|
12
|
+
# a handleable error condition
|
13
|
+
ERROR = 3
|
14
|
+
# an unhandleable error that results in a program crash
|
15
|
+
FATAL = 4
|
16
|
+
# an unknown message that should always be logged
|
17
|
+
UNKNOWN = 5
|
18
|
+
=end
|
19
|
+
def initialize(opts={})
|
20
|
+
opts = {
|
21
|
+
:path => STDOUT,
|
22
|
+
:level => 2
|
23
|
+
}.update opts.dup
|
24
|
+
|
25
|
+
@logger = ::Logger.new(opts[:path])
|
26
|
+
@logger.level = opts[:level]
|
27
|
+
end
|
28
|
+
|
29
|
+
def method_missing(method_name, *args, &block)
|
30
|
+
@logger.send(method_name, *args, &block)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/sad/payload.rb
CHANGED
@@ -34,7 +34,7 @@ module Sad
|
|
34
34
|
self.sad_args['delay'] = ::Sad::Config.interval * self.sad_args['retry']
|
35
35
|
self.enqueue
|
36
36
|
else
|
37
|
-
|
37
|
+
logger.error "Payload perform error for #{self.sad_args['retry']} retrys:\n#{self.inspect}"
|
38
38
|
end
|
39
39
|
end
|
40
40
|
end
|
data/lib/sad/server.rb
CHANGED
@@ -11,14 +11,14 @@ module Sad
|
|
11
11
|
request = ::Sad::Config.redis.blpop(queue, 60)
|
12
12
|
request.callback{|_, data|
|
13
13
|
if data
|
14
|
-
|
14
|
+
logger.info '-'*15 + data.inspect + '-'*15
|
15
15
|
payload = Payload.decode(data)
|
16
16
|
payload_call(payload)
|
17
17
|
end
|
18
18
|
fetch_with_interval(queue)
|
19
19
|
}
|
20
20
|
request.errback{
|
21
|
-
|
21
|
+
logger.error "error with redis request.\n#{request.inspect}"
|
22
22
|
fetch_with_interval(queue)
|
23
23
|
}
|
24
24
|
end
|
data/sad.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "sad"
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.5.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["\u{5d14}\u{5ce5}"]
|
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
|
|
26
26
|
"VERSION",
|
27
27
|
"lib/sad.rb",
|
28
28
|
"lib/sad/config.rb",
|
29
|
+
"lib/sad/logger.rb",
|
29
30
|
"lib/sad/payload.rb",
|
30
31
|
"lib/sad/runner.rb",
|
31
32
|
"lib/sad/server.rb",
|
@@ -52,6 +53,7 @@ Gem::Specification.new do |s|
|
|
52
53
|
s.add_runtime_dependency(%q<eventmachine>, [">= 0"])
|
53
54
|
s.add_runtime_dependency(%q<em-hiredis>, [">= 0"])
|
54
55
|
s.add_runtime_dependency(%q<daemons>, [">= 0"])
|
56
|
+
s.add_runtime_dependency(%q<logger>, [">= 0"])
|
55
57
|
s.add_runtime_dependency(%q<json>, [">= 0"])
|
56
58
|
s.add_runtime_dependency(%q<pry>, [">= 0"])
|
57
59
|
else
|
@@ -60,6 +62,7 @@ Gem::Specification.new do |s|
|
|
60
62
|
s.add_dependency(%q<eventmachine>, [">= 0"])
|
61
63
|
s.add_dependency(%q<em-hiredis>, [">= 0"])
|
62
64
|
s.add_dependency(%q<daemons>, [">= 0"])
|
65
|
+
s.add_dependency(%q<logger>, [">= 0"])
|
63
66
|
s.add_dependency(%q<json>, [">= 0"])
|
64
67
|
s.add_dependency(%q<pry>, [">= 0"])
|
65
68
|
end
|
@@ -69,6 +72,7 @@ Gem::Specification.new do |s|
|
|
69
72
|
s.add_dependency(%q<eventmachine>, [">= 0"])
|
70
73
|
s.add_dependency(%q<em-hiredis>, [">= 0"])
|
71
74
|
s.add_dependency(%q<daemons>, [">= 0"])
|
75
|
+
s.add_dependency(%q<logger>, [">= 0"])
|
72
76
|
s.add_dependency(%q<json>, [">= 0"])
|
73
77
|
s.add_dependency(%q<pry>, [">= 0"])
|
74
78
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sad
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -91,6 +91,22 @@ dependencies:
|
|
91
91
|
- - ! '>='
|
92
92
|
- !ruby/object:Gem::Version
|
93
93
|
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: logger
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
94
110
|
- !ruby/object:Gem::Dependency
|
95
111
|
name: json
|
96
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,6 +156,7 @@ files:
|
|
140
156
|
- VERSION
|
141
157
|
- lib/sad.rb
|
142
158
|
- lib/sad/config.rb
|
159
|
+
- lib/sad/logger.rb
|
143
160
|
- lib/sad/payload.rb
|
144
161
|
- lib/sad/runner.rb
|
145
162
|
- lib/sad/server.rb
|
@@ -165,7 +182,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
165
182
|
version: '0'
|
166
183
|
segments:
|
167
184
|
- 0
|
168
|
-
hash: -
|
185
|
+
hash: -1782391998452226868
|
169
186
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
170
187
|
none: false
|
171
188
|
requirements:
|