karafka-web 0.7.9 → 0.7.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/ci.yml +3 -1
- data/CHANGELOG.md +3 -0
- data/Gemfile.lock +1 -1
- data/lib/karafka/web/processing/consumers/aggregators/metrics.rb +13 -4
- data/lib/karafka/web/ui/models/metrics/charts/topics.rb +0 -9
- data/lib/karafka/web/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '0806cac6cd5ba083c727f4737a5bacbc6fb51a45229043745e401c3f5ccfd120'
|
4
|
+
data.tar.gz: f6f5743e8fe1b32eec5c126f81d8ed4bcb0501569c050b721a238388d608a7aa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a70b5779abaa3440ffb85f8d735edf6a96723ab08c0c52a982c3ac09331d4a459053de0fcf4767bd79631d0314efe9d3a13949639d1b2ee62f88cda6e6519dbb
|
7
|
+
data.tar.gz: 2ab8bc6927e8e5d0cf6ef63e2be932322eeec8d0f668c7a144b61d5dfc3ceae74a758dcd58f32deac4ccf42c4cad1d799e7df4f5c0b0bbb0494b245362104262
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/.github/workflows/ci.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
# Karafka Web changelog
|
2
2
|
|
3
|
+
## 0.7.10 (2023-10-31)
|
4
|
+
- [Fix] Max LSO chart does not work as expected (#201)
|
5
|
+
|
3
6
|
## 0.7.9 (2023-10-25)
|
4
7
|
- [Enhancement] Allow for `Karafka::Web.producer` reconfiguration from the default (`Karafka.producer`).
|
5
8
|
- [Change] Rely on `karafka-core` `>=` `2.2.4` to support lazy loaded custom web producer.
|
data/Gemfile.lock
CHANGED
@@ -107,9 +107,18 @@ module Karafka
|
|
107
107
|
|
108
108
|
# Last stable offsets freeze durations - we pick the max freeze to indicate
|
109
109
|
# the longest open transaction that potentially may be hanging
|
110
|
-
|
111
|
-
|
112
|
-
|
110
|
+
# We select only those partitions for which LSO != HO as in any other case this
|
111
|
+
# just means we've reached the end of data and ls may freeze because there is no
|
112
|
+
# more data flowing. Such cases should not be reported as ls offset freezes because
|
113
|
+
# there is no more data to be processed and can grow until more data is present
|
114
|
+
# this does not indicate "bad" freezing that we are interested in
|
115
|
+
ls_offsets_fds = partitions_data.map do |p_details|
|
116
|
+
next if p_details.fetch(:ls_offset, 0) == p_details.fetch(:hi_offset, 0)
|
117
|
+
|
118
|
+
ls_offset_fd = p_details.fetch(:ls_offset_fd, 0)
|
119
|
+
|
120
|
+
ls_offset_fd.negative? ? nil : ls_offset_fd
|
121
|
+
end
|
113
122
|
|
114
123
|
cgs[group_name] ||= {}
|
115
124
|
cgs[group_name][topic_name] = {
|
@@ -119,7 +128,7 @@ module Karafka
|
|
119
128
|
# Take max last stable offset duration without any change. This can
|
120
129
|
# indicate a hanging transaction, because the offset will not move forward
|
121
130
|
# and will stay with a growing freeze duration when stuck
|
122
|
-
ls_offset_fd:
|
131
|
+
ls_offset_fd: ls_offsets_fds.compact.max || 0
|
123
132
|
}
|
124
133
|
end
|
125
134
|
|
@@ -76,20 +76,11 @@ module Karafka
|
|
76
76
|
topic_without_cg = topic.split('[').first
|
77
77
|
|
78
78
|
metrics.each do |current|
|
79
|
-
ls_offset = current.last[:ls_offset] || 0
|
80
79
|
ls_offset_fd = current.last[:ls_offset_fd] || 0
|
81
|
-
hi_offset = current.last[:hi_offset] || 0
|
82
80
|
|
83
81
|
# We convert this to seconds from milliseconds due to our Web UI precision
|
84
82
|
# Reporting is in ms for consistency
|
85
83
|
normalized_fd = (ls_offset_fd / 1_000).round
|
86
|
-
# In case ls_offset and hi_offset are the same, it means we're reached eof
|
87
|
-
# and we just don't have more data. In cases like this, LSO freeze duration
|
88
|
-
# will grow because LSO will remain unchanged, but it does not mean it is
|
89
|
-
# frozen. It means there is just no more data in the topic partition
|
90
|
-
# This means we need to nullify this case, otherwise it would report, that
|
91
|
-
# lso is hanging.
|
92
|
-
normalized_fd = 0 if ls_offset == hi_offset
|
93
84
|
|
94
85
|
topics[topic_without_cg][current.first] << normalized_fd
|
95
86
|
end
|
data/lib/karafka/web/version.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: karafka-web
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maciej Mensfeld
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
AnG1dJU+yL2BK7vaVytLTstJME5mepSZ46qqIJXMuWob/YPDmVaBF39TDSG9e34s
|
36
36
|
msG3BiCqgOgHAnL23+CN3Rt8MsuRfEtoTKpJVcCfoEoNHOkc
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2023-10-
|
38
|
+
date: 2023-10-31 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: erubi
|
metadata.gz.sig
CHANGED
Binary file
|