superlogger 1.0.0 → 1.1.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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +31 -0
  3. data/lib/superlogger/superlogger_middleware.rb +18 -11
  4. data/lib/superlogger/version.rb +1 -1
  5. data/lib/superlogger.rb +12 -1
  6. data/test/dummy/app/controllers/home_controller.rb +6 -0
  7. data/test/dummy/config/application.rb +8 -0
  8. data/test/dummy/config/routes.rb +1 -0
  9. data/test/superlogger_test.rb +62 -7
  10. metadata +31 -155
  11. data/test/dummy/db/development.sqlite3 +0 -0
  12. data/test/dummy/db/test.sqlite3 +0 -0
  13. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/0R/0RGmr4z2PoNrXTofNEJ55Wrv_v-N3HOrmSgU5ILkXTw.cache +0 -1
  14. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/0W/0W5MOuazdWJMvIog5vEAQfl3ZJiz8KFyVLyNiZ2Tp1I.cache +0 -0
  15. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/2T/2T69JIvG7bvXlqaEFz4SAmmQOu5KcDL3S7O0745_gVc.cache +0 -0
  16. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/2k/2k-V7fw5kQxgx8rJcOMPyJDQ4JbisbnfZQoC2TqHp78.cache +0 -0
  17. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/2l/2leDpqGCN2J9vjiI1IHvVMlK22cXy2F4hknNF3jqmkg.cache +0 -0
  18. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/4T/4TXTXXyWGjYW5FUpWGY5b1ecc_ASKWAmht53-rfZ3f4.cache +0 -0
  19. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/5L/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache +0 -0
  20. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/A-/A-o1cjWqvf_esvFcsIdNZYiYRAbfoTl6xWZoBdtvvsU.cache +0 -0
  21. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/AL/ALcoKZSxe_5jgiHJ70icJlBPAscxfFhRmVLKCKPFHrc.cache +0 -0
  22. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/CK/CKmWm-PGWv8LhwLfTt-8iccYQtEKrPkNNoK21YhKq8M.cache +0 -1
  23. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/DN/DNx8QhxaypFYkrRxHa0ASOI5Re2lXRbN9rGK77jX7K0.cache +0 -0
  24. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/DS/DSOLSc6A5RVSmvM415eEWAWG_AgOvZcLZOXQjsXyWQA.cache +0 -2
  25. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Dh/DhrpoAlYO43_xJT7cR7N5n3Gxc9T9lAEkJkux4ufwrc.cache +0 -1
  26. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/DO9Ss2TWmmIJ98nseuLX1kY8yXnC3rfw7qPbjcIiyIg.cache +0 -0
  27. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/Do83AoOat5W-c1g7piDGy2GMmffsY6JY0Qfuh5PY3GM.cache +0 -0
  28. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/GP/GPU7T8ibZQ9TVUeUKytpkmqoMwPEDhozvdIulY_ghQc.cache +0 -1
  29. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Hm/HmZiOch1q-Y-bWc2Bg4CkHs0WouAlAVwELLnUki2URU.cache +0 -1
  30. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/M6/M64-PqNj7ipUe_WWRewKavcFikbdVLpvtbkzo5KfCtg.cache +0 -1
  31. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/NX/NXtwZOKZ7yMMJA2FnKYowCStq4BXaQgukCAycF23R4Q.cache +0 -1
  32. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/OI/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache +0 -0
  33. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Pu/Puw-QRmCoV436fSHMZZyBpIn_ZTQoicwVTISlz3vQoQ.cache +0 -1
  34. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Rw/RwX76wVv_k976ST-OhQyd6E8Fgi2kfLW6yDFSdnCKA0.cache +0 -0
  35. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/SR/SRlBuVekx5voijkM7Pur-7CEeD9aOoItZYTK7KkxrPc.cache +0 -2
  36. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/TG/TGTts-z_YI7jHUT1N8DOBGdHJLrIKmH_X-sgt638nU4.cache +0 -0
  37. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/XX/XXb_KYmRcMmdP6iwA-m5TK3mNwd-sAWuIDU2BwYh8ys.cache +0 -0
  38. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/YB/YBDUr0r2s3vM4McoPLgA6pwj6jYXTvANXBCQr79bS3U.cache +0 -1
  39. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/Yu/YuxSXQJiI3M2WF3HcV2F-X-X6v0aqPZ87jaK3NIJpBQ.cache +0 -1
  40. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/aK/aKG1BE9i1nkV7pxwlTB5hccxO_vqSnmj2oxeB-VW1zY.cache +0 -0
  41. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/bB/bBXVQV2jOiSWOwtiOr55XUT7RCVlSA-htXqhCHd166k.cache +0 -1
  42. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/bv/bvWA2msm_wKe-upUjI2eMf_Eqi7QlqXZ6M0_TsXEn4E.cache +0 -1
  43. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/cV/cV6tr7nK4y6dNjxzPIKLUszmCcCbY6g48N5ypr-cf78.cache +0 -0
  44. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/cq/cqYKlDsPOsR-Hutsi1Ia2tXUuzOfzbVLP4i9Aonwckk.cache +0 -0
  45. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/dp/dpSU2IktVAqqMTj5iCA6Xg9aVjhNwuhNX987AAPo4Ss.cache +0 -1
  46. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/ec/ecGOPxDOC-PTR8Q87Zu7XU3BS3ueVqHZihjkgAL1GSI.cache +0 -1
  47. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/gC/gCdMfTV-UrcBy2q1SovEwzaag5CwB0k_eFIstyv4gLk.cache +0 -0
  48. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/gZ/gZp3uXMHuYQC4hzCr7bQfetKNdJAtbQmg3so2KpW1Dw.cache +0 -2
  49. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/hF/hFSTd38enn2Za93gw3GzWrAZwHeNX0pUJPH7EiRpNn4.cache +0 -1
  50. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/hZ/hZi1k6tpxxCGYxRe7zY74ItcOI8gZrREOpGuA8JSpGg.cache +0 -0
  51. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/iU/iU7cx0nTwBBaaOT_qzXbI8RiIXouPchtWuIlVcsWWks.cache +0 -0
  52. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/iZ/iZ8YcXqVbBIniScbBCou8v1FocbWLbrgDzpQ5UnVuZI.cache +0 -0
  53. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/ig/igCHoAZu1ESqunQb96qV2Dmbt41uWhdJs8ztO5kRXi8.cache +0 -1
  54. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/jq/jqO64m7tXOlADW5o1Sy9C08R_i48GO1Wo0w0mUE4UPg.cache +0 -1
  55. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/ko/koq-iWAlxiTFpALhUJsXNVGhxy7qAKZP69zJ8E9YdFY.cache +0 -1
  56. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/ml/mlO31cacExw_jelM3vRJ3uZSMqsk-50vvXucoON-bkI.cache +0 -1
  57. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/pE/pEhaat2KBd5SrT7szC_8R1_6hK17FTpvoRFkmCRSD3M.cache +0 -0
  58. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/ph/phUbOaP6NCn983I6TT7qDlnwcmCAKjJVyDnDfKfjrI0.cache +0 -0
  59. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/pv/pv6tV3CDkIAmLXdU8EPLlNEkXAKJPufVD4VP30o4fWo.cache +0 -0
  60. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/q2/q2rsSyCOy3kUHoKipvqxAw3Z_GfF7PufP5wKBV2EEbA.cache +0 -0
  61. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/qE/qEdbzlDf-HNnbh60QhpqpvwNeEnCU8tTrPEnZAV4NE8.cache +0 -1
  62. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/r-/r-16n5JdDzbIS_kN06fC4J_-GA2dpracXKYNHsLe3d4.cache +0 -0
  63. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/sO/sOS4yyqF_bYEJm1CSvCyiFQcStv5XUNBttwTmekhjv0.cache +0 -0
  64. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/t3/t3tLjCcLizdoIbYBzZawbDaaD_niNTCxTyMWCAGVBso.cache +0 -1
  65. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/vW/vWfhzaoyrvEUgX0vnRufnld1buC_KEfVE_Y9GxTlEFc.cache +0 -2
  66. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/vo/voyjfPaosDvduWR6jKwI00MuapmfnNxtssiU8OpJCn8.cache +0 -1
  67. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/wq/wq0Gkd5cDkoJX9cTbcFfa70O1tFJZOB-WBE1B6A1D0Q.cache +0 -1
  68. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/x3/x3RXrNrKZMLOtSL6nQa-yFfgd0YP5AaeoP_5isPNggc.cache +0 -1
  69. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/xD/xDCgzYS-NOKY4wQ98x3bpVUmBipKrajnbyKsfZeXyKE.cache +0 -1
  70. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/x_/x_m3GCJB04OFwZrek6vFjk1S_Qbkf1Kr5PAeGvTLUjE.cache +0 -1
  71. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/yw/ywwwCinw2TbO7jW-9-T0BKJdM4rcEDG7yxRiGJAuSqU.cache +0 -0
  72. data/test/dummy/tmp/cache/assets/sprockets/v4.0.0/z8/z86GAeZHuKvb4Z2ApdQizPKZkd9bJy3OH8zcwtNG5bQ.cache +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6c620e677e4aebf4aea5cab58f2a6e392c5266016eaf32aef3a9a88f96c402fd
4
- data.tar.gz: 59fd2728e8398194e9188f212d7dc3f1155f1c2f101d0916747fbcbd52d1c23c
3
+ metadata.gz: 31133b660d9663478b8feabfa3bfc2f38431485648ef434230ae56e778b9a65c
4
+ data.tar.gz: 7c2bf630ad96997d64a6ac7224a3635fe3dd6246b79ab289305498bdf68a5ac8
5
5
  SHA512:
6
- metadata.gz: fd1ab3fe21cd6759e6732746fd6e206a71816f9926559098a0815d6940aa058568c9f5204b48dd643fe74b1639ddbe938dc11f9817ce5485058ade00207b451d
7
- data.tar.gz: b55db9a3bccd0ce12fb20666b40f85d73c43b873ff9c9dab7cc776b3cd4667a7939202a18ab41212f9c33c31f9b5bebfde84a994b2126bf0a58ba8d13528fb5c
6
+ metadata.gz: 29ca48eafa2e7e648cb852e6e2142aa4092f95b5e1b86a9cd0eb432ac180616b9af0c2746c6cfa161ec997038fe7e38b3b5552bb8bf01b0a55ae7003211bad0b
7
+ data.tar.gz: b554d0898a26c4b32936754cec07cc557faafa74c719e918c789d20b7f11110e98915ff62476d2de199d2bc0a0a445011c7531f02642b5acbaf4e1caa5382142
data/README.md CHANGED
@@ -72,3 +72,34 @@ Rails.logger.info "Meatball"
72
72
  - `request_id` = 32 characters
73
73
  - `msg` = If values given is not a hash, it is treated as `{"msg":<value>"}`
74
74
  - All duration related fields are in milliseconds
75
+
76
+ To log additional fields that are available on the `ActionDispatch::Request` object, set in `config/application.rb`:
77
+ ```ruby
78
+ Superlogger.include_log_fields = lambda do |request|
79
+ # Return a hash of extra fields to log.
80
+ {
81
+ user_id: request.session[:current_user].id,
82
+ ip: request.ip
83
+ }
84
+ end
85
+ ```
86
+
87
+ ## Testing ##
88
+
89
+ To run the tests for Superlogger:
90
+
91
+ ```sh
92
+ rake test
93
+ ```
94
+
95
+ ## Publishing a New Release ##
96
+
97
+ 1. Bump the version in `lib/superlogger/version.rb`.
98
+ 1. Run `bundle install` to update the version of Superlogger in `Gemfile.lock`.
99
+ 1. Open a pull request with the changes from the above steps.
100
+ 1. After the pull request is merged, publish a new release on GitHub with the same version tag.
101
+ 1. Clear all temporary files to prevent them from being bundled into the gem.
102
+ This is most easily achieved by building from a new clone of the repository.
103
+ 1. Run `gem build superlogger.gemspec` to build the gem.
104
+ 1. Run `gem push superlogger-x.x.x.gem` to publish the gem to RubyGems.
105
+ You will be prompted for credentials if this is your first time publishing the gem on your machine.
@@ -1,7 +1,10 @@
1
1
  module Superlogger
2
2
  class SuperloggerMiddleware
3
- def initialize(app)
3
+ def initialize(app, options = {})
4
4
  @app = app
5
+ @options = {
6
+ include_log_fields: ->(_request) { {} }
7
+ }.merge(options)
5
8
  end
6
9
 
7
10
  def call(env)
@@ -15,7 +18,8 @@ module Superlogger
15
18
  end
16
19
 
17
20
  def process_request(request)
18
- setup_logging(request)
21
+ setup_request_id_for_logging(request)
22
+ setup_session_id_for_logging(request)
19
23
 
20
24
  # Start of request
21
25
  Rails.logger.info method: request.method, path: request.fullpath
@@ -27,21 +31,24 @@ module Superlogger
27
31
 
28
32
  # End of request
29
33
  duration = ((t2 - t1) * 1000).to_f.round(2)
30
- Rails.logger.info method: request.method, path: request.fullpath, response_time: duration, status: status
34
+
35
+ # After the request has been processed, the session ID can change from what it was before the request
36
+ # was processed. As such, we need to setup the session ID again.
37
+ setup_session_id_for_logging(request)
38
+
39
+ Rails.logger.info method: request.method, path: request.fullpath, response_time: duration, status: status, **@options[:include_log_fields].call(request)
31
40
 
32
41
  [status, _headers, _response]
33
42
  end
34
43
 
35
- def setup_logging(request)
36
- if request.env['rack.session']
37
- # Session is lazy loaded. Force session to load if it is not already loaded.
38
- request.env['rack.session'].send(:load!) unless request.env['rack.session'].id
44
+ def setup_request_id_for_logging(request)
45
+ Superlogger.request_id = request.uuid.try(:gsub, '-', '')
46
+ end
39
47
 
40
- # Store session id before any actual logging is done
41
- Superlogger.session_id = request.env['rack.session'].id.to_s
42
- end
48
+ def setup_session_id_for_logging(request)
49
+ return unless request.env['rack.session']&.id
43
50
 
44
- Superlogger.request_id = request.uuid.try(:gsub, '-', '')
51
+ Superlogger.session_id = request.env['rack.session'].id.to_s
45
52
  end
46
53
  end
47
54
  end
@@ -1,3 +1,3 @@
1
1
  module Superlogger
2
- VERSION = '1.0.0'
2
+ VERSION = '1.1.0'
3
3
  end
data/lib/superlogger.rb CHANGED
@@ -3,6 +3,7 @@ require 'superlogger/logger'
3
3
 
4
4
  module Superlogger
5
5
  @@enabled = false
6
+ @@include_log_fields = nil
6
7
 
7
8
  module_function
8
9
 
@@ -18,7 +19,9 @@ module Superlogger
18
19
  require 'superlogger/superlogger_middleware'
19
20
 
20
21
  # important to insert after session middleware so we can get the session id
21
- app.middleware.use Superlogger::SuperloggerMiddleware
22
+ app.middleware.use Superlogger::SuperloggerMiddleware, {
23
+ include_log_fields: @@include_log_fields
24
+ }.compact
22
25
  end
23
26
 
24
27
  def detach_existing_log_subscribers
@@ -74,6 +77,14 @@ module Superlogger
74
77
  def enabled
75
78
  @@enabled
76
79
  end
80
+
81
+ def include_log_fields=(include_log_fields)
82
+ @@include_log_fields=include_log_fields
83
+ end
84
+
85
+ def include_log_fields
86
+ @@include_log_fields
87
+ end
77
88
  end
78
89
 
79
90
  require 'superlogger/railtie' if defined?(Rails)
@@ -2,4 +2,10 @@ class HomeController < ApplicationController
2
2
  def index
3
3
  Something.where(paper: '123', stone: '456').first
4
4
  end
5
+
6
+ def index_with_session
7
+ # Force load session by writing to it.
8
+ session[:current_time] = Time.now
9
+ redirect_to action: :index
10
+ end
5
11
  end
@@ -23,5 +23,13 @@ module Dummy
23
23
 
24
24
  Superlogger.enabled = true
25
25
  config.logger = Superlogger::Logger.new(STDOUT)
26
+
27
+ Superlogger.include_log_fields = lambda do |request|
28
+ session = request.session
29
+ {
30
+ current_time: session[:current_time],
31
+ hello: 'world'
32
+ }
33
+ end
26
34
  end
27
35
  end
@@ -1,3 +1,4 @@
1
1
  Rails.application.routes.draw do
2
2
  get 'home/index'
3
+ get 'home/index_with_session'
3
4
  end
@@ -33,10 +33,30 @@ class SuperloggerTest < ActiveSupport::TestCase
33
33
  assert_not_nil Superlogger::VERSION
34
34
  end
35
35
 
36
- test 'log format' do
36
+ test 'log format when session is not loaded' do
37
37
  request('home/index')
38
38
 
39
- fields = output.first
39
+ fields = output[4]
40
+ assert fields.key?("level")
41
+ assert fields.key?("ts")
42
+ assert fields.key?("caller")
43
+ assert_equal fields.key?("session_id"), false
44
+ assert fields.key?("request_id")
45
+ end
46
+
47
+ test 'log format when session is loaded' do
48
+ request('home/index_with_session')
49
+
50
+ # Session is not loaded before the request is processed.
51
+ fields = output[0]
52
+ assert fields.key?("level")
53
+ assert fields.key?("ts")
54
+ assert fields.key?("caller")
55
+ assert_equal fields.key?("session_id"), false
56
+ assert fields.key?("request_id")
57
+
58
+ # Session is loaded after the request is processed.
59
+ fields = output[4]
40
60
  assert fields.key?("level")
41
61
  assert fields.key?("ts")
42
62
  assert fields.key?("caller")
@@ -44,14 +64,49 @@ class SuperloggerTest < ActiveSupport::TestCase
44
64
  assert fields.key?("request_id")
45
65
  end
46
66
 
67
+ # The additional fields to log are defined in `/test/dummy/config/application.rb`.
68
+ # Unfortunately, because `Superlogger::SuperloggerMiddleware` is initialised
69
+ # together with the Rails application, and because we cannot programmatically
70
+ # reinitialise the Rails application or run multiple instances of it, we are
71
+ # only able to test a single Superlogger configuration. Once the Rails
72
+ # application is initialised, the middleware stack cannot be changed.
73
+ #
74
+ # This effectively means that we are unable to change the Superlogger settings
75
+ # in the Rails application configuration on a per-test basis. For the sake of
76
+ # testing, we choose the Superlogger settings that let us test the presence of
77
+ # behaviours and set the additional fields to log.
78
+ test 'log format when logging additional fields' do
79
+ request('home/index_with_session')
80
+
81
+ # Additional fields are not logged before the request is processed.
82
+ fields = output[0]
83
+ assert fields.key?("level")
84
+ assert fields.key?("ts")
85
+ assert fields.key?("caller")
86
+ assert_equal fields.key?("session_id"), false
87
+ assert fields.key?("request_id")
88
+ assert_equal fields.key?("current_time"), false
89
+ assert_equal fields.key?("hello"), false
90
+
91
+ # Additional fields are logged after the request is processed.
92
+ fields = output[4]
93
+ assert fields.key?("level")
94
+ assert fields.key?("ts")
95
+ assert fields.key?("caller")
96
+ assert fields.key?("session_id")
97
+ assert fields.key?("request_id")
98
+ assert fields.key?("current_time")
99
+ assert fields.key?("hello")
100
+ end
101
+
47
102
  test 'timestamp' do
48
103
  request('home/index')
49
104
  assert_equal Time.at(output[0]["ts"]).to_date, Date.today
50
105
  end
51
106
 
52
107
  test 'with session_id' do
53
- env = request('home/index')
54
- assert_match env['rack.session'].id.to_s[0..11], output[0]["session_id"]
108
+ env = request('home/index_with_session')
109
+ assert_match env['rack.session'].id.to_s[0..11], output[4]["session_id"]
55
110
  end
56
111
 
57
112
  test 'without session_id' do
@@ -108,7 +163,7 @@ class SuperloggerTest < ActiveSupport::TestCase
108
163
  test 'action_controller_log_subscriber.process_action' do
109
164
  request('home/index')
110
165
 
111
- fields = output[5]
166
+ fields = output[7]
112
167
  assert_operator fields["view_duration"], :>, 0
113
168
  assert_operator fields["db_duration"], :>, 0
114
169
  end
@@ -116,11 +171,11 @@ class SuperloggerTest < ActiveSupport::TestCase
116
171
  test 'action_view_log_subscriber.render_template.render_partial.render_collection' do
117
172
  request('home/index')
118
173
 
119
- fields = output[3]
174
+ fields = output[4]
120
175
  assert_match 'partial.html.erb', fields["view"]
121
176
  assert fields.key?("duration")
122
177
 
123
- fields = output[4]
178
+ fields = output[5]
124
179
  assert_match 'index.html.erb', fields["view"]
125
180
  assert fields.key?("duration")
126
181
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: superlogger
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soh Yu Ming
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-04 00:00:00.000000000 Z
11
+ date: 2024-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -90,81 +90,19 @@ files:
90
90
  - test/dummy/config/locales/en.yml
91
91
  - test/dummy/config/routes.rb
92
92
  - test/dummy/config/secrets.yml
93
- - test/dummy/db/development.sqlite3
94
93
  - test/dummy/db/migrate/20160120090718_create_somethings.rb
95
94
  - test/dummy/db/schema.rb
96
- - test/dummy/db/test.sqlite3
97
95
  - test/dummy/public/404.html
98
96
  - test/dummy/public/422.html
99
97
  - test/dummy/public/500.html
100
98
  - test/dummy/public/favicon.ico
101
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/0R/0RGmr4z2PoNrXTofNEJ55Wrv_v-N3HOrmSgU5ILkXTw.cache
102
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/0W/0W5MOuazdWJMvIog5vEAQfl3ZJiz8KFyVLyNiZ2Tp1I.cache
103
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2T/2T69JIvG7bvXlqaEFz4SAmmQOu5KcDL3S7O0745_gVc.cache
104
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2k/2k-V7fw5kQxgx8rJcOMPyJDQ4JbisbnfZQoC2TqHp78.cache
105
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2l/2leDpqGCN2J9vjiI1IHvVMlK22cXy2F4hknNF3jqmkg.cache
106
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/4T/4TXTXXyWGjYW5FUpWGY5b1ecc_ASKWAmht53-rfZ3f4.cache
107
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/5L/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache
108
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/A-/A-o1cjWqvf_esvFcsIdNZYiYRAbfoTl6xWZoBdtvvsU.cache
109
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/AL/ALcoKZSxe_5jgiHJ70icJlBPAscxfFhRmVLKCKPFHrc.cache
110
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/CK/CKmWm-PGWv8LhwLfTt-8iccYQtEKrPkNNoK21YhKq8M.cache
111
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/DN/DNx8QhxaypFYkrRxHa0ASOI5Re2lXRbN9rGK77jX7K0.cache
112
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/DS/DSOLSc6A5RVSmvM415eEWAWG_AgOvZcLZOXQjsXyWQA.cache
113
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Dh/DhrpoAlYO43_xJT7cR7N5n3Gxc9T9lAEkJkux4ufwrc.cache
114
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/DO9Ss2TWmmIJ98nseuLX1kY8yXnC3rfw7qPbjcIiyIg.cache
115
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/Do83AoOat5W-c1g7piDGy2GMmffsY6JY0Qfuh5PY3GM.cache
116
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/GP/GPU7T8ibZQ9TVUeUKytpkmqoMwPEDhozvdIulY_ghQc.cache
117
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Hm/HmZiOch1q-Y-bWc2Bg4CkHs0WouAlAVwELLnUki2URU.cache
118
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/M6/M64-PqNj7ipUe_WWRewKavcFikbdVLpvtbkzo5KfCtg.cache
119
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/NX/NXtwZOKZ7yMMJA2FnKYowCStq4BXaQgukCAycF23R4Q.cache
120
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/OI/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache
121
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Pu/Puw-QRmCoV436fSHMZZyBpIn_ZTQoicwVTISlz3vQoQ.cache
122
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Rw/RwX76wVv_k976ST-OhQyd6E8Fgi2kfLW6yDFSdnCKA0.cache
123
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/SR/SRlBuVekx5voijkM7Pur-7CEeD9aOoItZYTK7KkxrPc.cache
124
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/TG/TGTts-z_YI7jHUT1N8DOBGdHJLrIKmH_X-sgt638nU4.cache
125
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/XX/XXb_KYmRcMmdP6iwA-m5TK3mNwd-sAWuIDU2BwYh8ys.cache
126
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/YB/YBDUr0r2s3vM4McoPLgA6pwj6jYXTvANXBCQr79bS3U.cache
127
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Yu/YuxSXQJiI3M2WF3HcV2F-X-X6v0aqPZ87jaK3NIJpBQ.cache
128
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/aK/aKG1BE9i1nkV7pxwlTB5hccxO_vqSnmj2oxeB-VW1zY.cache
129
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/bB/bBXVQV2jOiSWOwtiOr55XUT7RCVlSA-htXqhCHd166k.cache
130
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/bv/bvWA2msm_wKe-upUjI2eMf_Eqi7QlqXZ6M0_TsXEn4E.cache
131
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/cV/cV6tr7nK4y6dNjxzPIKLUszmCcCbY6g48N5ypr-cf78.cache
132
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/cq/cqYKlDsPOsR-Hutsi1Ia2tXUuzOfzbVLP4i9Aonwckk.cache
133
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/dp/dpSU2IktVAqqMTj5iCA6Xg9aVjhNwuhNX987AAPo4Ss.cache
134
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ec/ecGOPxDOC-PTR8Q87Zu7XU3BS3ueVqHZihjkgAL1GSI.cache
135
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/gC/gCdMfTV-UrcBy2q1SovEwzaag5CwB0k_eFIstyv4gLk.cache
136
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/gZ/gZp3uXMHuYQC4hzCr7bQfetKNdJAtbQmg3so2KpW1Dw.cache
137
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/hF/hFSTd38enn2Za93gw3GzWrAZwHeNX0pUJPH7EiRpNn4.cache
138
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/hZ/hZi1k6tpxxCGYxRe7zY74ItcOI8gZrREOpGuA8JSpGg.cache
139
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/iU/iU7cx0nTwBBaaOT_qzXbI8RiIXouPchtWuIlVcsWWks.cache
140
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/iZ/iZ8YcXqVbBIniScbBCou8v1FocbWLbrgDzpQ5UnVuZI.cache
141
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ig/igCHoAZu1ESqunQb96qV2Dmbt41uWhdJs8ztO5kRXi8.cache
142
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/jq/jqO64m7tXOlADW5o1Sy9C08R_i48GO1Wo0w0mUE4UPg.cache
143
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ko/koq-iWAlxiTFpALhUJsXNVGhxy7qAKZP69zJ8E9YdFY.cache
144
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ml/mlO31cacExw_jelM3vRJ3uZSMqsk-50vvXucoON-bkI.cache
145
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/pE/pEhaat2KBd5SrT7szC_8R1_6hK17FTpvoRFkmCRSD3M.cache
146
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ph/phUbOaP6NCn983I6TT7qDlnwcmCAKjJVyDnDfKfjrI0.cache
147
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/pv/pv6tV3CDkIAmLXdU8EPLlNEkXAKJPufVD4VP30o4fWo.cache
148
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/q2/q2rsSyCOy3kUHoKipvqxAw3Z_GfF7PufP5wKBV2EEbA.cache
149
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/qE/qEdbzlDf-HNnbh60QhpqpvwNeEnCU8tTrPEnZAV4NE8.cache
150
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/r-/r-16n5JdDzbIS_kN06fC4J_-GA2dpracXKYNHsLe3d4.cache
151
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/sO/sOS4yyqF_bYEJm1CSvCyiFQcStv5XUNBttwTmekhjv0.cache
152
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/t3/t3tLjCcLizdoIbYBzZawbDaaD_niNTCxTyMWCAGVBso.cache
153
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/vW/vWfhzaoyrvEUgX0vnRufnld1buC_KEfVE_Y9GxTlEFc.cache
154
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/vo/voyjfPaosDvduWR6jKwI00MuapmfnNxtssiU8OpJCn8.cache
155
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/wq/wq0Gkd5cDkoJX9cTbcFfa70O1tFJZOB-WBE1B6A1D0Q.cache
156
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/x3/x3RXrNrKZMLOtSL6nQa-yFfgd0YP5AaeoP_5isPNggc.cache
157
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/xD/xDCgzYS-NOKY4wQ98x3bpVUmBipKrajnbyKsfZeXyKE.cache
158
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/x_/x_m3GCJB04OFwZrek6vFjk1S_Qbkf1Kr5PAeGvTLUjE.cache
159
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/yw/ywwwCinw2TbO7jW-9-T0BKJdM4rcEDG7yxRiGJAuSqU.cache
160
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/z8/z86GAeZHuKvb4Z2ApdQizPKZkd9bJy3OH8zcwtNG5bQ.cache
161
99
  - test/superlogger_test.rb
162
100
  - test/test_helper.rb
163
101
  homepage: https://github.com/moexmen/superlogger
164
102
  licenses:
165
103
  - MIT
166
104
  metadata: {}
167
- post_install_message:
105
+ post_install_message:
168
106
  rdoc_options: []
169
107
  require_paths:
170
108
  - lib
@@ -179,112 +117,50 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
117
  - !ruby/object:Gem::Version
180
118
  version: '0'
181
119
  requirements: []
182
- rubygems_version: 3.0.3
183
- signing_key:
120
+ rubygems_version: 3.5.9
121
+ signing_key:
184
122
  specification_version: 4
185
123
  summary: Machine-readable logging for Rails
186
124
  test_files:
187
- - test/dummy/app/models/something.rb
125
+ - test/dummy/README.rdoc
126
+ - test/dummy/Rakefile
127
+ - test/dummy/app/assets/config/manifest.js
128
+ - test/dummy/app/assets/javascripts/application.js
129
+ - test/dummy/app/assets/stylesheets/application.css
188
130
  - test/dummy/app/controllers/application_controller.rb
189
131
  - test/dummy/app/controllers/home_controller.rb
190
- - test/dummy/app/views/home/index.html.erb
132
+ - test/dummy/app/models/something.rb
191
133
  - test/dummy/app/views/home/_partial.html.erb
134
+ - test/dummy/app/views/home/index.html.erb
192
135
  - test/dummy/app/views/layouts/application.html.erb
193
- - test/dummy/app/assets/config/manifest.js
194
- - test/dummy/app/assets/javascripts/application.js
195
- - test/dummy/app/assets/stylesheets/application.css
196
- - test/dummy/bin/rake
197
- - test/dummy/bin/setup
198
136
  - test/dummy/bin/bundle
199
137
  - test/dummy/bin/rails
200
- - test/dummy/config/secrets.yml
201
- - test/dummy/config/routes.rb
202
- - test/dummy/config/locales/en.yml
203
- - test/dummy/config/environments/production.rb
204
- - test/dummy/config/environments/development.rb
205
- - test/dummy/config/environments/test.rb
206
- - test/dummy/config/environment.rb
138
+ - test/dummy/bin/rake
139
+ - test/dummy/bin/setup
207
140
  - test/dummy/config/application.rb
208
- - test/dummy/config/database.yml
209
141
  - test/dummy/config/boot.rb
142
+ - test/dummy/config/database.yml
143
+ - test/dummy/config/environment.rb
144
+ - test/dummy/config/environments/development.rb
145
+ - test/dummy/config/environments/production.rb
146
+ - test/dummy/config/environments/test.rb
147
+ - test/dummy/config/initializers/assets.rb
210
148
  - test/dummy/config/initializers/backtrace_silencers.rb
211
- - test/dummy/config/initializers/mime_types.rb
149
+ - test/dummy/config/initializers/cookies_serializer.rb
212
150
  - test/dummy/config/initializers/filter_parameter_logging.rb
151
+ - test/dummy/config/initializers/inflections.rb
152
+ - test/dummy/config/initializers/mime_types.rb
213
153
  - test/dummy/config/initializers/session_store.rb
214
154
  - test/dummy/config/initializers/wrap_parameters.rb
215
- - test/dummy/config/initializers/assets.rb
216
- - test/dummy/config/initializers/cookies_serializer.rb
217
- - test/dummy/config/initializers/inflections.rb
155
+ - test/dummy/config/locales/en.yml
156
+ - test/dummy/config/routes.rb
157
+ - test/dummy/config/secrets.yml
218
158
  - test/dummy/config.ru
219
- - test/dummy/Rakefile
220
- - test/dummy/public/favicon.ico
159
+ - test/dummy/db/migrate/20160120090718_create_somethings.rb
160
+ - test/dummy/db/schema.rb
161
+ - test/dummy/public/404.html
221
162
  - test/dummy/public/422.html
222
163
  - test/dummy/public/500.html
223
- - test/dummy/public/404.html
224
- - test/dummy/db/schema.rb
225
- - test/dummy/db/test.sqlite3
226
- - test/dummy/db/migrate/20160120090718_create_somethings.rb
227
- - test/dummy/db/development.sqlite3
228
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/yw/ywwwCinw2TbO7jW-9-T0BKJdM4rcEDG7yxRiGJAuSqU.cache
229
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/YB/YBDUr0r2s3vM4McoPLgA6pwj6jYXTvANXBCQr79bS3U.cache
230
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/vo/voyjfPaosDvduWR6jKwI00MuapmfnNxtssiU8OpJCn8.cache
231
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/pv/pv6tV3CDkIAmLXdU8EPLlNEkXAKJPufVD4VP30o4fWo.cache
232
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/pE/pEhaat2KBd5SrT7szC_8R1_6hK17FTpvoRFkmCRSD3M.cache
233
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/0W/0W5MOuazdWJMvIog5vEAQfl3ZJiz8KFyVLyNiZ2Tp1I.cache
234
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/DN/DNx8QhxaypFYkrRxHa0ASOI5Re2lXRbN9rGK77jX7K0.cache
235
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/M6/M64-PqNj7ipUe_WWRewKavcFikbdVLpvtbkzo5KfCtg.cache
236
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/gZ/gZp3uXMHuYQC4hzCr7bQfetKNdJAtbQmg3so2KpW1Dw.cache
237
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/bB/bBXVQV2jOiSWOwtiOr55XUT7RCVlSA-htXqhCHd166k.cache
238
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Hm/HmZiOch1q-Y-bWc2Bg4CkHs0WouAlAVwELLnUki2URU.cache
239
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Dh/DhrpoAlYO43_xJT7cR7N5n3Gxc9T9lAEkJkux4ufwrc.cache
240
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/bv/bvWA2msm_wKe-upUjI2eMf_Eqi7QlqXZ6M0_TsXEn4E.cache
241
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/DO9Ss2TWmmIJ98nseuLX1kY8yXnC3rfw7qPbjcIiyIg.cache
242
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/Do83AoOat5W-c1g7piDGy2GMmffsY6JY0Qfuh5PY3GM.cache
243
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/aK/aKG1BE9i1nkV7pxwlTB5hccxO_vqSnmj2oxeB-VW1zY.cache
244
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/AL/ALcoKZSxe_5jgiHJ70icJlBPAscxfFhRmVLKCKPFHrc.cache
245
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/DS/DSOLSc6A5RVSmvM415eEWAWG_AgOvZcLZOXQjsXyWQA.cache
246
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/iU/iU7cx0nTwBBaaOT_qzXbI8RiIXouPchtWuIlVcsWWks.cache
247
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ig/igCHoAZu1ESqunQb96qV2Dmbt41uWhdJs8ztO5kRXi8.cache
248
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/iZ/iZ8YcXqVbBIniScbBCou8v1FocbWLbrgDzpQ5UnVuZI.cache
249
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ec/ecGOPxDOC-PTR8Q87Zu7XU3BS3ueVqHZihjkgAL1GSI.cache
250
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/wq/wq0Gkd5cDkoJX9cTbcFfa70O1tFJZOB-WBE1B6A1D0Q.cache
251
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2T/2T69JIvG7bvXlqaEFz4SAmmQOu5KcDL3S7O0745_gVc.cache
252
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/x_/x_m3GCJB04OFwZrek6vFjk1S_Qbkf1Kr5PAeGvTLUjE.cache
253
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/t3/t3tLjCcLizdoIbYBzZawbDaaD_niNTCxTyMWCAGVBso.cache
254
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/r-/r-16n5JdDzbIS_kN06fC4J_-GA2dpracXKYNHsLe3d4.cache
255
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Pu/Puw-QRmCoV436fSHMZZyBpIn_ZTQoicwVTISlz3vQoQ.cache
256
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/0R/0RGmr4z2PoNrXTofNEJ55Wrv_v-N3HOrmSgU5ILkXTw.cache
257
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/sO/sOS4yyqF_bYEJm1CSvCyiFQcStv5XUNBttwTmekhjv0.cache
258
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/vW/vWfhzaoyrvEUgX0vnRufnld1buC_KEfVE_Y9GxTlEFc.cache
259
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/SR/SRlBuVekx5voijkM7Pur-7CEeD9aOoItZYTK7KkxrPc.cache
260
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/5L/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache
261
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ph/phUbOaP6NCn983I6TT7qDlnwcmCAKjJVyDnDfKfjrI0.cache
262
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Yu/YuxSXQJiI3M2WF3HcV2F-X-X6v0aqPZ87jaK3NIJpBQ.cache
263
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/z8/z86GAeZHuKvb4Z2ApdQizPKZkd9bJy3OH8zcwtNG5bQ.cache
264
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ml/mlO31cacExw_jelM3vRJ3uZSMqsk-50vvXucoON-bkI.cache
265
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/hZ/hZi1k6tpxxCGYxRe7zY74ItcOI8gZrREOpGuA8JSpGg.cache
266
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/GP/GPU7T8ibZQ9TVUeUKytpkmqoMwPEDhozvdIulY_ghQc.cache
267
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/NX/NXtwZOKZ7yMMJA2FnKYowCStq4BXaQgukCAycF23R4Q.cache
268
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/hF/hFSTd38enn2Za93gw3GzWrAZwHeNX0pUJPH7EiRpNn4.cache
269
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/A-/A-o1cjWqvf_esvFcsIdNZYiYRAbfoTl6xWZoBdtvvsU.cache
270
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/dp/dpSU2IktVAqqMTj5iCA6Xg9aVjhNwuhNX987AAPo4Ss.cache
271
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/gC/gCdMfTV-UrcBy2q1SovEwzaag5CwB0k_eFIstyv4gLk.cache
272
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/ko/koq-iWAlxiTFpALhUJsXNVGhxy7qAKZP69zJ8E9YdFY.cache
273
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/cq/cqYKlDsPOsR-Hutsi1Ia2tXUuzOfzbVLP4i9Aonwckk.cache
274
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/cV/cV6tr7nK4y6dNjxzPIKLUszmCcCbY6g48N5ypr-cf78.cache
275
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/jq/jqO64m7tXOlADW5o1Sy9C08R_i48GO1Wo0w0mUE4UPg.cache
276
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/CK/CKmWm-PGWv8LhwLfTt-8iccYQtEKrPkNNoK21YhKq8M.cache
277
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/OI/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache
278
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/qE/qEdbzlDf-HNnbh60QhpqpvwNeEnCU8tTrPEnZAV4NE8.cache
279
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/4T/4TXTXXyWGjYW5FUpWGY5b1ecc_ASKWAmht53-rfZ3f4.cache
280
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/XX/XXb_KYmRcMmdP6iwA-m5TK3mNwd-sAWuIDU2BwYh8ys.cache
281
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/x3/x3RXrNrKZMLOtSL6nQa-yFfgd0YP5AaeoP_5isPNggc.cache
282
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/q2/q2rsSyCOy3kUHoKipvqxAw3Z_GfF7PufP5wKBV2EEbA.cache
283
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/xD/xDCgzYS-NOKY4wQ98x3bpVUmBipKrajnbyKsfZeXyKE.cache
284
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2k/2k-V7fw5kQxgx8rJcOMPyJDQ4JbisbnfZQoC2TqHp78.cache
285
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/2l/2leDpqGCN2J9vjiI1IHvVMlK22cXy2F4hknNF3jqmkg.cache
286
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/Rw/RwX76wVv_k976ST-OhQyd6E8Fgi2kfLW6yDFSdnCKA0.cache
287
- - test/dummy/tmp/cache/assets/sprockets/v4.0.0/TG/TGTts-z_YI7jHUT1N8DOBGdHJLrIKmH_X-sgt638nU4.cache
288
- - test/dummy/README.rdoc
164
+ - test/dummy/public/favicon.ico
289
165
  - test/superlogger_test.rb
290
166
  - test/test_helper.rb
Binary file
Binary file
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&id=35457672c92c6af73d636e236ae1cd10aac4e534c8a82e7e64baa244865ef751:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=26fe8f914a37edbad87b42be24a2d404d35668a8dce9e4763f34d075fcac8b15:ET
@@ -1,2 +0,0 @@
1
- [o:Set:
2
- @hash} I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"0processors:type=text/css&file_type=text/css;TTI"9file-digest://app/assets/stylesheets/application.css;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI")file-digest://app/assets/stylesheets;TTF
@@ -1 +0,0 @@
1
- I"�app/assets/stylesheets/application.css?type=application/css-sourcemap+json&id=245e7a94c06b1f881c5352975228cd489f0a91feefc65246ff95e65b6b39867c:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=debug&id=4df50b1c4e9a53c8d22402cd979528a45dbbaa3ccf84d6ddbce8b222068b566f:ET
@@ -1 +0,0 @@
1
- "%��B�����șo�$'�A�d��L���xR�U
@@ -1 +0,0 @@
1
- I"�app/assets/config/manifest.js?type=application/javascript&pipeline=self&id=ce2a932dae95687b3860d16aae7a59f67f91ac4bd4205a0dc22ddcbc3385c573:ET
@@ -1 +0,0 @@
1
- I"�app/assets/stylesheets/application.css?type=text/css&pipeline=debug&id=3484c58768769ddd7f077d1c5fd178d80a41dd50fd8e836ed5e8085e034c5fea:ET
@@ -1 +0,0 @@
1
- "%��Rm�v�S3.��O�L���ڹc�ƕq�=_j�
@@ -1 +0,0 @@
1
- "%Ѱč@�����6H�uZoX�Z�gbh0W��V
@@ -1 +0,0 @@
1
- I"�app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=6687bbf9d7433b294f04a3aad09b1d97293ef96e2ac308e499147fbb9172a981:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&id=bb5330ed19289447fa41dc76755a74a1e500aed3921dc0b2894d7dda444a3f89:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&id=c9bb4c7d24a3bd793a4481061e9093005bab65f9a254f4f6385abbd3014ca25b:ET
@@ -1 +0,0 @@
1
- I"�app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=e15c370706ed31c39b9cfe112f2c142a61c90f01f6288407fff547028db80b6d:ET
@@ -1 +0,0 @@
1
- "%�W\�yho9S���ƫ˥��)|�~���(���
@@ -1,2 +0,0 @@
1
- [o:Set:
2
- @hash} I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Lprocessors:type=application/javascript&file_type=application/javascript;TTI"8file-digest://app/assets/javascripts/application.js;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI")file-digest://app/assets/javascripts;TTF
@@ -1 +0,0 @@
1
- I"}app/assets/config/manifest.js?type=application/javascript&id=f72274d4fed49194b62198d89b9edd6c340ceeaa6ae62780652c1c7df8aa7c7f:ET
@@ -1 +0,0 @@
1
- I"}app/assets/stylesheets/application.css?type=text/css&id=292ec25ade2224bc31ed8ea351cef308c91be2f5ff57fc7cf5fcd4a95705e1ff:ET
@@ -1 +0,0 @@
1
- "%�ku9FJʚ�$M���=s���:�BwbՈ%��-�
@@ -1 +0,0 @@
1
- I"}app/assets/config/manifest.js?type=application/javascript&id=fa941b6ad495d9c3bed43ed19b69d159d426cea3bd9f25e80ee01defb54ca0a9:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=407e4256b03fe2c6c229375d53719024b322b008a7d279f3b4a086b606f42633:ET
@@ -1 +0,0 @@
1
- I"�app/assets/config/manifest.js?type=application/javascript&pipeline=self&id=7adcc136d6b6faa10acdd70407b26cd055efbcb4067e6ca7d03ce49c7d40e389:ET
@@ -1 +0,0 @@
1
- I"}app/assets/stylesheets/application.css?type=text/css&id=0aa774ed65614f843ecf6416c4cb8dce30a4b974e10a49544595fd761909bf90:ET
@@ -1 +0,0 @@
1
- I"�app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=fbc0d81f0b84003806fe97eba80b129e83cf5871a3061859ea1fd4c06c27298c:ET
@@ -1 +0,0 @@
1
- I"}app/assets/config/manifest.js?type=application/javascript&id=ec171df022b797170820b513d1a668762727936733848350bae4fe013bccbe7a:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=bd9b6326901d759256dd8a58b2babb2146ac4261976793b830645008da4af6e0:ET
@@ -1 +0,0 @@
1
- I"�app/assets/javascripts/application.js?type=application/js-sourcemap+json&id=433473957809e9c05608a4700f427a885d02a822bce882e117ebe95d72027fb5:ET
@@ -1 +0,0 @@
1
- I"}app/assets/stylesheets/application.css?type=text/css&id=920d6733dedbd3642f3796a559aad5fc8ab8e947d9468327b7fd5b0ceaf11c24:ET
@@ -1 +0,0 @@
1
- I"�app/assets/config/manifest.js?type=application/javascript&pipeline=self&id=d48ff3355d41a3df0981e6aab1fdf3296edfd131a0c5ce4195d718e57d917c3f:ET