tp2 0.14 → 0.14.1

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: '08812ae0e3200972086172f46db095a85dd81ab9f92a19f3545cb7e08425e722'
4
- data.tar.gz: 204dcb6bc431cccddcd2a1aee3416235bb495359f99cc0afaa96cd56353d51f9
3
+ metadata.gz: 3c99469ae66a0fa3a184c3196d2e7978a5ae1cdac9b55820a4badc176030033a
4
+ data.tar.gz: 4e4f7646de8efdc89c23af826f2502c0aabc5ef8e7773272e4596ccf1c106822
5
5
  SHA512:
6
- metadata.gz: 49f58f9c2e4650816583633323a9f9fd38d5028ca27a3c024694baad38fbd656ec360b6cb6189876e7cb9d0574e8c340d2d71796086135225057e9367ebe7ef7
7
- data.tar.gz: 1f9cc001a6613a89b094d07ebeadf884f377840d302080c269de4cb8f635220a18e358efe3a078936acc069479202eb17a7f47b5842fb5a150256891ce7819d0
6
+ metadata.gz: 3dc15dc21f2d199cf3d807cc99e82d2f624269862e9adbf49e0d1bcd29bf00046f6c90bdb9523decfa9ad78377278e2e56a0cb8b6cc30f990273aa9349fe5bed
7
+ data.tar.gz: c236ef22298ffca5c23a432dfa31e83c243821b0c95d1705eeb109d0fd9312669e43551a9ca64d90e5f16abd9ec593f77416aa04306ab86d675e06a6890effb5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 0.14.1 2025-07-08
2
+
3
+ - Add request elapsed time to log
4
+
1
5
  # Version 0.14 2025-07-08
2
6
 
3
7
  - Finish new logger
@@ -43,6 +43,7 @@ module TP2
43
43
  return false if !headers
44
44
 
45
45
  request = Qeweney::Request.new(headers, self)
46
+ request.start_stamp = monotonic_clock
46
47
  @app.call(request)
47
48
  persist_connection?(headers)
48
49
  rescue ProtocolError => e
@@ -217,6 +218,10 @@ module TP2
217
218
  @machine.close_async(@fd)
218
219
  end
219
220
 
221
+ def monotonic_clock
222
+ ::Process.clock_gettime(::Process::CLOCK_MONOTONIC)
223
+ end
224
+
220
225
  private
221
226
 
222
227
  RE_REQUEST_LINE = %r{^([a-z]+)\s+([^\s]+)\s+(http/[0-9.]{1,3})}i
data/lib/tp2/logger.rb CHANGED
@@ -67,6 +67,7 @@ module TP2
67
67
  request = o[:request]
68
68
  request_headers = request.headers
69
69
  response_headers = o[:response_headers]
70
+ elapsed = request.adapter.monotonic_clock - request.start_stamp
70
71
  {
71
72
  level: level.to_s,
72
73
  ts: (t = Time.now; t.to_i),
@@ -76,7 +77,8 @@ module TP2
76
77
  http_method: request_headers[':method'].upcase,
77
78
  user_agent: request_headers['user-agent'],
78
79
  uri: full_uri(request_headers),
79
- status: response_headers[':status'] || '200'
80
+ status: response_headers[':status'] || '200',
81
+ elapsed: elapsed
80
82
  }
81
83
  end
82
84
 
@@ -1,10 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Qeweney::Request
4
+ attr_accessor :start_stamp
5
+
4
6
  def respond_with_static_file(path, etag, last_modified, opts)
5
7
  cache_headers = (etag || last_modified) ? {
6
8
  'etag' => etag,
7
- 'last-modified' => last_modified,
9
+ 'last-modified' => last_modified
8
10
  } : {}
9
11
 
10
12
  adapter.respond_with_static_file(self, path, opts, cache_headers)
data/lib/tp2/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module TP2
2
- VERSION = '0.14'
2
+ VERSION = '0.14.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tp2
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.14'
4
+ version: 0.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sharon Rosner