madvertise-logging 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
@@ -132,9 +132,12 @@ module Madvertise
|
|
132
132
|
#
|
133
133
|
# @param [Exception, String] exc The exception to log. If exc is a
|
134
134
|
# String no backtrace will be generated.
|
135
|
-
|
136
|
-
|
137
|
-
|
135
|
+
# @param [String] prefix Additional message to log.
|
136
|
+
def exception(exc, prefix=nil)
|
137
|
+
msg = "EXCEPTION"
|
138
|
+
msg << ": #{prefix}" if prefix
|
139
|
+
msg << ": #{exc.message}: #{clean_trace(exc.backtrace)}" if exc.is_a?(::Exception)
|
140
|
+
fatal(msg)
|
138
141
|
end
|
139
142
|
|
140
143
|
# Save the current token and associate it with obj#object_id.
|
@@ -188,11 +191,10 @@ module Madvertise
|
|
188
191
|
[ File.basename(file), num ].join(':')
|
189
192
|
end
|
190
193
|
|
191
|
-
def add(severity, message
|
194
|
+
def add(severity, message)
|
192
195
|
severity = self.class.severities[severity]
|
193
|
-
message = "#{called_from}: #{message}"
|
196
|
+
message = "#{called_from}: #{message}"
|
194
197
|
message = "[#{@token}] #{message}" if @token
|
195
|
-
|
196
198
|
logger.add(severity) { message }
|
197
199
|
return nil
|
198
200
|
end
|
@@ -279,6 +281,7 @@ module Madvertise
|
|
279
281
|
end
|
280
282
|
end
|
281
283
|
|
284
|
+
# @private
|
282
285
|
module IOCompat
|
283
286
|
def close_read
|
284
287
|
nil
|
@@ -71,7 +71,6 @@ describe ImprovedLogger do
|
|
71
71
|
|
72
72
|
it "should log fatal level messages" do
|
73
73
|
@logger.fatal("Fatal test")
|
74
|
-
|
75
74
|
@logfile.should have_received_message(/\[FATAL\].*Fatal test/)
|
76
75
|
end
|
77
76
|
|
@@ -117,6 +116,19 @@ describe ImprovedLogger do
|
|
117
116
|
@logfile.should_not have_received_message("EXCEPTION:")
|
118
117
|
end
|
119
118
|
|
119
|
+
it "should log additional info on exceptions" do
|
120
|
+
fake_trace = [
|
121
|
+
"/home/jdoe/app/libexec/app.rb:1:in `foo'",
|
122
|
+
"/usr/lib/ruby/gems/1.8/gems/madvertise-logging-0.1.0/lib/madvertise/logging/improved_logger.rb:42: in `info'"
|
123
|
+
]
|
124
|
+
|
125
|
+
e = RuntimeError.new('Test error')
|
126
|
+
e.set_backtrace(fake_trace)
|
127
|
+
|
128
|
+
@logger.exception(e, "app failed to foo")
|
129
|
+
@logfile.should have_received_message("app failed to foo")
|
130
|
+
end
|
131
|
+
|
120
132
|
it "should support silencing" do
|
121
133
|
@logger.silence do |logger|
|
122
134
|
logger.info "This should never be logged"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: madvertise-logging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-11 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: Advanced logging classes with buffer backend, transactions, multi logger,
|
15
15
|
etc
|
@@ -55,7 +55,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
55
55
|
version: '0'
|
56
56
|
segments:
|
57
57
|
- 0
|
58
|
-
hash:
|
58
|
+
hash: -1250046391813060871
|
59
59
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
60
60
|
none: false
|
61
61
|
requirements:
|
@@ -64,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
64
64
|
version: '0'
|
65
65
|
segments:
|
66
66
|
- 0
|
67
|
-
hash:
|
67
|
+
hash: -1250046391813060871
|
68
68
|
requirements: []
|
69
69
|
rubyforge_project:
|
70
70
|
rubygems_version: 1.8.17
|