rails-autoscale-core 1.2.3 → 1.3.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: 964dfef811345b3e60c86525ccf5cfa2ea6f8711e6e5a6361cfd61006421be06
4
- data.tar.gz: eceabb91c0e13477bbe68371a0233b6bfa111e5a5048179f2484a37b54da026c
3
+ metadata.gz: 0a26698eaf5edca75ec2e8fd7bf1b5035f9b697c1a94fd81a062a9dfec80c636
4
+ data.tar.gz: 30476ecf0afa5774c3773c2b2abbd7c258ef1256fe3e0d086d44a6cca07b69ff
5
5
  SHA512:
6
- metadata.gz: a7b350c828704f4b4a7aec702e85e03bb49066516a198c4c94f4b1bfc5d8da70fc006ca437a7d0abf5511e24996e168850ffc2c271a0ac72386d41952f8c3e37
7
- data.tar.gz: ae5f5739a1b7bdf62ba808dc27ebdcc3fc9208586d61dc12b181d1fcdc9a31b1090774560b43eabf283c74cd2c9d325366be5739bbb8794dcca5fc134afdec91
6
+ metadata.gz: ae8ddf51539fee0296c875b579dc7a01014fe2001393ea63c2c81da56e1ff008b154d51b60e0d86a42767908d030000d2441019a74380c48386742cb2e4f0e18
7
+ data.tar.gz: 5e75546db2c28f54781d03b9c791731408e45f21a5055cddfe03fac7625131f194a4873fb50bcc5bca194754e035b07b1e6c686bbd0b0d932e0419ca65ae511e
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- judoscale-ruby (1.2.3)
4
+ judoscale-ruby (1.3.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -10,19 +10,19 @@ GEM
10
10
  public_suffix (>= 2.0.2, < 6.0)
11
11
  crack (0.4.5)
12
12
  rexml
13
- debug (1.4.0)
14
- irb (>= 1.3.6)
15
- reline (>= 0.2.7)
13
+ debug (1.7.1)
14
+ irb (>= 1.5.0)
15
+ reline (>= 0.3.1)
16
16
  hashdiff (1.0.1)
17
- io-console (0.5.11)
18
- irb (1.4.1)
17
+ io-console (0.6.0)
18
+ irb (1.6.2)
19
19
  reline (>= 0.3.0)
20
- minitest (5.15.0)
21
- public_suffix (5.0.0)
20
+ minitest (5.17.0)
21
+ public_suffix (5.0.1)
22
22
  rake (13.0.6)
23
23
  rake-release (1.3.0)
24
24
  bundler (>= 1.11, < 3)
25
- reline (0.3.1)
25
+ reline (0.3.2)
26
26
  io-console (~> 0.5)
27
27
  rexml (3.2.5)
28
28
  webmock (3.18.1)
@@ -14,14 +14,18 @@ module Judoscale
14
14
 
15
15
  private
16
16
 
17
- def select_rows_silently(sql)
17
+ def run_silently(&block)
18
18
  if Config.instance.log_level && ::ActiveRecord::Base.logger.respond_to?(:silence)
19
- ::ActiveRecord::Base.logger.silence(Config.instance.log_level) { select_rows_tagged(sql) }
19
+ ::ActiveRecord::Base.logger.silence(Config.instance.log_level) { yield }
20
20
  else
21
- select_rows_tagged(sql)
21
+ yield
22
22
  end
23
23
  end
24
24
 
25
+ def select_rows_silently(sql)
26
+ run_silently { select_rows_tagged(sql) }
27
+ end
28
+
25
29
  def select_rows_tagged(sql)
26
30
  if ActiveRecord::Base.logger.respond_to?(:tagged)
27
31
  ActiveRecord::Base.logger.tagged(Config.instance.log_tag) { select_rows(sql) }
@@ -18,11 +18,18 @@ module Judoscale
18
18
 
19
19
  def started_at
20
20
  if @request_start_header
21
- # Heroku sets the header as an integer, measured in milliseconds.
22
- # If nginx is involved, it might be in seconds with fractional milliseconds,
23
- # and it might be preceeded by "t=". We can all cases by removing non-digits
24
- # and treating as milliseconds.
25
- Time.at(@request_start_header.gsub(/\D/, "").to_i / 1000.0)
21
+ # There are several variants of this header. We handle these:
22
+ # - whole milliseconds (Heroku)
23
+ # - whole nanoseconds (Render)
24
+ # - fractional seconds (NGINX)
25
+ # - preceeding "t=" (NGINX)
26
+ value = @request_start_header.gsub(/[^0-9.]/, "").to_f
27
+
28
+ case value
29
+ when 0..100_000_000_000 then Time.at(value)
30
+ when 100_000_000_000..100_000_000_000_000 then Time.at(value / 1000.0)
31
+ else Time.at(value / 1_000_000.0)
32
+ end
26
33
  end
27
34
  end
28
35
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Judoscale
4
- VERSION = "1.2.3"
4
+ VERSION = "1.3.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-autoscale-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam McCrea
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-11-26 00:00:00.000000000 Z
12
+ date: 2023-02-09 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description:
15
15
  email: