karafka-web 0.9.0.rc1 → 0.9.0.rc2

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: bb0a26726917ff55929bb34bf81e4a0a7b6f1e5db0e6c34fe11b85c2601cd9df
4
- data.tar.gz: 20664c3ce3931cc4c770af78fe1ced92690cf5dd8f58bf0f24b7a05ecb05982a
3
+ metadata.gz: aa87182151f35775e4c08d82e4cebebddaf415d6893eddb4cfae32ccf061556f
4
+ data.tar.gz: 04b0e2c45d8086cb71bc0cfe6069cfb125f2d6694ee503e7445bca924c814d46
5
5
  SHA512:
6
- metadata.gz: b566ebc2f5c500e31fe4b20106fdf9adb022f89079109cd3131c6dd7950dbddedbbea1c389764c9e5c197074073da606aec9b3029303877e5b68123447bbf28b
7
- data.tar.gz: 341b8acc29d5cd21c93d84227b86b4674390c50e3f43920837d5b3caaa286676cace4ea35d66c67349c04431733162a8720340ab2c297898a9a7548d5cc937df
6
+ metadata.gz: 899a189e1c102899846826a739f21a1e4eee1ad44f828864e7a2019e395c038e69bca8dd22074da87ddab46af1f40070c70a7f2022885378aeb806cb4f7c2389
7
+ data.tar.gz: 66848f79f9460e42ccd45fbb9e28adbb70651356193a5c2d5826ccc214ad42e2df4b784b5872985f41c22cd5116563bc243306c5b0b1bd43da4ce9f575371a3f
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -18,6 +18,7 @@
18
18
  - [Enhancement] Provide page titles for ease of navigation.
19
19
  - [Change] Rename Cluster => Topics to Cluster => Replication to better align with what is shows.
20
20
  - [Change] Make support messages more entertaining.
21
+ - [Change] Rename `processing.consumer_group` to `admin.group_id` for consistency with Karafka.
21
22
  - [Refactor] Normalize what is process name and process id.
22
23
  - [Refactor] Create one `pro/` namespace for all Web related sub-modules.
23
24
  - [Refactor] Extract alerts into a common component.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- karafka-web (0.9.0.rc1)
4
+ karafka-web (0.9.0.rc2)
5
5
  erubi (~> 1.4)
6
6
  karafka (>= 2.4.0.beta1, < 2.5.0)
7
7
  karafka-core (>= 2.4.0.rc1, < 2.5.0)
data/docker-compose.yml CHANGED
@@ -3,7 +3,7 @@ version: '2'
3
3
  services:
4
4
  kafka:
5
5
  container_name: kafka
6
- image: confluentinc/cp-kafka:7.6.0
6
+ image: confluentinc/cp-kafka:7.6.1
7
7
 
8
8
  ports:
9
9
  - 9092:9092
@@ -26,6 +26,12 @@ module Karafka
26
26
  lazy: true
27
27
  )
28
28
 
29
+ # What should be the consumer group name for web UI consumer
30
+ # Karafka Web UI uses the Admin API for many operations, but there are few
31
+ # (like states materialization) where a distinct consumer group is needed. In cases like that
32
+ # this group id will be used
33
+ setting :group_id, default: 'karafka_web'
34
+
29
35
  # Topics naming - used for processing and UI
30
36
  setting :topics do
31
37
  # All the errors encountered will be dispatched to this topic for inspection
@@ -108,9 +114,6 @@ module Karafka
108
114
  # apps should materialize the state
109
115
  setting :active, default: true
110
116
 
111
- # What should be the consumer group name for web consumer
112
- setting :consumer_group, default: 'karafka_web'
113
-
114
117
  # How often should we report the aggregated state and metrics
115
118
  # By default we flush the states twice as often as the data reporting.
116
119
  # This will allow us to have closer to real-time reporting.
@@ -12,6 +12,7 @@ module Karafka
12
12
 
13
13
  required(:enabled) { |val| [true, false, nil].include?(val) }
14
14
  required(:ttl) { |val| val.is_a?(Numeric) && val.positive? }
15
+ required(:group_id) { |val| val.is_a?(String) && TOPIC_REGEXP.match?(val) }
15
16
 
16
17
  nested(:topics) do
17
18
  required(:errors) { |val| val.is_a?(String) && TOPIC_REGEXP.match?(val) }
@@ -44,7 +45,6 @@ module Karafka
44
45
 
45
46
  nested(:processing) do
46
47
  required(:active) { |val| [true, false].include?(val) }
47
- required(:consumer_group) { |val| val.is_a?(String) && TOPIC_REGEXP.match?(val) }
48
48
  # Do not update data more often not to overload and not to generate too much data
49
49
  required(:interval) { |val| val.is_a?(Integer) && val >= 1_000 }
50
50
  end
@@ -39,7 +39,7 @@ module Karafka
39
39
  ::Karafka::App.routes.draw do
40
40
  payload_deserializer = ::Karafka::Web::Deserializer.new
41
41
 
42
- consumer_group ::Karafka::Web.config.processing.consumer_group do
42
+ consumer_group ::Karafka::Web.config.group_id do
43
43
  # Topic we listen on to materialize the states
44
44
  topic ::Karafka::Web.config.topics.consumers.reports do
45
45
  config(active: false)
@@ -22,12 +22,6 @@ module Karafka
22
22
  # Management of processes is enabled by default
23
23
  setting :active, default: true
24
24
 
25
- # What consumer group to use for the commanding subscription.
26
- # In general this CG is irrelevant. Required but irrelevant unless you're using ACLs
27
- # as in that case you will have to grant it permissions. This CG never stores any
28
- # offsets as the underlying assignment is via assign API and not subscribe one.
29
- setting :consumer_group, default: 'karafka_web'
30
-
31
25
  # How long should we wait on command arrival before yielding. Having it too short will
32
26
  # cause unnecessary CPU cycles. Too long will make shutdown slower.
33
27
  setting :max_wait_time, default: 2_000
@@ -32,10 +32,6 @@ module Karafka
32
32
  required(:pause_timeout) { |val| val.is_a?(Integer) && val.positive? }
33
33
  required(:max_wait_time) { |val| val.is_a?(Integer) && val.positive? }
34
34
  required(:kafka) { |val| val.is_a?(Hash) }
35
-
36
- required(:consumer_group) do |val|
37
- val.is_a?(String) && Karafka::Web::Contracts::Config::TOPIC_REGEXP.match?(val)
38
- end
39
35
  end
40
36
 
41
37
  # Ensure all commanding kafka keys are symbols
@@ -35,7 +35,7 @@ module Karafka
35
35
 
36
36
  iterator = Karafka::Pro::Iterator.new(
37
37
  { t_config.consumers.commands => true },
38
- settings: c_config.kafka.merge('group.id' => c_config.consumer_group),
38
+ settings: c_config.kafka,
39
39
  yield_nil: true,
40
40
  max_wait_time: c_config.max_wait_time
41
41
  )
@@ -44,7 +44,7 @@ module Karafka
44
44
  # aware of the deserializer, etc
45
45
  def enabled
46
46
  enabled = ::Karafka::App.routes.map(&:name).include?(
47
- ::Karafka::Web.config.processing.consumer_group
47
+ ::Karafka::Web.config.group_id
48
48
  )
49
49
 
50
50
  Step.new(
@@ -3,6 +3,6 @@
3
3
  module Karafka
4
4
  module Web
5
5
  # Current gem version
6
- VERSION = '0.9.0.rc1'
6
+ VERSION = '0.9.0.rc2'
7
7
  end
8
8
  end
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.9.0.rc1
4
+ version: 0.9.0.rc2
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: 2024-04-10 00:00:00.000000000 Z
38
+ date: 2024-04-15 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: erubi
metadata.gz.sig CHANGED
Binary file