grape-middleware-logger 1.6.0 → 1.7.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 34d9661cdf4110b925306cef1ca08daa1de0984b
4
- data.tar.gz: 30a697f95684f81f84a1ab8d99b91d90730dd3ab
3
+ metadata.gz: 447cca99bc2e0253d2fe3645706122cec1c0c7bf
4
+ data.tar.gz: 83811830d95ab958323aa6cddabf0c77285f6a57
5
5
  SHA512:
6
- metadata.gz: 0efea695b1be2caaf8bc63b104abc6a57240b7504d2a05bf5d15449b925feb96a5c2bcb02764979889e320391de53336af8ecfd5f107ded7663e3efccd1203ff
7
- data.tar.gz: c2ab1a0ee0cb763d903b4a7b54a8f9368e8b2ab0b326a68a8d905cdfc873b9aced8239487b9abbcf2c697d7cb6289927ce33b8ac255d41570b2a9ef9fad27d67
6
+ metadata.gz: efb31508ea71c6901cf2e327c9a4448d577c0246dbed6e063655195f85533eb4aec0f72bb69a2d55c8b455a7a11c47040856eb1707445432c796a88e7ee14fbf
7
+ data.tar.gz: 6075453808d8cf7ee6e7988292315083f2dc1bda0eb77810b1d3e371bcb8843aeb46200fbe4e44d0649f380046945263cd06acaea40f08c5c5464e44388630b7
data/README.md CHANGED
@@ -16,29 +16,29 @@ Logs:
16
16
  Add this line to your application's Gemfile:
17
17
 
18
18
  ```ruby
19
- gem 'grape', '>= 0.14.0'
19
+ gem 'grape', '>= 0.17'
20
20
  gem 'grape-middleware-logger'
21
21
  ```
22
22
 
23
23
  ## Usage
24
24
  ```ruby
25
25
  class API < Grape::API
26
- # @note Make sure this above you're first +mount+
27
- use Grape::Middleware::Logger
26
+ # @note Make sure this is above you're first +mount+
27
+ insert_after Grape::Middleware::Formatter, Grape::Middleware::Logger
28
28
  end
29
29
  ```
30
30
 
31
31
  Server requests will be logged to STDOUT by default.
32
32
 
33
33
  ## Example output
34
- Get
34
+ GET
35
35
  ```
36
36
  Started GET "/v1/reports/101" at 2015-12-11 15:40:51 -0800
37
37
  Processing by ReportsAPI/reports/:id
38
38
  Parameters: {"id"=>"101"}
39
39
  Completed 200 in 6.29ms
40
40
  ```
41
- Error
41
+ POST
42
42
  ```
43
43
  Started POST "/v1/reports" at 2015-12-11 15:42:33 -0800
44
44
  Processing by ReportsAPI/reports
@@ -54,17 +54,26 @@ The middleware logger can be customized with the following options:
54
54
  * The `:logger` option can be any object that responds to `.info(String)`
55
55
  * The `:filter` option can be any object that responds to `.filter(Hash)` and returns a hash.
56
56
 
57
+ For example:
58
+
59
+ ```ruby
60
+ insert_after Grape::Middleware::Formatter, Grape::Middleware::Logger, {
61
+ logger: Logger.new(STDERR),
62
+ filter: Class.new { def filter(opts) opts.reject { |k, _| k.to_s == 'password' } end }.new
63
+ }
64
+ ```
65
+
57
66
  ## Using Rails?
58
67
  `Rails.logger` and `Rails.application.config.filter_parameters` will be used automatically as the default logger and
59
- param filterer, respectively.
68
+ param filterer, respectively. This behavior can be overridden by passing the `:logger` or
69
+ `:filter` option when mounting.
60
70
 
61
71
  You may want to disable Rails logging for API endpoints, so that the logging doesn't double-up. You can achieve this
62
72
  by switching around some middleware. For example:
63
73
 
64
74
  ```ruby
65
75
  # config/application.rb
66
- config.middleware.delete 'Rails::Rack::Logger'
67
- config.middleware.insert_after 'ActionDispatch::RequestId', 'SelectiveLogger'
76
+ config.middleware.swap 'Rails::Rack::Logger', 'SelectiveLogger'
68
77
 
69
78
  # config/initializers/selective_logger.rb
70
79
  class SelectiveLogger
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'grape-middleware-logger'
5
- spec.version = '1.6.0'
5
+ spec.version = '1.7.0'
6
6
  spec.platform = Gem::Platform::RUBY
7
7
  spec.authors = ['Ryan Buckley']
8
8
  spec.email = ['arebuckley@gmail.com']
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
16
16
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
17
17
  spec.require_paths = ['lib']
18
18
 
19
- spec.add_dependency 'grape', '>= 0.14', '< 1'
19
+ spec.add_dependency 'grape', '>= 0.17', '< 1'
20
20
 
21
21
  spec.add_development_dependency 'bundler', '~> 1.7'
22
22
  spec.add_development_dependency 'mime-types', '~> 2'
@@ -7,7 +7,7 @@ class Grape::Middleware::Logger < Grape::Middleware::Globals
7
7
  attr_reader :logger
8
8
 
9
9
  class << self
10
- attr_accessor :logger, :filter, :on_parameters
10
+ attr_accessor :logger, :filter
11
11
 
12
12
  def default_logger
13
13
  default = Logger.new(STDOUT)
@@ -82,10 +82,6 @@ class Grape::Middleware::Logger < Grape::Middleware::Globals
82
82
 
83
83
  def parameters
84
84
  request_params = env[Grape::Env::GRAPE_REQUEST_PARAMS].to_hash
85
- formatter = Grape::Middleware::Formatter.new(app)
86
- formatter.instance_variable_set :@env, env
87
- # @note parses and assigns params to @env[Grape::Env::RACK_REQUEST_FORM_HASH]
88
- formatter.before
89
85
  request_params.merge! env[Grape::Env::RACK_REQUEST_FORM_HASH] if env[Grape::Env::RACK_REQUEST_FORM_HASH]
90
86
  request_params.merge! env['action_dispatch.request.request_parameters'] if env['action_dispatch.request.request_parameters']
91
87
  if @options[:filter]
@@ -112,12 +108,4 @@ class Grape::Middleware::Logger < Grape::Middleware::Globals
112
108
  end
113
109
  end
114
110
 
115
- # @description Override formatter #before so we don't read and parse the env['rack.input'] value twice
116
- Grape::Middleware::Formatter.send :define_method, :before do
117
- negotiate_content_type
118
- read_body_input unless env.key? Grape::Env::RACK_REQUEST_FORM_HASH
119
- end
120
-
121
- if defined?(Rails)
122
- require_relative 'logger/railtie'
123
- end
111
+ require_relative 'logger/railtie' if defined?(Rails)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-middleware-logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Buckley
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-04 00:00:00.000000000 Z
11
+ date: 2016-08-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: grape
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.14'
19
+ version: '0.17'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '1'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '0.14'
29
+ version: '0.17'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '1'
@@ -147,3 +147,4 @@ test_files:
147
147
  - spec/lib/grape/middleware/logger_spec.rb
148
148
  - spec/rails_helper.rb
149
149
  - spec/spec_helper.rb
150
+ has_rdoc: