httplog 1.7.0 → 1.7.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 +4 -4
- data/README.md +9 -5
- data/httplog.gemspec +6 -1
- data/lib/httplog/adapters/http.rb +8 -11
- data/lib/httplog/version.rb +1 -1
- metadata +75 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac290632e593dd3b6ebda0ae4b1e283147867dd241070328ef77268e678fc413
|
4
|
+
data.tar.gz: 50e5a2f199404dc902ba9634c167b60e84055b28e4cdbf9bbaa838a6617dc97b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8d08e4d30f6b8f0a588d0c58b55909ec87beaecc6bc85fd81926f4dd706b5f8db788225fbd41b13200d061b638c78d4b8536020691ff9081e5c6f40b6847a3e3
|
7
|
+
data.tar.gz: 3ececc0f41d11b710c234359e0d839471a0214167e2a2f510096d0dd89abb8ebb0c11db9c870e19b4e020d1705a9867bdc10f9fb3ee62db4bb149e6443e2a4aa
|
data/README.md
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
|
3
3
|
[](http://badge.fury.io/rb/httplog)
|
4
4
|
[](https://app.travis-ci.com/trusche/httplog)
|
5
|
-
[](https://codeclimate.com/github/trusche/httplog)
|
6
5
|
[](https://img.shields.io/github/release/trusche/httplog.svg)
|
7
6
|
|
8
7
|
Log outgoing HTTP requests made from your application. Helps with debugging pesky API error responses, or just generally understanding what's going on under the hood.
|
@@ -104,13 +103,17 @@ HttpLog.configure do |config|
|
|
104
103
|
end
|
105
104
|
```
|
106
105
|
|
107
|
-
If you want to use this in a Rails app,
|
106
|
+
If you want to use this in a Rails app, it is recommended to configure `HttpLog` in an initializer, as suggested by the official Rails documentation. This approach ensures that your configuration is loaded properly and only in the desired environments.
|
107
|
+
|
108
|
+
For example, you can create a file at `config/initializers/httplog.rb` with the following content:
|
108
109
|
|
109
110
|
```ruby
|
110
|
-
# config/
|
111
|
+
# config/initializers/httplog.rb
|
111
112
|
|
112
|
-
|
113
|
-
|
113
|
+
if Rails.env.development?
|
114
|
+
HttpLog.configure do |config|
|
115
|
+
config.logger = Rails.logger
|
116
|
+
end
|
114
117
|
end
|
115
118
|
```
|
116
119
|
|
@@ -276,3 +279,4 @@ This will launch a simple rack server on port 9292 and run all tests locally aga
|
|
276
279
|
If you have any issues with or feature requests for httplog,
|
277
280
|
please [open an issue](https://github.com/trusche/httplog/issues) on GitHub
|
278
281
|
or fork the project and send a pull request. **Please include passing specs with all pull requests.**
|
282
|
+
|
data/httplog.gemspec
CHANGED
@@ -45,8 +45,13 @@ Gem::Specification.new do |gem|
|
|
45
45
|
gem.add_development_dependency 'rake', ['~> 13.0']
|
46
46
|
gem.add_development_dependency 'rspec', ['~> 3.7']
|
47
47
|
gem.add_development_dependency 'simplecov', ['~> 0.15']
|
48
|
-
gem.add_development_dependency 'thin', ['
|
48
|
+
gem.add_development_dependency 'thin', ['>= 1.7']
|
49
49
|
gem.add_development_dependency 'oj', ['>= 3.9.2']
|
50
|
+
gem.add_development_dependency 'csv'
|
51
|
+
gem.add_development_dependency 'logger'
|
52
|
+
gem.add_development_dependency 'ostruct'
|
53
|
+
gem.add_development_dependency 'benchmark'
|
54
|
+
gem.add_development_dependency 'base64'
|
50
55
|
|
51
56
|
gem.add_dependency 'rack', ['>= 2.0']
|
52
57
|
gem.add_dependency 'rainbow', ['>= 2.0.0']
|
@@ -1,15 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
if defined?(::HTTP::Client) && defined?(::HTTP::Connection)
|
4
|
-
module
|
5
|
-
|
6
|
-
request_method = respond_to?('make_request') ? 'make_request' : 'perform'
|
7
|
-
orig_request_method = "orig_#{request_method}"
|
8
|
-
alias_method(orig_request_method, request_method) unless method_defined?(orig_request_method)
|
9
|
-
|
4
|
+
module HTTPClientInstrumentation
|
5
|
+
%w[make_request perform].each do |request_method|
|
10
6
|
define_method request_method do |req, options|
|
11
7
|
bm = Benchmark.realtime do
|
12
|
-
@response =
|
8
|
+
@response = super(req, options)
|
13
9
|
end
|
14
10
|
|
15
11
|
uri = req.uri
|
@@ -41,13 +37,14 @@ if defined?(::HTTP::Client) && defined?(::HTTP::Connection)
|
|
41
37
|
end
|
42
38
|
end
|
43
39
|
|
44
|
-
|
45
|
-
alias orig_initialize initialize unless method_defined?(:orig_initialize)
|
46
|
-
|
40
|
+
module HTTPConnectionInstrumentation
|
47
41
|
def initialize(req, options)
|
48
42
|
HttpLog.log_connection(req.uri.host, req.uri.port) if HttpLog.url_approved?(req.uri)
|
49
|
-
|
43
|
+
super
|
50
44
|
end
|
51
45
|
end
|
46
|
+
|
47
|
+
::HTTP::Client.prepend(HTTPClientInstrumentation)
|
48
|
+
::HTTP::Connection.prepend(HTTPConnectionInstrumentation)
|
52
49
|
end
|
53
50
|
end
|
data/lib/httplog/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: httplog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thilo Rusche
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: ethon
|
@@ -224,14 +223,14 @@ dependencies:
|
|
224
223
|
name: thin
|
225
224
|
requirement: !ruby/object:Gem::Requirement
|
226
225
|
requirements:
|
227
|
-
- - "
|
226
|
+
- - ">="
|
228
227
|
- !ruby/object:Gem::Version
|
229
228
|
version: '1.7'
|
230
229
|
type: :development
|
231
230
|
prerelease: false
|
232
231
|
version_requirements: !ruby/object:Gem::Requirement
|
233
232
|
requirements:
|
234
|
-
- - "
|
233
|
+
- - ">="
|
235
234
|
- !ruby/object:Gem::Version
|
236
235
|
version: '1.7'
|
237
236
|
- !ruby/object:Gem::Dependency
|
@@ -248,6 +247,76 @@ dependencies:
|
|
248
247
|
- - ">="
|
249
248
|
- !ruby/object:Gem::Version
|
250
249
|
version: 3.9.2
|
250
|
+
- !ruby/object:Gem::Dependency
|
251
|
+
name: csv
|
252
|
+
requirement: !ruby/object:Gem::Requirement
|
253
|
+
requirements:
|
254
|
+
- - ">="
|
255
|
+
- !ruby/object:Gem::Version
|
256
|
+
version: '0'
|
257
|
+
type: :development
|
258
|
+
prerelease: false
|
259
|
+
version_requirements: !ruby/object:Gem::Requirement
|
260
|
+
requirements:
|
261
|
+
- - ">="
|
262
|
+
- !ruby/object:Gem::Version
|
263
|
+
version: '0'
|
264
|
+
- !ruby/object:Gem::Dependency
|
265
|
+
name: logger
|
266
|
+
requirement: !ruby/object:Gem::Requirement
|
267
|
+
requirements:
|
268
|
+
- - ">="
|
269
|
+
- !ruby/object:Gem::Version
|
270
|
+
version: '0'
|
271
|
+
type: :development
|
272
|
+
prerelease: false
|
273
|
+
version_requirements: !ruby/object:Gem::Requirement
|
274
|
+
requirements:
|
275
|
+
- - ">="
|
276
|
+
- !ruby/object:Gem::Version
|
277
|
+
version: '0'
|
278
|
+
- !ruby/object:Gem::Dependency
|
279
|
+
name: ostruct
|
280
|
+
requirement: !ruby/object:Gem::Requirement
|
281
|
+
requirements:
|
282
|
+
- - ">="
|
283
|
+
- !ruby/object:Gem::Version
|
284
|
+
version: '0'
|
285
|
+
type: :development
|
286
|
+
prerelease: false
|
287
|
+
version_requirements: !ruby/object:Gem::Requirement
|
288
|
+
requirements:
|
289
|
+
- - ">="
|
290
|
+
- !ruby/object:Gem::Version
|
291
|
+
version: '0'
|
292
|
+
- !ruby/object:Gem::Dependency
|
293
|
+
name: benchmark
|
294
|
+
requirement: !ruby/object:Gem::Requirement
|
295
|
+
requirements:
|
296
|
+
- - ">="
|
297
|
+
- !ruby/object:Gem::Version
|
298
|
+
version: '0'
|
299
|
+
type: :development
|
300
|
+
prerelease: false
|
301
|
+
version_requirements: !ruby/object:Gem::Requirement
|
302
|
+
requirements:
|
303
|
+
- - ">="
|
304
|
+
- !ruby/object:Gem::Version
|
305
|
+
version: '0'
|
306
|
+
- !ruby/object:Gem::Dependency
|
307
|
+
name: base64
|
308
|
+
requirement: !ruby/object:Gem::Requirement
|
309
|
+
requirements:
|
310
|
+
- - ">="
|
311
|
+
- !ruby/object:Gem::Version
|
312
|
+
version: '0'
|
313
|
+
type: :development
|
314
|
+
prerelease: false
|
315
|
+
version_requirements: !ruby/object:Gem::Requirement
|
316
|
+
requirements:
|
317
|
+
- - ">="
|
318
|
+
- !ruby/object:Gem::Version
|
319
|
+
version: '0'
|
251
320
|
- !ruby/object:Gem::Dependency
|
252
321
|
name: rack
|
253
322
|
requirement: !ruby/object:Gem::Requirement
|
@@ -304,7 +373,6 @@ metadata:
|
|
304
373
|
bug_tracker_uri: https://github.com/trusche/httplog/issues
|
305
374
|
changelog_uri: https://github.com/trusche/httplog/blob/master/CHANGELOG.md
|
306
375
|
source_code_uri: https://github.com/trusche/httplog
|
307
|
-
post_install_message:
|
308
376
|
rdoc_options: []
|
309
377
|
require_paths:
|
310
378
|
- lib
|
@@ -319,8 +387,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
319
387
|
- !ruby/object:Gem::Version
|
320
388
|
version: '0'
|
321
389
|
requirements: []
|
322
|
-
rubygems_version: 3.
|
323
|
-
signing_key:
|
390
|
+
rubygems_version: 3.6.7
|
324
391
|
specification_version: 4
|
325
392
|
summary: Log outgoing HTTP requests.
|
326
393
|
test_files: []
|