Skip to content

Releases: karafka/karafka-web

v0.10.4

26 Nov 08:27
c45a72a
Compare
Choose a tag to compare
  • [Breaking] Drop Ruby 3.0 support according to the EOL schedule.
  • [Enhancement] Extract producers tracking sync_threshold into an internal config.
  • [Enhancement] Support complex Pro license loading strategies (Pro).
  • [Enhancement] Change default retention.ms for the metrics topic to support Redpanda Cloud defaults (#450).
  • [Enhancement] Include subscription group id in the consumers error tracking metadata.
  • [Enhancement] Collect metadata details of low level client errors when error tracking.
  • [Enhancement] Collect metadata details of low level listener errors when error tracking.
  • [Fix] Toggle menu button post-turbo refresh stops working.

v0.10.3

17 Sep 07:40
68e3e25
Compare
Choose a tag to compare
  • [Feature] Introduce ability to brand Web UI with environment (Pro).
  • [Enhancement] Provide assignment status in the routing (Pro).
  • [Enhancement] Support schedule cancellation via Web UI.
  • [Enhancement] Rename "probing" to "tracing" to better reflect what this commanding option does.
  • [Fix] Fix not working primary and secondary alert styles.

v0.10.2

03 Sep 15:50
47161b8
Compare
Choose a tag to compare
  • [Feature] Support Future Messages management (Pro).
  • [Enhancement] Do not live-reload when form active.
  • [Fix] Undefined method deep_merge for an instance of Hash.
  • [Fix] Prevent live-polling on elements wrapped in a button.
  • [Fix] Fix errors extractor failure on first message-less tick / eofed

v0.10.1

23 Aug 11:25
6eca0e4
Compare
Choose a tag to compare
  • [Feature] Support Recurring Tasks management (Pro).
  • [Enhancement] Optimize command buttons so they occupy less space.
  • [Enhancement] Improve tables headers capitalization.
  • [Enhancement] Prevent live-polling when user hovers over actionable links to mitigate race conditions.
  • [Fix] Fix partial lack of tables hover in daily mode.
  • [Fix] Fix lack of tables hover in dark mode.
  • [Fix] Normalize various tables types styling.
  • [Fix] Fix ranges selectors position on wide screens.

v0.10.0

19 Aug 13:08
947ba1e
Compare
Choose a tag to compare
  • [Breaking] Rename and reorganize visibility filter to policies engine since it is not only about visibility.
  • [Feature] Replace Bootstrap with with tailwind + DaisyUI.
  • [Feature] Redesign the UI and move navigation to the left to make space for future features.
  • [Feature] Support per request policies for inspection and operations limitation.
  • [Feature] Provide Search capabilities in the Explorer (Pro).
  • [Feature] Provide dark mode.
  • [Enhancement] Set enable.partition.eof to false for Web UI consumer group as it is not needed.
  • [Enhancement] Allow for configuration of extra kafka scope options for the Web UI consumer group.
  • [Enhancement] Support Karafka #eofed consumer action.
  • [Enhancement] Provide topics watermarks inspection page (Pro).
  • [Enhancement] Use Turbo to improve usability.
  • [Enhancement] Round poll age reporting to precision of 2 reducing the payload size.
  • [Enhancement] Round utilization reporting to precision of 2 reducing the payload size.
  • [Enhancement] Validate states materialization lag in the status view.
  • [Enhancement] Promote topics data pace to OSS.
  • [Enhancement] Rename and normalize dashboard tabs.
  • [Enhancement] Enable live data polling on the first visit so it does not have to be enabled manually.
  • [Enhancement] Allow disabling ability to republish messages via policies.
  • [Enhancement] Display raw numerical timestamp alongside message time.
  • [Enhancement] Support /topics root redirect.
  • [Enhancement] Prevent explorer from displaying too big payloads (bigger than 1MB by default)
  • [Enhancement] Include deserialization object allocation stats.
  • [Enhancement] Improve how charts with many topics work.
  • [Enhancement] Count and display executed jobs independently from processed batches.
  • [Enhancement] Prevent karafka-web from being configured before karafka is configured.
  • [Enhancement] Use ostruct from RubyGems in testing.
  • [Enhancement] Indicate in the status reporting whether Karafka is OSS or Pro.
  • [Enhancement] Ship JS and CSS assets using Brotli and Gzip when possible.
  • [Enhancement] Introduce a /ux page to ease with styling improvements and components management.
  • [Enhancement] disallow usage of <script> blocks to prevent XSS.
  • [Enhancement] Display full subscription group information in the Routing view, including injectable defaults.
  • [Enhancement] Report Karafka consumer server execution mode.
  • [Enhancement] Expose sync_threshold consumer tracking config to allow aligning of error-intense applications.
  • [Refactor] Optimize subscription group data tracking flow.
  • [Refactor] Namespace migrations so migrations related to each topic data are in an independent directory.
  • [Refactor] Use errors for deny flow so request denials can occur from the inspection layer.
  • [Maintenance] Require karafka 2.4.7 due to fixes and API changes.
  • [Fix] Disallow quiet and stop commands for swarm workers.
  • [Fix] Disallow quiet and stop commands for embedded workers.
  • [Fix] Fix invalid deserialization metadata display in the per-message Explorer view.
  • [Fix] Fix a case where started page refresh would update content despite limiters being in place.
  • [Fix] Ruby 3.4.0 preview1 - No such file or directory.
  • [Fix] Fix the live poll button state flickering when disabled.
  • [Fix] Pace computation does not compensate for partial data reported.
  • [Fix] DLQ parent topics get classified as DLQ in the Web.
  • [Fix] Add missing space in the attempt label.
  • [Fix] Fix lack of highlight of "Consumers" navigation when in the "Commands" tab.
  • [Fix] Fix not working page reporting in breadcrumbs.
  • [Fix] Fix invalid redirect when trying to view particular errors partition time location.
  • [Fix] Fix several UI inconsistencies.
  • [Fix] License identifier LGPL-3.0 is deprecated for SPDX (#2177).
  • [Fix] Do not include prettifying the payload for visibility in the resource computation cost.

Upgrade Notes

This is a major release that brings many things to the table.

This version of the Karafka Web UI requires Karafka >= 2.4.7. You can either upgrade both or upgrade Karafka first and then the Web UI. Karafka 2.4.7 is also compatible with Web UI 0.9.1; thus, you can upgrade one at a time.

Configuration

Visibility Filters have been reorganized into messages policies.

Please read the Policies API documentation and convert your visibility filters to policies.

Your existing message-related visibility filter policies should now be assigned to a new configuration:

Karafka::Web.setup do |config|
  config.ui.policies.messages = MyCustomRequestsPolicy.new
end

Deployment

Because of the reporting schema update, it is recommended to:

  1. Make sure you have upgraded to 0.9.1 before and that it was fully deployed.
  2. Test the upgrade on a staging or dev environment.
  3. The Web UI interface may throw 500 errors during the upgrade because of schema incompatibility (until Puma is deployed and all consumers redeployed). This will have no long-term effects and can be ignored.
  4. Karafka::Web::Errors::Processing::IncompatibleSchemaError is expected. It is part of the Karafka Web UI zero-downtime deployment strategy. This error allows the Web UI materialization consumer to back off and wait for it to be replaced with a new one.
  5. Perform a rolling deployment (or a regular one) and replace all consumer processes.
  6. Update the Web UI Puma.
  7. No CLI command execution is required.
  8. Enjoy.

v0.10.0.rc2

14 Aug 15:56
c0dd0af
Compare
Choose a tag to compare
v0.10.0.rc2 Pre-release
Pre-release
  • [Breaking] Rename and reorganize visibility filter to policies engine since it is not only about visibility.
  • [Feature] Replace Bootstrap with with tailwind + DaisyUI.
  • [Feature] Redesign the UI and move navigation to the left to make space for future features.
  • [Feature] Support per request policies for inspection and operations limitation.
  • [Feature] Provide Search capabilities in the Explorer (Pro).
  • [Feature] Provide dark mode.
  • [Enhancement] Set enable.partition.eof to false for Web UI consumer group as it is not needed.
  • [Enhancement] Allow for configuration of extra kafka scope options for the Web UI consumer group.
  • [Enhancement] Support Karafka #eofed consumer action.
  • [Enhancement] Provide topics watermarks inspection page (Pro).
  • [Enhancement] Use Turbo to improve usability.
  • [Enhancement] Round poll age reporting to precision of 2 reducing the payload size.
  • [Enhancement] Round utilization reporting to precision of 2 reducing the payload size.
  • [Enhancement] Validate states materialization lag in the status view.
  • [Enhancement] Promote topics data pace to OSS.
  • [Enhancement] Rename and normalize dashboard tabs.
  • [Enhancement] Enable live data polling on the first visit so it does not have to be enabled manually.
  • [Enhancement] Allow disabling ability to republish messages via policies.
  • [Enhancement] Display raw numerical timestamp alongside message time.
  • [Enhancement] Support /topics root redirect.
  • [Enhancement] Prevent explorer from displaying too big payloads (bigger than 1MB by default)
  • [Enhancement] Include deserialization object allocation stats.
  • [Enhancement] Improve how charts with many topics work.
  • [Enhancement] Count and display executed jobs independently from processed batches.
  • [Enhancement] Prevent karafka-web from being configured before karafka is configured.
  • [Enhancement] Use ostruct from RubyGems in testing.
  • [Enhancement] Indicate in the status reporting whether Karafka is OSS or Pro.
  • [Enhancement] Ship JS and CSS assets using Brotli and Gzip when possible.
  • [Enhancement] Introduce a /ux page to ease with styling improvements and components management.
  • [Enhancement] disallow usage of <script> blocks to prevent XSS.
  • [Enhancement] Display full subscription group information in the Routing view, including injectable defaults.
  • [Enhancement] Report Karafka consumer server execution mode.
  • [Enhancement] Expose sync_threshold consumer tracking config to allow aligning of error-intense applications.
  • [Refactor] Optimize subscription group data tracking flow.
  • [Refactor] Namespace migrations so migrations related to each topic data are in an independent directory.
  • [Refactor] Use errors for deny flow so request denials can occur from the inspection layer.
  • [Maintenance] Require karafka 2.4.7 due to fixes and API changes.
  • [Fix] Disallow quiet and stop commands for swarm workers.
  • [Fix] Disallow quiet and stop commands for embedded workers.
  • [Fix] Fix invalid deserialization metadata display in the per-message Explorer view.
  • [Fix] Fix a case where started page refresh would update content despite limiters being in place.
  • [Fix] Ruby 3.4.0 preview1 - No such file or directory.
  • [Fix] Fix the live poll button state flickering when disabled.
  • [Fix] Pace computation does not compensate for partial data reported.
  • [Fix] DLQ parent topics get classified as DLQ in the Web.
  • [Fix] Add missing space in the attempt label.
  • [Fix] Fix lack of highlight of "Consumers" navigation when in the "Commands" tab.
  • [Fix] Fix not working page reporting in breadcrumbs.
  • [Fix] Fix invalid redirect when trying to view particular errors partition time location.
  • [Fix] Fix several UI inconsistencies.
  • [Fix] License identifier LGPL-3.0 is deprecated for SPDX (#2177).
  • [Fix] Do not include prettifying the payload for visibility in the resource computation cost.

Upgrade Notes

This is a major release that brings many things to the table.

This version of the Karafka Web UI requires Karafka >= 2.4.7. You can either upgrade both or upgrade Karafka first and then the Web UI. Karafka 2.4.7 is also compatible with Web UI 0.9.1; thus, you can upgrade one at a time.

Configuration

Visibility Filters have been reorganized into messages policies.

Please read the Policies API documentation and convert your visibility filters to policies.

Your existing message-related visibility filter policies should now be assigned to a new configuration:

Karafka::Web.setup do |config|
  config.ui.policies.messages = MyCustomRequestsPolicy.new
end

Deployment

Because of the reporting schema update, it is recommended to:

  1. Make sure you have upgraded to 0.9.1 before and that it was fully deployed.
  2. Test the upgrade on a staging or dev environment.
  3. The Web UI interface may throw 500 errors during the upgrade because of schema incompatibility (until Puma is deployed and all consumers redeployed). This will have no long-term effects and can be ignored.
  4. Karafka::Web::Errors::Processing::IncompatibleSchemaError is expected. It is part of the Karafka Web UI zero-downtime deployment strategy. This error allows the Web UI materialization consumer to back off and wait for it to be replaced with a new one.
  5. Perform a rolling deployment (or a regular one) and replace all consumer processes.
  6. Update the Web UI Puma.
  7. No CLI command execution is required.
  8. Enjoy.

v0.10.0.rc1

08 Aug 10:33
29294dc
Compare
Choose a tag to compare
v0.10.0.rc1 Pre-release
Pre-release
  • [Breaking] Rename and reorganize visibility filter to policies engine since it is not only about visibility.
  • [Feature] Replace Bootstrap with with tailwind + DaisyUI.
  • [Feature] Redesign the UI and move navigation to the left to make space for future features.
  • [Feature] Support per request policies for inspection and operations limitation.
  • [Feature] Provide Search capabilities in the Explorer (Pro).
  • [Feature] Provide dark mode.
  • [Enhancement] Support Karafka #eofed consumer action.
  • [Enhancement] Provide topics watermarks inspection page (Pro).
  • [Enhancement] Use Turbo to improve usability.
  • [Enhancement] Round poll age reporting to precision of 2 reducing the payload size.
  • [Enhancement] Round utilization reporting to precision of 2 reducing the payload size.
  • [Enhancement] Validate states materialization lag in the status view.
  • [Enhancement] Promote topics data pace to OSS.
  • [Enhancement] Rename and normalize dashboard tabs.
  • [Enhancement] Enable live data polling on the first visit so it does not have to be enabled manually.
  • [Enhancement] Allow disabling ability to republish messages via policies.
  • [Enhancement] Display raw numerical timestamp alongside message time.
  • [Enhancement] Support /topics root redirect.
  • [Enhancement] Prevent explorer from displaying too big payloads (bigger than 1MB by default)
  • [Enhancement] Include deserialization object allocation stats.
  • [Enhancement] Improve how charts with many topics work.
  • [Enhancement] Count and display executed jobs independently from processed batches.
  • [Enhancement] Prevent karafka-web from being configured before karafka is configured.
  • [Enhancement] Use ostruct from RubyGems in testing.
  • [Enhancement] Indicate in the status reporting whether Karafka is OSS or Pro.
  • [Enhancement] Ship JS and CSS assets using Brotli and Gzip when possible.
  • [Enhancement] Introduce a /ux page to ease with styling improvements and components management.
  • [Enhancement] disallow usage of <script> blocks to prevent XSS.
  • [Enhancement] Display full subscription group information in the Routing view, including injectable defaults.
  • [Enhancement] Report Karafka consumer server execution mode.
  • [Enhancement] Expose sync_threshold consumer tracking config to allow aligning of error-intense applications.
  • [Refactor] Optimize subscription group data tracking flow.
  • [Refactor] Namespace migrations so migrations related to each topic data are in an independent directory.
  • [Refactor] Use errors for deny flow so request denials can occur from the inspection layer.
  • [Maintenance] Require karafka 2.4.7 due to fixes and API changes.
  • [Fix] Disallow quiet and stop commands for swarm workers.
  • [Fix] Disallow quiet and stop commands for embedded workers.
  • [Fix] Fix invalid deserialization metadata display in the per-message Explorer view.
  • [Fix] Fix a case where started page refresh would update content despite limiters being in place.
  • [Fix] Ruby 3.4.0 preview1 - No such file or directory.
  • [Fix] Fix the live poll button state flickering when disabled.
  • [Fix] Pace computation does not compensate for partial data reported.
  • [Fix] DLQ parent topics get classified as DLQ in the Web.
  • [Fix] Add missing space in the attempt label.
  • [Fix] Fix lack of highlight of "Consumers" navigation when in the "Commands" tab.
  • [Fix] Fix not working page reporting in breadcrumbs.
  • [Fix] Fix invalid redirect when trying to view particular errors partition time location.
  • [Fix] Fix several UI inconsistencies.
  • [Fix] License identifier LGPL-3.0 is deprecated for SPDX (#2177).
  • [Fix] Do not include prettifying the payload for visibility in the resource computation cost.

Upgrade Notes

This is a major release that brings many things to the table.

This version of the Karafka Web UI requires Karafka >= 2.4.7. You can either upgrade both or upgrade Karafka first and then the Web UI. Karafka 2.4.7 is also compatible with Web UI 0.9.1; thus, you can upgrade one at a time.

Configuration

Visibility Filters have been reorganized into messages policies.

Please read the Policies API documentation and convert your visibility filters to policies.

Your existing message-related visibility filter policies should now be assigned to a new configuration:

Karafka::Web.setup do |config|
  config.ui.policies.messages = MyCustomRequestsPolicy.new
end

Deployment

Because of the reporting schema update, it is recommended to:

  1. Make sure you have upgraded to 0.9.1 before and that it was fully deployed.
  2. Test the upgrade on a staging or dev environment.
  3. The Web UI interface may throw 500 errors during the upgrade because of schema incompatibility (until Puma is deployed and all consumers redeployed). This will have no long-term effects and can be ignored.
  4. Karafka::Web::Errors::Processing::IncompatibleSchemaError is expected. It is part of the Karafka Web UI zero-downtime deployment strategy. This error allows the Web UI materialization consumer to back off and wait for it to be replaced with a new one.
  5. Perform a rolling deployment (or a regular one) and replace all consumer processes.
  6. Update the Web UI Puma.
  7. No CLI command execution is required.
  8. Enjoy.

v0.10.0.beta1

06 Aug 07:43
0267528
Compare
Choose a tag to compare
v0.10.0.beta1 Pre-release
Pre-release
  • [Breaking] Rename and reorganize visibility filter to policies engine since it is not only about visibility.
  • [Feature] Replace Bootstrap with with tailwind + DaisyUI.
  • [Feature] Redesign the UI and move navigation to the left to make space for future features.
  • [Feature] Support per request policies for inspection and operations limitation.
  • [Feature] Provide Search capabilities in the Explorer (Pro).
  • [Feature] Provide dark mode.
  • [Enhancement] Provide topics watermarks inspection page (Pro).
  • [Enhancement] Use Turbo to improve usability.
  • [Enhancement] Round poll age reporting to precision of 2 reducing the payload size.
  • [Enhancement] Round utilization reporting to precision of 2 reducing the payload size.
  • [Enhancement] Validate states materialization lag in the status view.
  • [Enhancement] Promote topics data pace to OSS.
  • [Enhancement] Rename and normalize dashboard tabs.
  • [Enhancement] Enable live data polling on the first visit so it does not have to be enabled manually.
  • [Enhancement] Allow disabling ability to republish messages via policies.
  • [Enhancement] Display raw numerical timestamp alongside message time.
  • [Enhancement] Support /topics root redirect.
  • [Enhancement] Prevent explorer from displaying too big payloads (bigger than 1MB by default)
  • [Enhancement] Include deserialization object allocation stats.
  • [Enhancement] Improve how charts with many topics work.
  • [Enhancement] Count and display executed jobs independently from processed batches.
  • [Enhancement] Prevent karafka-web from being configured before karafka is configured.
  • [Enhancement] Use ostruct from RubyGems in testing.
  • [Enhancement] Indicate in the status reporting whether Karafka is OSS or Pro.
  • [Enhancement] Ship JS and CSS assets using Brotli and Gzip when possible.
  • [Enhancement] Introduce a /ux page to ease with styling improvements and components management.
  • [Enhancement] disallow usage of <script> blocks to prevent XSS.
  • [Enhancement] Display full subscription group information in the Routing view, including injectable defaults.
  • [Enhancement] Report Karafka consumer server execution mode.
  • [Enhancement] Expose sync_threshold consumer tracking config to allow aligning of error-intense applications.
  • [Refactor] Optimize subscription group data tracking flow.
  • [Refactor] Namespace migrations so migrations related to each topic data are in an independent directory.
  • [Refactor] Use errors for deny flow so request denials can occur from the inspection layer.
  • [Maintenance] Require karafka 2.4.7 due to fixes and API changes.
  • [Fix] Disallow quiet and stop commands for swarm workers.
  • [Fix] Disallow quiet and stop commands for embedded workers.
  • [Fix] Fix invalid deserialization metadata display in the per-message Explorer view.
  • [Fix] Fix a case where started page refresh would update content despite limiters being in place.
  • [Fix] Ruby 3.4.0 preview1 - No such file or directory.
  • [Fix] Fix the live poll button state flickering when disabled.
  • [Fix] Pace computation does not compensate for partial data reported.
  • [Fix] DLQ parent topics get classified as DLQ in the Web.
  • [Fix] Add missing space in the attempt label.
  • [Fix] Fix lack of highlight of "Consumers" navigation when in the "Commands" tab.
  • [Fix] Fix not working page reporting in breadcrumbs.
  • [Fix] Fix invalid redirect when trying to view particular errors partition time location.
  • [Fix] Fix several UI inconsistencies.
  • [Fix] License identifier LGPL-3.0 is deprecated for SPDX (#2177).
  • [Fix] Do not include prettifying the payload for visibility in the resource computation cost.

v0.9.1

03 May 16:25
0b7a03e
Compare
Choose a tag to compare
  • [Fix] OSS lag_stored for not-subscribed consumers causes Web UI to crash.

v0.9.0

03 May 16:24
ed43d65
Compare
Choose a tag to compare
  • [Breaking] Drop Ruby 2.7 support.
  • [Feature] Provide ability to stop and quiet running consumers (Pro).
  • [Feature] Provide ability to probe (get backtraces) of any running consumer (Pro).
  • [Feature] Provide cluster lags in Health (Pro).
  • [Feature] Provide ability to inspect cluster nodes configuration (Pro).
  • [Feature] Provide ability to inspect cluster topics configuration (Pro).
  • [Feature] Provide messages distribution graph statistics for topics (Pro).
  • [Enhancement] Provide first offset in the OSS jobs tab.
  • [Enhancement] Support failover for custom deserialization of headers and key in the explorer (Pro).
  • [Enhancement] Support failover for custom deserialization of headers and key in the explorer (Pro).
  • [Enhancement] Limit length of key presented in the list view of the explorer.
  • [Enhancement] Improve responsiveness on big screens by increasing max width.
  • [Enhancement] Auto-qualify topics with dlq/dead_letter case insensitive name components to DLQ view.
  • [Enhancement] Make tables responsive.
  • [Enhancement] Provide page titles for ease of navigation.
  • [Change] Rename Cluster => Topics to Cluster => Replication to better align with what is shows.
  • [Change] Make support messages more entertaining.
  • [Change] Rename processing.consumer_group to admin.group_id for consistency with Karafka.
  • [Refactor] Normalize what is process name and process id.
  • [Refactor] Create one pro/ namespace for all Web related sub-modules.
  • [Refactor] Extract alerts into a common component.
  • [Refactor] Generalize charts generation.
  • [Fix] Fix invalid return when paginating with offsets.
  • [Fix] Improve responsiveness of summary in the consumers view for lower resolutions.
  • [Fix] Align pages titles format.
  • [Fix] Fix missing link from lag counter to Health.
  • [Fix] Fix a case where on mobile charts would not load correctly.
  • [Fix] Fix cases where long consumer names would break UI.
  • [Fix] Explorer deserializer wrongly selected for pattern matched topics.
  • [Fix] Fix 404 error page invalid recommendation of install instead of migrate.
  • [Fix] Fix dangling console.log.
  • [Fix] Fix a case where consumer assignments would not be truncated on the consumers view.