coaster 1.0.3 → 1.0.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: df1ca619424ece483c0dc2dd1f6ae0fde7c725752ab5593b8c0219baf219a4ea
4
- data.tar.gz: 465e303a6d645d934df100415de58202fbc09cdccc3ebe27eee9a519c6d58ae4
3
+ metadata.gz: 1efdff11e3158914f521590fb64642e9c1834987317b896db24896c31e772bcf
4
+ data.tar.gz: 3fcdb6480424ddcc27cc50c0568e6b8d9967bf494f8118d174d82e9072c03974
5
5
  SHA512:
6
- metadata.gz: 0c091ac873ec7798bf4e7d412184474a8c9d528fe1c654dd1034f3b997938453976f69465d32a5c3ac5340ae468e15c33d84de905790901964cdf969dc6d1e88
7
- data.tar.gz: f7b9c0f618501191fa8f1c881cf41a03c0304f5d14b1163bc38d986b1321bd7c41048085756133e3654c75b41bf9d51c25292e5e2a7709e483d6c754443e09cd
6
+ metadata.gz: 270b1faeeae2fe9fcccd3e0f2c4d9d8234c7d0288ee949ea29b7faac70e711e5394b2cb06b14da11a6e71fe770c46416e9e8e10fadca2303470171986e6a3911
7
+ data.tar.gz: c895e44a856beae32d2b46f09547d5c69aba008a46581ee096f9b069e6909251574f6dccf62f899fa3e51771e48acc1ad601f0a46e07a87cb5c8e59b706ea1f4
@@ -96,6 +96,14 @@ class StandardError
96
96
  attributes[:http_status] = value
97
97
  end
98
98
 
99
+ def report?
100
+ attributes.key?(:report) ? attributes[:report] : true
101
+ end
102
+
103
+ def intentional?
104
+ attributes[:intentional]
105
+ end
106
+
99
107
  def code
100
108
  attributes[:code] || status
101
109
  end
@@ -198,16 +206,23 @@ class StandardError
198
206
  end
199
207
 
200
208
  def logging(options = {})
201
- logger = options[:logger] || Coaster.logger
202
- logger = Rails.logger if logger.nil? && defined?(Rails)
203
- return nil unless logger
209
+ return unless report?
210
+ logger = nil
211
+ if defined?(Rails)
212
+ return if Rails.env.test? && intentional?
213
+ logger = Rails.logger
214
+ end
215
+ logger = options[:logger] || Coaster.logger || logger
216
+ return unless logger
204
217
 
205
218
  cl = options[:cleaner] || cleaner
206
219
  msg = to_detail
207
220
 
208
221
  if cl && backtrace
222
+ bt = cl.clean(backtrace)
223
+ bt = bt[0..2] if intentional?
209
224
  msg += "\tBACKTRACE:\n\t"
210
- msg += cl.clean(backtrace).join("\n\t")
225
+ msg += bt.join("\n\t")
211
226
  end
212
227
 
213
228
  if level && logger.respond_to?(level)
@@ -38,7 +38,7 @@ class StandardError
38
38
 
39
39
  def capture(options = {})
40
40
  return if options.key?(:report) && !options[:report]
41
- return if attributes.key?(:report) && !attributes[:report]
41
+ return unless report?
42
42
  nt = notes(options)
43
43
  Raven.capture_exception(self, level: nt[:level]) do |event|
44
44
  event.user.merge!(nt[:user] || {})
@@ -1,3 +1,3 @@
1
1
  module Coaster
2
- VERSION = '1.0.3'
2
+ VERSION = '1.0.4'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coaster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - buzz jung
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-07 00:00:00.000000000 Z
11
+ date: 2020-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n