analytics-psw 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ca3a42f37fcc3dc779d05219d59f26cf1534812c
4
- data.tar.gz: 12424ccb7aa9aa0c1f5fe724737e67e8092378b7
3
+ metadata.gz: 4bf8f2134683aece988ea3f1726661d3d7c556d0
4
+ data.tar.gz: afa99d34d709b1efcc5144aa4cc32452445f2fa5
5
5
  SHA512:
6
- metadata.gz: f5c21a369c15188b7c2a38ac9bd9c0960760e14d6dab2f2f4da0c0057ff03ac02690b72b4f6e73e577fdf10b48b143d0e33d67006c93e7a806aa6f1ec898ef11
7
- data.tar.gz: c6a96c6c1e4b452e17d8e079ae241955ecf6612048cf4c217064c938148fd8ff5cbb38404a7b606a81e5b1324a69885ad8b5c3b51aaeee2945e53571164c256a
6
+ metadata.gz: 22b87c82d55db88f9b3856ab87c49a28248e649bad06c120395438edea07766dcc2473f63ff9f0d7011d892a1643365fc48280ed907a7f57007f2dbc906e8957
7
+ data.tar.gz: e1f5403a0206bace7f8687dbc9512d850a6c1dba8dcf092a65bc04af2c0d58250acfced6f730354afee2ada4a45db55e2615fbe0f3aa7f57b0a61a8ddca5924e
@@ -0,0 +1,58 @@
1
+ require 'benchmark'
2
+
3
+ module AnalyticsPSW::Rack
4
+ class RequestLogger
5
+ include AnalyticsPSW::Rack::RequestLogging
6
+
7
+ def initialize(app)
8
+ @app = app
9
+ end
10
+
11
+ def call(env)
12
+ @status, headers, body = call_with_benchmark do
13
+ @app.call(@env = env)
14
+ end
15
+
16
+ log_request
17
+
18
+ [ @status, headers, body ]
19
+ end
20
+
21
+ private
22
+
23
+ def call_with_benchmark
24
+ value = nil
25
+ @request_time = Benchmark.measure do
26
+ value = yield
27
+ end.real
28
+ value
29
+ end
30
+
31
+ def params
32
+ @env['action_dispatch.request.parameters']
33
+ end
34
+
35
+ def headers
36
+ @env
37
+ end
38
+
39
+ def analytics_service
40
+ @env['request_logging.analytics_service']
41
+ end
42
+
43
+ def log_request_response_params
44
+ {
45
+ 'response_code' => @status,
46
+ 'request_time' => @request_time,
47
+ }
48
+ end
49
+
50
+ def log_request_application_params
51
+ @env['request_logging.application_params'] || {}
52
+ end
53
+
54
+ def request
55
+ Rack::Request.new(@env)
56
+ end
57
+ end
58
+ end
@@ -1,9 +1,5 @@
1
- module AnalyticsPSW::Rails
1
+ module AnalyticsPSW::Rack
2
2
  module RequestLogging
3
- def self.included(base)
4
- base.send(:after_filter, :log_request)
5
- end
6
-
7
3
  protected
8
4
 
9
5
  def log_request
@@ -34,7 +30,7 @@ module AnalyticsPSW::Rails
34
30
 
35
31
  def log_request_header_params
36
32
  log_request_headers.inject({}) do |hsh, k|
37
- hsh[k.downcase] = request.headers[k]
33
+ hsh[k.downcase] = headers[k]
38
34
  hsh
39
35
  end
40
36
  end
@@ -55,14 +51,6 @@ module AnalyticsPSW::Rails
55
51
  response.code
56
52
  end
57
53
 
58
- def log_request_response_params
59
- { 'response_code' => log_request_response_code }
60
- end
61
-
62
- def log_request_application_params
63
- {}
64
- end
65
-
66
54
  def log_request_available_params
67
55
  params
68
56
  .merge(log_request_header_params)
@@ -0,0 +1,9 @@
1
+ if defined?(Rails)
2
+ module AnalyticsPSW
3
+ class Railtie < Rails::Railtie
4
+ initializer "analytics_psw.insert_middleware" do |app|
5
+ app.config.middleware.use "AnalyticsPSW::Rack::RequestLogger"
6
+ end
7
+ end
8
+ end
9
+ end
data/lib/analytics-psw.rb CHANGED
@@ -12,7 +12,9 @@ require 'analytics-psw/dimensions'
12
12
  require 'analytics-psw/customers'
13
13
  require 'analytics-psw/utilities'
14
14
  require 'analytics-psw/recent_events'
15
- require 'analytics-psw/rails/request_logging'
15
+ require 'analytics-psw/railtie'
16
+ require 'analytics-psw/rack/request_logging'
17
+ require 'analytics-psw/rack/request_logger'
16
18
 
17
19
  module AnalyticsPSW
18
20
  class Analytics
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: analytics-psw
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lexmark International Technology S.A
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-07 00:00:00.000000000 Z
11
+ date: 2015-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -152,7 +152,9 @@ files:
152
152
  - lib/analytics-psw/dimensions.rb
153
153
  - lib/analytics-psw/event_types.rb
154
154
  - lib/analytics-psw/events.rb
155
- - lib/analytics-psw/rails/request_logging.rb
155
+ - lib/analytics-psw/rack/request_logger.rb
156
+ - lib/analytics-psw/rack/request_logging.rb
157
+ - lib/analytics-psw/railtie.rb
156
158
  - lib/analytics-psw/recent_events.rb
157
159
  - lib/analytics-psw/reports.rb
158
160
  - lib/analytics-psw/services.rb