grape-batch 1.1.4 → 1.2.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: 483ecfa0b036413cd49c11f55a3c59529488e7a8
4
- data.tar.gz: 32baccf14eaa0a23afff45f9d86802d42323defb
3
+ metadata.gz: c814c50a907a565423f1154df0315082ce01b368
4
+ data.tar.gz: 3d6a2ecc29a6e0e11903c126618095c3154b6818
5
5
  SHA512:
6
- metadata.gz: 1a78f087d10ac368f6fc7db6aec78c87bad58268da4fe374a19269eb199dc1d0d2cd4a3894b89cb3739b46a66b6606d01ed44e9b067113c8073706b79083d230
7
- data.tar.gz: 678c766c786aba5a407851a28322bf3ec447f629a80086593cbe65242800f4ba2f1902a86ef3101a512cc275576730c14ebde618c7742d50a016be7e939d08b6
6
+ metadata.gz: c0ca65a811be6de53282bf1b112195a06f6aaa0c922a5facee2f59c896f2bf346988d456a0a0bdc85c3eed09fccbd587dc395fcb27f3b61cffac75870515caa1
7
+ data.tar.gz: 6e05351a95f28d24fe58451dfdc08f20fdb9ead667c4bdfdb0426124499b424e209e502c21fb861692036e4a79eaa12f210ac4727d1c3283af573b565458786a
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ # 1.2.0 (23rd July 2015)
2
+ * Removed logging
3
+
1
4
  # 1.1.4 (17th July 2015)
2
5
  * Added batch session
3
6
 
@@ -1,5 +1,5 @@
1
1
  module Grape
2
2
  module Batch
3
- VERSION = '1.1.4'
3
+ VERSION = '1.2.0'
4
4
  end
5
5
  end
data/lib/grape/batch.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'active_support'
2
- require 'grape/batch/log_subscriber'
3
2
  require 'grape/batch/version'
4
3
  require 'grape/batch/errors'
5
4
  require 'grape/batch/configuration'
@@ -24,7 +23,7 @@ module Grape
24
23
  def batch_call(env)
25
24
  status = 200
26
25
  headers = { 'Content-Type' => 'application/json' }
27
-
26
+ logger.info('--- Grape::Batch BEGIN')
28
27
  begin
29
28
  batch_requests = Grape::Batch::Validator::parse(env, Grape::Batch.configuration.limit)
30
29
  result = dispatch(env, batch_requests)
@@ -33,7 +32,7 @@ module Grape
33
32
  e.class == TooManyRequestsError ? status = 429 : status = 400
34
33
  body = e.message
35
34
  end
36
-
35
+ logger.info('--- Grape::Batch END')
37
36
  [status, headers, [body]]
38
37
  end
39
38
 
@@ -46,25 +45,18 @@ module Grape
46
45
  end
47
46
 
48
47
  def dispatch(env, batch_requests)
49
- ActiveSupport::Notifications.instrument 'dispatch.batch' do |event|
50
- event[:requests] = []
51
-
52
- session_data = env[Grape::Batch.configuration.session_header]
53
- env['api.session'] = Grape::Batch.configuration.session_proc.call(session_data)
48
+ session_data = env[Grape::Batch.configuration.session_header]
49
+ env['api.session'] = Grape::Batch.configuration.session_proc.call(session_data)
54
50
 
55
- # iterate
56
- batch_env = env.dup
57
- batch_requests.map do |request|
58
- # init env for Grape resource
59
- tmp_env = prepare_tmp_env(batch_env, request)
60
- status, headers, response = @app.call(tmp_env)
51
+ # iterate
52
+ batch_env = env.dup
53
+ batch_requests.map do |request|
54
+ # init env for Grape resource
55
+ tmp_env = prepare_tmp_env(batch_env, request)
56
+ status, headers, response = @app.call(tmp_env)
61
57
 
62
- # format response
63
- @response_klass::format(status, headers, response).tap do |formatted_response|
64
- # log call
65
- event[:requests] << [tmp_env, formatted_response]
66
- end
67
- end
58
+ # format response
59
+ @response_klass::format(status, headers, response)
68
60
  end
69
61
  end
70
62
 
@@ -87,6 +79,21 @@ module Grape
87
79
  tmp_env['rack.input'] = rack_input
88
80
  tmp_env
89
81
  end
82
+
83
+ def logger
84
+ @logger ||= Grape::Batch.configuration.logger || rails_logger || default_logger
85
+ end
86
+
87
+ def default_logger
88
+ logger = Logger.new($stdout)
89
+ logger.level = Logger::INFO
90
+ logger
91
+ end
92
+
93
+ # Get the Rails logger if it's defined.
94
+ def rails_logger
95
+ defined?(::Rails) && ::Rails.respond_to?(:logger) && ::Rails.logger
96
+ end
90
97
  end
91
98
  end
92
99
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-batch
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lionel Oto
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-07-17 00:00:00.000000000 Z
13
+ date: 2015-07-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rack
@@ -148,7 +148,6 @@ files:
148
148
  - lib/grape/batch/configuration.rb
149
149
  - lib/grape/batch/errors.rb
150
150
  - lib/grape/batch/hash_converter.rb
151
- - lib/grape/batch/log_subscriber.rb
152
151
  - lib/grape/batch/parser.rb
153
152
  - lib/grape/batch/response.rb
154
153
  - lib/grape/batch/version.rb
@@ -1,64 +0,0 @@
1
- module Grape
2
- module Batch
3
- class LogSubscriber < ActiveSupport::LogSubscriber
4
- def dispatch(event)
5
- requests = event.payload[:requests]
6
-
7
- if logger.debug?
8
- debug_log(requests)
9
- else
10
- info_log(requests)
11
- end
12
- end
13
-
14
- private
15
-
16
- def debug_log(requests)
17
- logger.info 'grape/batch'
18
-
19
- requests.map do |params|
20
- request, response = params
21
- logger.info " method=#{request['REQUEST_METHOD']} path=#{request['PATH_INFO']}"
22
-
23
- if request['REQUEST_METHOD'] == 'GET'
24
- unless request['QUERY_STRING'].empty?
25
- logger.debug " params: #{request['QUERY_STRING'].to_s}"
26
- end
27
- else
28
- if request['rack.input'].respond_to? :string
29
- logger.debug " body: #{request['rack.input'].string}"
30
- end
31
- end
32
- logger.debug " response: #{response.to_s}"
33
- end
34
- end
35
-
36
- def info_log(requests)
37
- messages = []
38
- requests.each do |params|
39
- request, response = params
40
- messages << "method=#{request['REQUEST_METHOD']} path=#{request['PATH_INFO']}"
41
- end
42
-
43
- logger.info 'grape/batch ' + messages.join(', ')
44
- end
45
-
46
- def logger
47
- @logger ||= Grape::Batch.configuration.logger || rails_logger || default_logger
48
- end
49
-
50
- def default_logger
51
- logger = Logger.new($stdout)
52
- logger.level = Logger::INFO
53
- logger
54
- end
55
-
56
- # Get the Rails logger if it's defined.
57
- def rails_logger
58
- defined?(::Rails) && ::Rails.respond_to?(:logger) && ::Rails.logger
59
- end
60
- end
61
- end
62
- end
63
-
64
- Grape::Batch::LogSubscriber.attach_to(:batch)