debug_exceptions_json 0.2.2 → 0.2.3

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
  SHA1:
3
- metadata.gz: 0723497067fbb9817118efc91bc2cb0688789770
4
- data.tar.gz: f16c308a1a26021c8ed65cb67a49327f95e24530
3
+ metadata.gz: b6565ca44f804fa3055d8a6b183430ac62ef5c5f
4
+ data.tar.gz: 9715771e9ee32834b36f52a60800a3b55e488f90
5
5
  SHA512:
6
- metadata.gz: 6676b0451ee45342c05c502780da60a900eaadcf5f8823da81155e83ab858fbfe5bf8f552ba26a704bdd5f64d1be7b26d8926c6a824fed479451e699e2b4b0e2
7
- data.tar.gz: 927c54ff4c439878e96742011e8a627bec2cd02f0b051af191d4efc8f37450635217ba1dcbed2245fa70f0e3e5428fa7139ef2cbb2b8909ff2ee30d858e4c53f
6
+ metadata.gz: cd050012139c4b069088fb8c6f814a09461d4c9ad62e60a5694cffac1cdee6e4baedc27cee2fd0c53661561acbc795ed6bbc84efe7edea9092ae5f48bdc529d5
7
+ data.tar.gz: 1b5a6d6812fafe52ec0bc011f9875bf0bbf30c0bc203724d9acd50411c16834d91fc227bbb29aed76b5b8506af2a8fe1fa51f6e7bec98cae3090c29316179255
@@ -1,3 +1,3 @@
1
1
  class DebugExceptionsJson
2
- VERSION = '0.2.2'
2
+ VERSION = '0.2.3'
3
3
  end
@@ -1,3 +1,6 @@
1
+ require 'active_support/deprecation'
2
+ require 'active_support/logger'
3
+
1
4
  class DebugExceptionsJson
2
5
  DEFAULT_BUILDER = -> (exception, env) {
3
6
  [
@@ -33,6 +36,7 @@ class DebugExceptionsJson
33
36
  raise exception unless show_exception?(env)
34
37
  raise exception unless response_with_json?(env)
35
38
 
39
+ log_error(exception, env)
36
40
  @response_builder.call(exception, env)
37
41
  end
38
42
 
@@ -45,4 +49,25 @@ class DebugExceptionsJson
45
49
  def response_with_json?(env)
46
50
  env['HTTP_ACCEPT'] =~ /application\/json/
47
51
  end
52
+
53
+ def log_error(exception, env)
54
+ binding.pry
55
+ logger = logger(env)
56
+ return unless logger
57
+
58
+ ActiveSupport::Deprecation.silence do
59
+ message = "\n#{exception.class} (#{exception.message}):\n"
60
+ message << exception.annoted_source_code.to_s if exception.respond_to?(:annoted_source_code)
61
+ message << " " << exception.backtrace.join("\n ")
62
+ logger.fatal("#{message}\n\n")
63
+ end
64
+ end
65
+
66
+ def logger(env)
67
+ env['action_dispatch.logger'] || stderr_logger
68
+ end
69
+
70
+ def stderr_logger
71
+ @stderr_logger ||= ActiveSupport::Logger.new($stderr)
72
+ end
48
73
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: debug_exceptions_json
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Taiki Ono
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-04 00:00:00.000000000 Z
11
+ date: 2014-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails