resurfaceio-logger 2.0.1 → 2.0.2

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
  SHA256:
3
- metadata.gz: 3fccf7867e2af47e8665a1db8294320a9bcd3610a80468841dda221016a0b6eb
4
- data.tar.gz: b17d0ae39d188d20eeb25fcda70101dd3de88c184bce3c56f0ec3d7429fb4851
3
+ metadata.gz: 96d9dcd75c1689a944d72d80ed12692efbdc75b8c10b391bece364c26090efc1
4
+ data.tar.gz: 6851901ff3dba16d290c479cd8262f6ff3789997089bb213ead746ccb74ebb93
5
5
  SHA512:
6
- metadata.gz: 3ea5c8d9feacbde23be41402cc0dd908b3eb8cc195cdf69e5d430e1135fb7096fc9dafd2b991f5d988aee87c45ded8e74815b0d0ee58144a0b630bd6dff0e55e
7
- data.tar.gz: 6de19a7fc64f27f3b741dd98a9424a6440c2abd1affbaf57331bd64d16e32fca33f284a6c719d2b69cfb66dee1e363046243b19df83de620eb4fc1df5c8968a8
6
+ metadata.gz: bf5eb2c3775d016416f6e55a35a1422f4ae33d89887ffe7bf69ac280e4f569d98eed2aacb4715efcf20af4e07527726f262ad268131605174d038231a152ce3c
7
+ data.tar.gz: 715e09307d21578168425a94ef905a00bcf5497153e3902d2a3a5b0f8e058caa8d14a158ea571b0fbc81c04dd1a6c2416a4342c892a941eaf0c26fbcdb0972a1
@@ -4,6 +4,7 @@
4
4
  require 'rack'
5
5
  require 'resurfaceio/http_logger'
6
6
  require 'resurfaceio/http_message'
7
+ require 'resurfaceio/timer'
7
8
 
8
9
  class HttpLoggerForRack # http://rack.rubyforge.org/doc/SPEC.html
9
10
 
@@ -17,12 +18,13 @@ class HttpLoggerForRack # http://rack.rubyforge.org/doc/SPEC.html
17
18
  end
18
19
 
19
20
  def call(env)
21
+ timer = Timer.new
20
22
  status, headers, body = @app.call(env)
21
23
  if @logger.enabled? && (status < 300 || status == 302)
22
24
  response = Rack::Response.new(body, status, headers)
23
25
  if HttpLogger::string_content_type?(response.content_type)
24
26
  request = Rack::Request.new(env)
25
- HttpMessage.send(logger, request, response) # todo add timing details
27
+ HttpMessage.send(logger, request, response, nil, nil, nil, timer.millis)
26
28
  end
27
29
  end
28
30
  [status, headers, body]
@@ -3,6 +3,7 @@
3
3
 
4
4
  require 'resurfaceio/http_logger'
5
5
  require 'resurfaceio/http_message'
6
+ require 'resurfaceio/timer'
6
7
 
7
8
  class HttpLoggerForRails
8
9
 
@@ -15,13 +16,14 @@ class HttpLoggerForRails
15
16
  end
16
17
 
17
18
  def around(controller)
19
+ timer = Timer.new
18
20
  yield
19
21
  if @logger.enabled?
20
22
  request = controller.request
21
23
  response = controller.response
22
24
  status = response.status
23
25
  if (status < 300 || status == 302) && HttpLogger::string_content_type?(response.content_type)
24
- HttpMessage.send(logger, request, response) # todo add timing details
26
+ HttpMessage.send(logger, request, response, nil, nil, nil, timer.millis)
25
27
  end
26
28
  end
27
29
  end
@@ -0,0 +1,14 @@
1
+ # coding: utf-8
2
+ # © 2016-2020 Resurface Labs Inc.
3
+
4
+ class Timer
5
+
6
+ def initialize
7
+ @started = Process.clock_gettime(Process::CLOCK_MONOTONIC, :float_millisecond)
8
+ end
9
+
10
+ def millis
11
+ (Process.clock_gettime(Process::CLOCK_MONOTONIC, :float_millisecond) - @started).to_s
12
+ end
13
+
14
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resurfaceio-logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - RobDickinson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-02 00:00:00.000000000 Z
11
+ date: 2020-07-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '3.9'
69
69
  description: Library for usage logging
70
- email:
70
+ email:
71
71
  executables: []
72
72
  extensions: []
73
73
  extra_rdoc_files: []
@@ -82,12 +82,13 @@ files:
82
82
  - lib/resurfaceio/http_response_impl.rb
83
83
  - lib/resurfaceio/http_rule.rb
84
84
  - lib/resurfaceio/http_rules.rb
85
+ - lib/resurfaceio/timer.rb
85
86
  - lib/resurfaceio/usage_loggers.rb
86
87
  homepage: https://github.com/resurfaceio/logger-ruby
87
88
  licenses:
88
89
  - Apache-2.0
89
90
  metadata: {}
90
- post_install_message:
91
+ post_install_message:
91
92
  rdoc_options: []
92
93
  require_paths:
93
94
  - lib
@@ -103,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
104
  version: '0'
104
105
  requirements: []
105
106
  rubygems_version: 3.0.3
106
- signing_key:
107
+ signing_key:
107
108
  specification_version: 4
108
109
  summary: Library for usage logging
109
110
  test_files: []