atlas_rb 1.27.2 → 1.27.3
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/.version +1 -1
- data/CHANGELOG.md +9 -0
- data/Gemfile.lock +1 -1
- data/README.md +5 -3
- data/lib/atlas_rb/metrics.rb +8 -5
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 57da54874f04fe2d2b07757c8c062fe5a4e95aae8d843de69ed7bd53158b8122
|
|
4
|
+
data.tar.gz: af25098d8000917fac7e65121fc575dd38460ed23c2515e6309d2d230c9389ce
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 228ce5a5c9c2746628bea89760fd5b623d017a3511e2d8f59ce22401aa58499a2e82500da0fd76ba12dacd5e3d5fd772694f717b7312e98b0c2b8fec43c94ca2
|
|
7
|
+
data.tar.gz: 3b92e9cf2b59e766276a7654fa2769d5339b9b511f146aa429692b8f7d84dfa3a96b5575659b6ee923d64bc3b08bc1291f8245de75922b419ba9b276629a7043
|
data/.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.27.
|
|
1
|
+
1.27.3
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.27.3
|
|
4
|
+
|
|
5
|
+
### Changed — `Metrics.latency` documentation
|
|
6
|
+
|
|
7
|
+
Atlas 0.6.227 times each request from the top of its Rack stack, the same span
|
|
8
|
+
as `x-runtime`, rather than the controller action alone. The YARD and README
|
|
9
|
+
now say so. No code changed; against an older Atlas the figures are still
|
|
10
|
+
action-only.
|
|
11
|
+
|
|
3
12
|
## 1.27.2
|
|
4
13
|
|
|
5
14
|
Requires an Atlas that serves `GET /metrics/latency`.
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
|
@@ -871,9 +871,11 @@ latency["p95_ms"] # => 98
|
|
|
871
871
|
latency["slowest_actions"].first # => { "action" => "works#mods", "calls" => 912, "p95_ms" => 188 }
|
|
872
872
|
```
|
|
873
873
|
|
|
874
|
-
Atlas times each request from when
|
|
875
|
-
the
|
|
876
|
-
|
|
874
|
+
Atlas times each request from when it enters Atlas's Rack stack until the app
|
|
875
|
+
returns the response, the same span as the `x-runtime` header. The figures
|
|
876
|
+
include time a request waited inside Atlas behind concurrent ones. They leave
|
|
877
|
+
out time queued for a Puma thread, the network, and your own waiting. If you
|
|
878
|
+
also time your Atlas calls, the difference is time spent on your side. The percentiles are
|
|
877
879
|
interpolated from histogram buckets, so they are approximate.
|
|
878
880
|
|
|
879
881
|
Like `Health.read`, it has a 5-second deadline and no retry. It raises
|
data/lib/atlas_rb/metrics.rb
CHANGED
|
@@ -15,11 +15,14 @@ module AtlasRb
|
|
|
15
15
|
|
|
16
16
|
# How long Atlas took to serve its own requests (`GET /metrics/latency`).
|
|
17
17
|
#
|
|
18
|
-
# Measured inside Atlas, from when
|
|
19
|
-
# returns
|
|
20
|
-
#
|
|
21
|
-
#
|
|
22
|
-
#
|
|
18
|
+
# Measured inside Atlas, from when a request enters its Rack stack until
|
|
19
|
+
# the app returns the response — the same span as the `x-runtime` header.
|
|
20
|
+
# So it includes time a request spent waiting inside Atlas behind
|
|
21
|
+
# concurrent ones, and leaves out time queued for a Puma thread, the
|
|
22
|
+
# network, and the caller's own waiting. A caller that also times its
|
|
23
|
+
# Atlas calls can subtract to see how much of its wait was its own. The
|
|
24
|
+
# percentiles are interpolated from histogram buckets, so they are
|
|
25
|
+
# approximate.
|
|
23
26
|
#
|
|
24
27
|
# No retry, and a fresh socket per call: like {AtlasRb::Health.read}, it is
|
|
25
28
|
# polled rarely and should fail fast rather than hide a struggling Atlas.
|