rails_api_logger 0.10.1 → 0.11.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
  SHA256:
3
- metadata.gz: 4959094cde8a80515bac5d15b4bd4f475e7c723b94803a2ecdc00de59aba1995
4
- data.tar.gz: 283881fcb6952b5ffab21a816558f8c6ef9c705252d25f183a261e614317db3b
3
+ metadata.gz: 2583006d0378e6989e3da41641c44fd31c9ff89c705150389c3da33bb7d194da
4
+ data.tar.gz: 7c747c7058c67fa855ce16a92f97c9d4a6d87066e5cd96e6edecf6b08384e4d4
5
5
  SHA512:
6
- metadata.gz: 1d727ed904aff3668f16d2bdfdedee5576b30c53819911303f7df0723608344fbe9c30eb7e313cde7c2ca6d33e832c9ac4073baa065331f2cb9e11276975e3f8
7
- data.tar.gz: e76f28822d9646a1973f4fb75612c52a0ed0d18d089ae27e9eccc5ac5f1313ee58e5236564b086246a17d6f158d4616a29ebc1419e25484a7a6cb73021529629
6
+ metadata.gz: bc76a1c027e3e1271e9475bc54ac2a64a3bcab962d6ef67d20c0500bb221ece0af56085e982317bb17802d65b5117eba76c5956745899ac3a152a32d715edff3
7
+ data.tar.gz: b90b9f94f8e1a742ed084687151649e3a9bbcf962beeacdfad8c211c9dfcd3a1f31d31d3f26f016f07e40a6e67133e2d5d557f8a1c04c75ee258de076259b180
data/.gitignore CHANGED
@@ -11,8 +11,9 @@
11
11
  /spec/dummy/db/*.sqlite3*
12
12
  /spec/dummy/db/schema.rb
13
13
  /spec/dummy/db/api_logger_schema.rb
14
+ /spec/tmp/*
14
15
  .env
15
-
16
+ .byebug_history
16
17
  # rspec failure tracking
17
18
  .rspec_status
18
19
  Gemfile.lock
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.2.1
1
+ 3.2.9
@@ -2,8 +2,8 @@ version: v1.0
2
2
  name: main-deploy
3
3
  agent:
4
4
  machine:
5
- type: e1-standard-2
6
- os_image: ubuntu2004
5
+ type: f1-standard-2
6
+ os_image: ubuntu2204
7
7
 
8
8
  blocks:
9
9
  - name: main-deploy
@@ -2,8 +2,8 @@ version: "v1.0"
2
2
  name: rails_api_logger
3
3
  agent:
4
4
  machine:
5
- type: e1-standard-2
6
- os_image: ubuntu2004
5
+ type: f1-standard-2
6
+ os_image: ubuntu2204
7
7
  auto_cancel:
8
8
  running:
9
9
  when: "true"
@@ -30,7 +30,7 @@ blocks:
30
30
  - name: linter
31
31
  commands:
32
32
  - bundle exec standardrb
33
- - name: tests postgres separate db and separate target
33
+ - name: tests postgres separate db and separate target | rails 8.0
34
34
  env_vars:
35
35
  - name: SAME_DB
36
36
  value: "false"
@@ -44,7 +44,7 @@ blocks:
44
44
  - sem-service start postgres 14
45
45
  - bin/rails db:create db:migrate
46
46
  - bundle exec rspec
47
- - name: tests postgres separate db and same target
47
+ - name: tests postgres separate db and same target | rails 8.0
48
48
  env_vars:
49
49
  - name: SAME_DB
50
50
  value: "false"
@@ -58,7 +58,7 @@ blocks:
58
58
  - sem-service start postgres 14
59
59
  - bin/rails db:create db:migrate
60
60
  - bundle exec rspec
61
- - name: tests postgres same db and separate target
61
+ - name: tests postgres same db and separate target | rails 8.0
62
62
  env_vars:
63
63
  - name: SAME_DB
64
64
  value: "true"
@@ -134,7 +134,7 @@ blocks:
134
134
  - sem-service start postgres 14
135
135
  - bin/rails db:create db:migrate
136
136
  - bundle exec rspec
137
- - name: tests sqlite separate db and separate target
137
+ - name: tests sqlite separate db and separate target | rails 8.0
138
138
  env_vars:
139
139
  - name: SAME_DB
140
140
  value: "false"
@@ -147,7 +147,7 @@ blocks:
147
147
  commands:
148
148
  - bin/rails db:create db:migrate
149
149
  - bundle exec rspec
150
- - name: tests sqlite same db
150
+ - name: tests sqlite same db | rails 8.0
151
151
  env_vars:
152
152
  - name: SAME_DB
153
153
  value: "true"
@@ -158,6 +158,19 @@ blocks:
158
158
  commands:
159
159
  - bin/rails db:create db:migrate
160
160
  - bundle exec rspec
161
+ - name: tests webrick | rails 8.0
162
+ env_vars:
163
+ - name: SAME_DB
164
+ value: "true"
165
+ - name: TARGET_DB
166
+ value: sqlite
167
+ - name: RAILS_ENV
168
+ value: test
169
+ - name: BUNDLE_GEMFILE
170
+ value: /home/semaphore/rails_api_logger/gemfiles/rails_webrick_8.0.gemfile
171
+ commands:
172
+ - bin/rails db:create db:migrate
173
+ - bundle exec rspec
161
174
  promotions:
162
175
  - name: main
163
176
  pipeline_file: main-deploy.yml
data/Appraisals CHANGED
@@ -3,6 +3,8 @@ appraise "rails-6.1" do
3
3
  gem "rails", "~> 6.1.0"
4
4
  gem "rspec-rails", "~> 6.1.0"
5
5
  gem "sqlite3", "~> 1.7.3"
6
+ gem "ammeter", "~> 1.1"
7
+ gem "webmock", "~> 3.25.0"
6
8
  end
7
9
 
8
10
  appraise "rails-7.0" do
@@ -10,22 +12,40 @@ appraise "rails-7.0" do
10
12
  gem "rails", "~> 7.0.0"
11
13
  gem "rspec-rails", "~> 7.1.0"
12
14
  gem "sqlite3", "~> 1.7.3"
15
+ gem "ammeter", "~> 1.1"
16
+ gem "webmock", "~> 3.25.0"
13
17
  end
14
18
 
15
19
  appraise "rails-7.1" do
16
20
  gem "rails", "~> 7.1.0"
17
21
  gem "rspec-rails", "~> 7.1.0"
18
22
  gem "sqlite3", "~> 1.7.3"
23
+ gem "ammeter", "~> 1.1"
24
+ gem "webmock", "~> 3.25.0"
19
25
  end
20
26
 
21
27
  appraise "rails-7.2" do
22
28
  gem "rails", "~> 7.2.0"
23
29
  gem "rspec-rails", "~> 7.1.0"
24
30
  gem "sqlite3", "~> 1.7.3"
31
+ gem "ammeter", "~> 1.1"
32
+ gem "webmock", "~> 3.25.0"
25
33
  end
26
34
 
27
35
  appraise "rails-8.0" do
28
36
  gem "rails", "~> 8.0.0"
29
37
  gem "rspec-rails", "~> 7.1.0"
30
38
  gem "sqlite3", "~> 2.1.0"
39
+ gem "ammeter", "~> 1.1"
40
+ gem "puma"
41
+ gem "webmock", "~> 3.25.0"
42
+ end
43
+
44
+ appraise "rails-webrick-8.0" do
45
+ gem "rails", "~> 8.0.0"
46
+ gem "rspec-rails", "~> 7.1.0"
47
+ gem "sqlite3", "~> 2.1.0"
48
+ gem "ammeter", "~> 1.1"
49
+ gem "webrick", "~> 1.9.1"
50
+ gem "webmock", "~> 3.25.0"
31
51
  end
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ # 0.11.0
2
+
3
+ * Fix stack trace to deep in webrick
4
+ * Fixes for Rails < 7.1
5
+ * Support custom primary key types in migration template
6
+
1
7
  # 0.10.1
2
8
 
3
9
  * Fix a bug introduced in 0.8.1 where we fixed Rails 7.1 warnings. This broke the serialization in Rails < 7.1.
data/README.md CHANGED
@@ -54,12 +54,14 @@ config.rails_api_logger.connects_to = { database: { writing: :api_logger } }
54
54
  and [configure a new database](spec/dummy/config/database.yml) accordingly.
55
55
 
56
56
  > ⚠️ If you skip this step, rails_api_logger will use your primary database but a rollback will also rollback the
57
- > writing of logs
58
- > If you are not on SQLite you can point also `api_logger` to the same database! By doing so you can use a single
57
+ > writing of logs.
58
+ >
59
+ > If you are not on SQLite you can simply point `api_logger` to the same database! By doing so you can use a single
59
60
  > database but still guarantee the writing of logs in an isolated transaction:
60
61
  > ```
61
62
  > config.rails_api_logger.connects_to = { database: { writing: :primary } }
62
63
  > ```
64
+ > This is probably what you want if you are using a single Postgres database.
63
65
 
64
66
  ## Log Outbound Requests
65
67
 
@@ -127,7 +129,7 @@ config.middleware.insert_before Rails::Rack::Logger, RailsApiLogger::Middleware,
127
129
  If you want to log only requests on a certain path, you can pass a regular expression:
128
130
 
129
131
  ```ruby
130
- config.middleware.insert_before Rails::Rack::Logger, RailsApiLogger::Middleware, path_regexp: /api/
132
+ config.middleware.insert_before Rails::Rack::Logger, RailsApiLogger::Middleware, path_regexp: %r{^/api}
131
133
  ```
132
134
 
133
135
  If you want to log only requests on a certain host, you can also use a regular expression:
@@ -203,11 +205,20 @@ This configuration will give you some nice views, and searches to work with the
203
205
  show do
204
206
  include_fields :loggable, :method, :path, :response_code
205
207
  field(:created_at)
208
+ field(:query_params) do
209
+ formatted_value do
210
+ params = bindings[:object].path.split("?").second
211
+ if params.present?
212
+ params = CGI.parse(params)
213
+ bindings[:view].tag.pre JSON.pretty_generate(params)
214
+ end
215
+ end
216
+ end
206
217
  field(:request_body) do
207
- formatted_value { "<pre>#{JSON.pretty_generate(bindings[:object].request_body)}</pre>".html_safe }
218
+ formatted_value { bindings[:view].tag.pre JSON.pretty_generate(bindings[:object].request_body) }
208
219
  end
209
220
  field(:response_body) do
210
- formatted_value { "<pre>#{JSON.pretty_generate(bindings[:object].response_body)}</pre>".html_safe }
221
+ formatted_value { bindings[:view].tag.pre JSON.pretty_generate(bindings[:object].response_body) }
211
222
  end
212
223
  end
213
224
  end
@@ -252,6 +263,20 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
252
263
  version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version,
253
264
  push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
254
265
 
266
+ ### Start dummy app
267
+
268
+ You can spin up the dummy rails app with the following command:
269
+
270
+ ```bash
271
+ TARGET_DB=sqlite BUNDLE_GEMFILE=gemfiles/rails_8.0.gemfile bin/rails server
272
+ ```
273
+
274
+ and invoke the API endpoints. Here are some examples:
275
+
276
+ ```bash
277
+ curl -X POST http://localhost:3000/api/books -d '{"book": {"name": "John Doe"}}' -H "Content-Type: application/json"
278
+ ```
279
+
255
280
  ## Contributing
256
281
 
257
282
  Bug reports and pull requests are welcome on GitHub at https://github.com/renuo/rails_api_logger.
@@ -20,7 +20,7 @@ module RailsApiLogger
20
20
  logging = log?(env, request)
21
21
  if logging
22
22
  env["INBOUND_REQUEST_LOG"] = InboundRequestLog.from_request(request, skip_request_body: skip_request_body?(env))
23
- request.body.rewind if request.body.respond_to?(:read)
23
+ request.body.rewind if request.body.respond_to?(:rewind)
24
24
  end
25
25
  status, headers, body = @app.call(env)
26
26
  if logging
@@ -61,16 +61,17 @@ module RailsApiLogger
61
61
 
62
62
  def parsed_body(body)
63
63
  return unless body.present?
64
-
65
- if body.respond_to?(:to_ary)
66
- JSON.parse(body.to_ary[0])
64
+ parsable_body = if body.respond_to?(:to_ary)
65
+ body.to_ary[0]
67
66
  elsif body.respond_to?(:body)
68
- JSON.parse(body.body)
67
+ body.body
69
68
  else
70
69
  body
71
70
  end
71
+
72
+ JSON.parse(parsable_body)
72
73
  rescue JSON::ParserError, ArgumentError
73
- body
74
+ parsable_body
74
75
  end
75
76
 
76
77
  def request_with_state_change?(request)
data/bin/rails CHANGED
@@ -10,7 +10,12 @@ APP_PATH = File.expand_path('../spec/dummy/config/application', __dir__)
10
10
 
11
11
  # Set up gems listed in the Gemfile.
12
12
  ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
13
- require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
13
+ if File.exist?(ENV['BUNDLE_GEMFILE'])
14
+ require 'bundler/setup'
15
+ else
16
+ puts "Gemfile not found."
17
+ exit 1
18
+ end
14
19
 
15
20
  require 'rails/all'
16
21
  require 'rails/engine/commands'
@@ -6,5 +6,7 @@ gem "concurrent-ruby", "1.3.4"
6
6
  gem "rails", "~> 6.1.0"
7
7
  gem "rspec-rails", "~> 6.1.0"
8
8
  gem "sqlite3", "~> 1.7.3"
9
+ gem "ammeter", "~> 1.1"
10
+ gem "webmock", "~> 3.25.0"
9
11
 
10
12
  gemspec path: "../"
@@ -70,20 +70,32 @@ GEM
70
70
  minitest (>= 5.1)
71
71
  tzinfo (~> 2.0)
72
72
  zeitwerk (~> 2.3)
73
+ addressable (2.8.7)
74
+ public_suffix (>= 2.0.2, < 7.0)
75
+ ammeter (1.1.7)
76
+ activesupport (>= 3.0)
77
+ railties (>= 3.0)
78
+ rspec-rails (>= 2.2)
73
79
  appraisal (2.5.0)
74
80
  bundler
75
81
  rake
76
82
  thor (>= 0.14.0)
77
83
  ast (2.4.2)
78
84
  base64 (0.2.0)
85
+ bigdecimal (3.2.2)
79
86
  builder (3.3.0)
87
+ byebug (12.0.0)
80
88
  concurrent-ruby (1.3.4)
89
+ crack (1.0.0)
90
+ bigdecimal
91
+ rexml
81
92
  crass (1.0.6)
82
93
  date (3.4.1)
83
94
  diff-lcs (1.6.0)
84
95
  erubi (1.13.1)
85
96
  globalid (1.2.1)
86
97
  activesupport (>= 6.1)
98
+ hashdiff (1.2.0)
87
99
  i18n (1.14.7)
88
100
  concurrent-ruby (~> 1.0)
89
101
  json (2.10.1)
@@ -119,6 +131,7 @@ GEM
119
131
  ast (~> 2.4.1)
120
132
  racc
121
133
  pg (1.5.9)
134
+ public_suffix (6.0.2)
122
135
  racc (1.8.1)
123
136
  rack (2.2.11)
124
137
  rack-test (2.2.0)
@@ -154,6 +167,7 @@ GEM
154
167
  rainbow (3.1.1)
155
168
  rake (12.3.3)
156
169
  regexp_parser (2.10.0)
170
+ rexml (3.4.1)
157
171
  rspec-core (3.13.3)
158
172
  rspec-support (~> 3.13.0)
159
173
  rspec-expectations (3.13.3)
@@ -214,6 +228,10 @@ GEM
214
228
  unicode-display_width (3.1.4)
215
229
  unicode-emoji (~> 4.0, >= 4.0.4)
216
230
  unicode-emoji (4.0.4)
231
+ webmock (3.25.1)
232
+ addressable (>= 2.8.0)
233
+ crack (>= 0.3.2)
234
+ hashdiff (>= 0.4.0, < 2.0.0)
217
235
  websocket-driver (0.7.7)
218
236
  base64
219
237
  websocket-extensions (>= 0.1.0)
@@ -224,7 +242,9 @@ PLATFORMS
224
242
  arm64-darwin
225
243
 
226
244
  DEPENDENCIES
245
+ ammeter (~> 1.1)
227
246
  appraisal (~> 2.5)
247
+ byebug
228
248
  concurrent-ruby (= 1.3.4)
229
249
  mysql2 (~> 0.5.6)
230
250
  pg (~> 1.5.4)
@@ -235,6 +255,7 @@ DEPENDENCIES
235
255
  rspec-rails (~> 6.1.0)
236
256
  sqlite3 (~> 1.7.3)
237
257
  standard (~> 1.31)
258
+ webmock (~> 3.25.0)
238
259
 
239
260
  BUNDLED WITH
240
261
  2.5.4
@@ -6,5 +6,7 @@ gem "concurrent-ruby", "1.3.4"
6
6
  gem "rails", "~> 7.0.0"
7
7
  gem "rspec-rails", "~> 7.1.0"
8
8
  gem "sqlite3", "~> 1.7.3"
9
+ gem "ammeter", "~> 1.1"
10
+ gem "webmock", "~> 3.25.0"
9
11
 
10
12
  gemspec path: "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- rails_api_logger (0.10.0)
4
+ rails_api_logger (0.10.1)
5
5
  activejob (>= 6.0)
6
6
  activerecord (>= 6.0)
7
7
  nokogiri
@@ -76,20 +76,32 @@ GEM
76
76
  i18n (>= 1.6, < 2)
77
77
  minitest (>= 5.1)
78
78
  tzinfo (~> 2.0)
79
+ addressable (2.8.7)
80
+ public_suffix (>= 2.0.2, < 7.0)
81
+ ammeter (1.1.7)
82
+ activesupport (>= 3.0)
83
+ railties (>= 3.0)
84
+ rspec-rails (>= 2.2)
79
85
  appraisal (2.5.0)
80
86
  bundler
81
87
  rake
82
88
  thor (>= 0.14.0)
83
89
  ast (2.4.2)
84
90
  base64 (0.2.0)
91
+ bigdecimal (3.2.2)
85
92
  builder (3.3.0)
93
+ byebug (12.0.0)
86
94
  concurrent-ruby (1.3.4)
95
+ crack (1.0.0)
96
+ bigdecimal
97
+ rexml
87
98
  crass (1.0.6)
88
99
  date (3.4.1)
89
100
  diff-lcs (1.6.0)
90
101
  erubi (1.13.1)
91
102
  globalid (1.2.1)
92
103
  activesupport (>= 6.1)
104
+ hashdiff (1.2.0)
93
105
  i18n (1.14.7)
94
106
  concurrent-ruby (~> 1.0)
95
107
  json (2.10.1)
@@ -125,6 +137,7 @@ GEM
125
137
  ast (~> 2.4.1)
126
138
  racc
127
139
  pg (1.5.9)
140
+ public_suffix (6.0.2)
128
141
  racc (1.8.1)
129
142
  rack (2.2.11)
130
143
  rack-test (2.2.0)
@@ -160,6 +173,7 @@ GEM
160
173
  rainbow (3.1.1)
161
174
  rake (12.3.3)
162
175
  regexp_parser (2.10.0)
176
+ rexml (3.4.1)
163
177
  rspec-core (3.13.3)
164
178
  rspec-support (~> 3.13.0)
165
179
  rspec-expectations (3.13.3)
@@ -213,6 +227,10 @@ GEM
213
227
  unicode-display_width (3.1.4)
214
228
  unicode-emoji (~> 4.0, >= 4.0.4)
215
229
  unicode-emoji (4.0.4)
230
+ webmock (3.25.1)
231
+ addressable (>= 2.8.0)
232
+ crack (>= 0.3.2)
233
+ hashdiff (>= 0.4.0, < 2.0.0)
216
234
  websocket-driver (0.7.7)
217
235
  base64
218
236
  websocket-extensions (>= 0.1.0)
@@ -223,7 +241,9 @@ PLATFORMS
223
241
  arm64-darwin
224
242
 
225
243
  DEPENDENCIES
244
+ ammeter (~> 1.1)
226
245
  appraisal (~> 2.5)
246
+ byebug
227
247
  concurrent-ruby (= 1.3.4)
228
248
  mysql2 (~> 0.5.6)
229
249
  pg (~> 1.5.4)
@@ -234,6 +254,7 @@ DEPENDENCIES
234
254
  rspec-rails (~> 7.1.0)
235
255
  sqlite3 (~> 1.7.3)
236
256
  standard (~> 1.31)
257
+ webmock (~> 3.25.0)
237
258
 
238
259
  BUNDLED WITH
239
260
  2.5.4
@@ -5,5 +5,7 @@ source "https://rubygems.org"
5
5
  gem "rails", "~> 7.1.0"
6
6
  gem "rspec-rails", "~> 7.1.0"
7
7
  gem "sqlite3", "~> 1.7.3"
8
+ gem "ammeter", "~> 1.1"
9
+ gem "webmock", "~> 3.25.0"
8
10
 
9
11
  gemspec path: "../"
@@ -85,6 +85,12 @@ GEM
85
85
  minitest (>= 5.1)
86
86
  mutex_m
87
87
  tzinfo (~> 2.0)
88
+ addressable (2.8.7)
89
+ public_suffix (>= 2.0.2, < 7.0)
90
+ ammeter (1.1.7)
91
+ activesupport (>= 3.0)
92
+ railties (>= 3.0)
93
+ rspec-rails (>= 2.2)
88
94
  appraisal (2.5.0)
89
95
  bundler
90
96
  rake
@@ -93,8 +99,12 @@ GEM
93
99
  base64 (0.2.0)
94
100
  bigdecimal (3.1.9)
95
101
  builder (3.3.0)
102
+ byebug (12.0.0)
96
103
  concurrent-ruby (1.3.5)
97
104
  connection_pool (2.5.0)
105
+ crack (1.0.0)
106
+ bigdecimal
107
+ rexml
98
108
  crass (1.0.6)
99
109
  date (3.4.1)
100
110
  diff-lcs (1.6.0)
@@ -102,6 +112,7 @@ GEM
102
112
  erubi (1.13.1)
103
113
  globalid (1.2.1)
104
114
  activesupport (>= 6.1)
115
+ hashdiff (1.2.0)
105
116
  i18n (1.14.7)
106
117
  concurrent-ruby (~> 1.0)
107
118
  io-console (0.8.0)
@@ -148,6 +159,7 @@ GEM
148
159
  psych (5.2.3)
149
160
  date
150
161
  stringio
162
+ public_suffix (6.0.2)
151
163
  racc (1.8.1)
152
164
  rack (3.1.10)
153
165
  rack-session (2.1.0)
@@ -193,6 +205,7 @@ GEM
193
205
  regexp_parser (2.10.0)
194
206
  reline (0.6.0)
195
207
  io-console (~> 0.5)
208
+ rexml (3.4.1)
196
209
  rspec-core (3.13.3)
197
210
  rspec-support (~> 3.13.0)
198
211
  rspec-expectations (3.13.3)
@@ -247,6 +260,10 @@ GEM
247
260
  unicode-display_width (3.1.4)
248
261
  unicode-emoji (~> 4.0, >= 4.0.4)
249
262
  unicode-emoji (4.0.4)
263
+ webmock (3.25.1)
264
+ addressable (>= 2.8.0)
265
+ crack (>= 0.3.2)
266
+ hashdiff (>= 0.4.0, < 2.0.0)
250
267
  websocket-driver (0.7.7)
251
268
  base64
252
269
  websocket-extensions (>= 0.1.0)
@@ -257,7 +274,9 @@ PLATFORMS
257
274
  arm64-darwin
258
275
 
259
276
  DEPENDENCIES
277
+ ammeter (~> 1.1)
260
278
  appraisal (~> 2.5)
279
+ byebug
261
280
  mysql2 (~> 0.5.6)
262
281
  pg (~> 1.5.4)
263
282
  rack
@@ -267,6 +286,7 @@ DEPENDENCIES
267
286
  rspec-rails (~> 7.1.0)
268
287
  sqlite3 (~> 1.7.3)
269
288
  standard (~> 1.31)
289
+ webmock (~> 3.25.0)
270
290
 
271
291
  BUNDLED WITH
272
292
  2.5.4
@@ -5,5 +5,7 @@ source "https://rubygems.org"
5
5
  gem "rails", "~> 7.2.0"
6
6
  gem "rspec-rails", "~> 7.1.0"
7
7
  gem "sqlite3", "~> 1.7.3"
8
+ gem "ammeter", "~> 1.1"
9
+ gem "webmock", "~> 3.25.0"
8
10
 
9
11
  gemspec path: "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- rails_api_logger (0.10.0)
4
+ rails_api_logger (0.10.1)
5
5
  activejob (>= 6.0)
6
6
  activerecord (>= 6.0)
7
7
  nokogiri
@@ -82,6 +82,12 @@ GEM
82
82
  minitest (>= 5.1)
83
83
  securerandom (>= 0.3)
84
84
  tzinfo (~> 2.0, >= 2.0.5)
85
+ addressable (2.8.7)
86
+ public_suffix (>= 2.0.2, < 7.0)
87
+ ammeter (1.1.7)
88
+ activesupport (>= 3.0)
89
+ railties (>= 3.0)
90
+ rspec-rails (>= 2.2)
85
91
  appraisal (2.5.0)
86
92
  bundler
87
93
  rake
@@ -91,8 +97,12 @@ GEM
91
97
  benchmark (0.4.0)
92
98
  bigdecimal (3.1.9)
93
99
  builder (3.3.0)
100
+ byebug (12.0.0)
94
101
  concurrent-ruby (1.3.5)
95
102
  connection_pool (2.5.0)
103
+ crack (1.0.0)
104
+ bigdecimal
105
+ rexml
96
106
  crass (1.0.6)
97
107
  date (3.4.1)
98
108
  diff-lcs (1.6.0)
@@ -100,6 +110,7 @@ GEM
100
110
  erubi (1.13.1)
101
111
  globalid (1.2.1)
102
112
  activesupport (>= 6.1)
113
+ hashdiff (1.2.0)
103
114
  i18n (1.14.7)
104
115
  concurrent-ruby (~> 1.0)
105
116
  io-console (0.8.0)
@@ -146,6 +157,7 @@ GEM
146
157
  psych (5.2.3)
147
158
  date
148
159
  stringio
160
+ public_suffix (6.0.2)
149
161
  racc (1.8.1)
150
162
  rack (3.1.10)
151
163
  rack-session (2.1.0)
@@ -191,6 +203,7 @@ GEM
191
203
  regexp_parser (2.10.0)
192
204
  reline (0.6.0)
193
205
  io-console (~> 0.5)
206
+ rexml (3.4.1)
194
207
  rspec-core (3.13.3)
195
208
  rspec-support (~> 3.13.0)
196
209
  rspec-expectations (3.13.3)
@@ -247,6 +260,10 @@ GEM
247
260
  unicode-emoji (~> 4.0, >= 4.0.4)
248
261
  unicode-emoji (4.0.4)
249
262
  useragent (0.16.11)
263
+ webmock (3.25.1)
264
+ addressable (>= 2.8.0)
265
+ crack (>= 0.3.2)
266
+ hashdiff (>= 0.4.0, < 2.0.0)
250
267
  websocket-driver (0.7.7)
251
268
  base64
252
269
  websocket-extensions (>= 0.1.0)
@@ -257,7 +274,9 @@ PLATFORMS
257
274
  arm64-darwin
258
275
 
259
276
  DEPENDENCIES
277
+ ammeter (~> 1.1)
260
278
  appraisal (~> 2.5)
279
+ byebug
261
280
  mysql2 (~> 0.5.6)
262
281
  pg (~> 1.5.4)
263
282
  rack
@@ -267,6 +286,7 @@ DEPENDENCIES
267
286
  rspec-rails (~> 7.1.0)
268
287
  sqlite3 (~> 1.7.3)
269
288
  standard (~> 1.31)
289
+ webmock (~> 3.25.0)
270
290
 
271
291
  BUNDLED WITH
272
292
  2.5.4
@@ -5,5 +5,8 @@ source "https://rubygems.org"
5
5
  gem "rails", "~> 8.0.0"
6
6
  gem "rspec-rails", "~> 7.1.0"
7
7
  gem "sqlite3", "~> 2.1.0"
8
+ gem "ammeter", "~> 1.1"
9
+ gem "puma"
10
+ gem "webmock", "~> 3.25.0"
8
11
 
9
12
  gemspec path: "../"