karafka-web 0.11.5 → 0.11.6

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.
Files changed (517) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/Gemfile +9 -10
  4. data/Gemfile.lint +14 -0
  5. data/Gemfile.lint.lock +123 -0
  6. data/Gemfile.lock +15 -16
  7. data/README.md +15 -15
  8. data/Rakefile +2 -2
  9. data/bin/balance_specs +120 -0
  10. data/bin/check_coverage +31 -0
  11. data/bin/collect_timings +83 -0
  12. data/bin/rspecs +10 -0
  13. data/bin/rspecs_parallel +111 -0
  14. data/docker-compose.yml +1 -1
  15. data/karafka-web.gemspec +35 -35
  16. data/lib/karafka/web/cli/base.rb +2 -2
  17. data/lib/karafka/web/cli/help.rb +2 -2
  18. data/lib/karafka/web/cli/install.rb +3 -3
  19. data/lib/karafka/web/cli/migrate.rb +3 -3
  20. data/lib/karafka/web/cli/reset.rb +3 -3
  21. data/lib/karafka/web/cli/uninstall.rb +1 -1
  22. data/lib/karafka/web/config.rb +40 -32
  23. data/lib/karafka/web/contracts/base.rb +2 -2
  24. data/lib/karafka/web/deserializer.rb +5 -5
  25. data/lib/karafka/web/installer.rb +14 -14
  26. data/lib/karafka/web/management/actions/base.rb +5 -5
  27. data/lib/karafka/web/management/actions/clean_boot_file.rb +3 -3
  28. data/lib/karafka/web/management/actions/create_initial_states.rb +8 -8
  29. data/lib/karafka/web/management/actions/enable.rb +3 -3
  30. data/lib/karafka/web/management/actions/extend_boot_file.rb +3 -3
  31. data/lib/karafka/web/management/migrations/base.rb +3 -3
  32. data/lib/karafka/web/management/migrations/consumers_metrics/0_set_initial.rb +1 -1
  33. data/lib/karafka/web/management/migrations/consumers_metrics/1699543515_fill_missing_received_and_sent_bytes.rb +1 -1
  34. data/lib/karafka/web/management/migrations/consumers_metrics/1700234522_introduce_waiting.rb +1 -1
  35. data/lib/karafka/web/management/migrations/consumers_metrics/1700234522_remove_processing.rb +1 -1
  36. data/lib/karafka/web/management/migrations/consumers_metrics/1704722380_split_listeners_into_active_and_paused.rb +7 -7
  37. data/lib/karafka/web/management/migrations/consumers_metrics/1706607960_introduce_lag_total.rb +1 -1
  38. data/lib/karafka/web/management/migrations/consumers_metrics/1706611396_rename_lag_total_to_lag_hybrid.rb +1 -1
  39. data/lib/karafka/web/management/migrations/consumers_metrics/1716218393_populate_jobs_metrics.rb +1 -1
  40. data/lib/karafka/web/management/migrations/consumers_reports/1761645571_rename_process_name_to_id.rb +1 -1
  41. data/lib/karafka/web/management/migrations/consumers_reports/1765657887_add_group_instance_id_to_subscription_groups.rb +42 -0
  42. data/lib/karafka/web/management/migrations/consumers_states/0_set_initial.rb +2 -2
  43. data/lib/karafka/web/management/migrations/consumers_states/1699543515_fill_missing_received_and_sent_bytes.rb +1 -1
  44. data/lib/karafka/web/management/migrations/consumers_states/1700234522_introduce_waiting.rb +1 -1
  45. data/lib/karafka/web/management/migrations/consumers_states/1700234522_remove_processing.rb +1 -1
  46. data/lib/karafka/web/management/migrations/consumers_states/1704722380_split_listeners_into_active_and_paused.rb +7 -7
  47. data/lib/karafka/web/management/migrations/consumers_states/1706607960_introduce_lag_total.rb +1 -1
  48. data/lib/karafka/web/management/migrations/consumers_states/1706611396_rename_lag_total_to_lag_hybrid.rb +1 -1
  49. data/lib/karafka/web/management/migrations/consumers_states/1716218393_add_jobs_counter.rb +1 -1
  50. data/lib/karafka/web/management/migrator.rb +2 -2
  51. data/lib/karafka/web/pro/commanding/commands/base.rb +20 -4
  52. data/lib/karafka/web/pro/commanding/commands/consumers/quiet.rb +22 -5
  53. data/lib/karafka/web/pro/commanding/commands/consumers/stop.rb +22 -5
  54. data/lib/karafka/web/pro/commanding/commands/consumers/trace.rb +21 -4
  55. data/lib/karafka/web/pro/commanding/commands/partitions/pause.rb +20 -3
  56. data/lib/karafka/web/pro/commanding/commands/partitions/resume.rb +20 -3
  57. data/lib/karafka/web/pro/commanding/commands/partitions/seek.rb +20 -3
  58. data/lib/karafka/web/pro/commanding/commands/topics/pause.rb +48 -0
  59. data/lib/karafka/web/pro/commanding/commands/topics/resume.rb +49 -0
  60. data/lib/karafka/web/pro/commanding/config.rb +23 -5
  61. data/lib/karafka/web/pro/commanding/contracts/config.rb +21 -4
  62. data/lib/karafka/web/pro/commanding/dispatcher.rb +61 -26
  63. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/base.rb +20 -3
  64. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/pause.rb +21 -4
  65. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/resume.rb +20 -3
  66. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/seek.rb +24 -7
  67. data/lib/karafka/web/pro/commanding/handlers/partitions/executor.rb +36 -12
  68. data/lib/karafka/web/pro/commanding/handlers/partitions/listener.rb +47 -8
  69. data/lib/karafka/web/pro/commanding/handlers/partitions/tracker.rb +62 -13
  70. data/lib/karafka/web/pro/commanding/handlers/topics/commands/base.rb +109 -0
  71. data/lib/karafka/web/pro/commanding/handlers/topics/commands/pause.rb +76 -0
  72. data/lib/karafka/web/pro/commanding/handlers/topics/commands/resume.rb +56 -0
  73. data/lib/karafka/web/pro/commanding/handlers/topics/executor.rb +75 -0
  74. data/lib/karafka/web/pro/commanding/handlers/topics/listener.rb +82 -0
  75. data/lib/karafka/web/pro/commanding/handlers/topics/tracker.rb +81 -0
  76. data/lib/karafka/web/pro/commanding/listener.rb +23 -6
  77. data/lib/karafka/web/pro/commanding/manager.rb +44 -23
  78. data/lib/karafka/web/pro/commanding/matcher.rb +46 -18
  79. data/lib/karafka/web/pro/commanding/matchers/base.rb +87 -0
  80. data/lib/karafka/web/pro/commanding/matchers/consumer_group_id.rb +58 -0
  81. data/lib/karafka/web/pro/commanding/matchers/message_type.rb +49 -0
  82. data/lib/karafka/web/pro/commanding/matchers/partition_id.rb +61 -0
  83. data/lib/karafka/web/pro/commanding/matchers/process_id.rb +58 -0
  84. data/lib/karafka/web/pro/commanding/matchers/schema_version.rb +44 -0
  85. data/lib/karafka/web/pro/commanding/matchers/topic.rb +58 -0
  86. data/lib/karafka/web/pro/commanding/request.rb +19 -2
  87. data/lib/karafka/web/pro/commanding.rb +19 -2
  88. data/lib/karafka/web/pro/loader.rb +20 -3
  89. data/lib/karafka/web/pro/ui/app.rb +25 -8
  90. data/lib/karafka/web/pro/ui/controllers/base_controller.rb +19 -2
  91. data/lib/karafka/web/pro/ui/controllers/cluster_controller.rb +19 -2
  92. data/lib/karafka/web/pro/ui/controllers/consumers/base_controller.rb +19 -2
  93. data/lib/karafka/web/pro/ui/controllers/consumers/commanding_controller.rb +37 -15
  94. data/lib/karafka/web/pro/ui/controllers/consumers/commands_controller.rb +23 -6
  95. data/lib/karafka/web/pro/ui/controllers/consumers/consumers_controller.rb +19 -2
  96. data/lib/karafka/web/pro/ui/controllers/consumers/controls_controller.rb +19 -2
  97. data/lib/karafka/web/pro/ui/controllers/consumers/jobs_controller.rb +19 -2
  98. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/base_controller.rb +43 -42
  99. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/offsets_controller.rb +36 -17
  100. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/pauses_controller.rb +59 -33
  101. data/lib/karafka/web/pro/ui/controllers/consumers/topics/pauses_controller.rb +164 -0
  102. data/lib/karafka/web/pro/ui/controllers/dashboard_controller.rb +19 -2
  103. data/lib/karafka/web/pro/ui/controllers/dlq_controller.rb +26 -9
  104. data/lib/karafka/web/pro/ui/controllers/errors_controller.rb +25 -9
  105. data/lib/karafka/web/pro/ui/controllers/explorer/base_controller.rb +19 -2
  106. data/lib/karafka/web/pro/ui/controllers/explorer/explorer_controller.rb +22 -5
  107. data/lib/karafka/web/pro/ui/controllers/explorer/messages_controller.rb +26 -9
  108. data/lib/karafka/web/pro/ui/controllers/explorer/search_controller.rb +23 -6
  109. data/lib/karafka/web/pro/ui/controllers/health_controller.rb +19 -2
  110. data/lib/karafka/web/pro/ui/controllers/jobs_controller.rb +19 -2
  111. data/lib/karafka/web/pro/ui/controllers/recurring_tasks_controller.rb +22 -5
  112. data/lib/karafka/web/pro/ui/controllers/routing_controller.rb +19 -2
  113. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/base_controller.rb +19 -2
  114. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/explorer_controller.rb +25 -8
  115. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/messages_controller.rb +21 -4
  116. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/schedules_controller.rb +26 -9
  117. data/lib/karafka/web/pro/ui/controllers/status_controller.rb +19 -2
  118. data/lib/karafka/web/pro/ui/controllers/support_controller.rb +19 -2
  119. data/lib/karafka/web/pro/ui/controllers/topics/base_controller.rb +19 -2
  120. data/lib/karafka/web/pro/ui/controllers/topics/configs_controller.rb +20 -3
  121. data/lib/karafka/web/pro/ui/controllers/topics/distributions_controller.rb +20 -3
  122. data/lib/karafka/web/pro/ui/controllers/topics/offsets_controller.rb +19 -2
  123. data/lib/karafka/web/pro/ui/controllers/topics/replications_controller.rb +41 -2
  124. data/lib/karafka/web/pro/ui/controllers/topics/topics_controller.rb +24 -7
  125. data/lib/karafka/web/pro/ui/controllers/ux_controller.rb +19 -2
  126. data/lib/karafka/web/pro/ui/lib/branding/config.rb +19 -2
  127. data/lib/karafka/web/pro/ui/lib/branding/contracts/config.rb +21 -4
  128. data/lib/karafka/web/pro/ui/lib/branding.rb +19 -2
  129. data/lib/karafka/web/pro/ui/lib/features.rb +19 -2
  130. data/lib/karafka/web/pro/ui/lib/patterns_detector.rb +19 -2
  131. data/lib/karafka/web/pro/ui/lib/policies/config.rb +19 -2
  132. data/lib/karafka/web/pro/ui/lib/policies/contracts/config.rb +21 -4
  133. data/lib/karafka/web/pro/ui/lib/policies/messages.rb +20 -3
  134. data/lib/karafka/web/pro/ui/lib/policies/requests.rb +19 -2
  135. data/lib/karafka/web/pro/ui/lib/policies.rb +19 -2
  136. data/lib/karafka/web/pro/ui/lib/safe_runner.rb +20 -3
  137. data/lib/karafka/web/pro/ui/lib/search/config.rb +19 -2
  138. data/lib/karafka/web/pro/ui/lib/search/contracts/config.rb +21 -4
  139. data/lib/karafka/web/pro/ui/lib/search/contracts/form.rb +24 -6
  140. data/lib/karafka/web/pro/ui/lib/search/matchers/base.rb +21 -4
  141. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_header_includes.rb +19 -2
  142. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_key_includes.rb +19 -2
  143. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_payload_includes.rb +20 -3
  144. data/lib/karafka/web/pro/ui/lib/search/normalizer.rb +26 -9
  145. data/lib/karafka/web/pro/ui/lib/search/runner.rb +33 -16
  146. data/lib/karafka/web/pro/ui/lib/search.rb +19 -2
  147. data/lib/karafka/web/pro/ui/routes/base.rb +19 -2
  148. data/lib/karafka/web/pro/ui/routes/cluster.rb +21 -4
  149. data/lib/karafka/web/pro/ui/routes/consumers.rb +83 -49
  150. data/lib/karafka/web/pro/ui/routes/dashboard.rb +20 -3
  151. data/lib/karafka/web/pro/ui/routes/dlq.rb +20 -3
  152. data/lib/karafka/web/pro/ui/routes/errors.rb +21 -4
  153. data/lib/karafka/web/pro/ui/routes/explorer.rb +33 -16
  154. data/lib/karafka/web/pro/ui/routes/health.rb +26 -9
  155. data/lib/karafka/web/pro/ui/routes/jobs.rb +23 -6
  156. data/lib/karafka/web/pro/ui/routes/recurring_tasks.rb +29 -12
  157. data/lib/karafka/web/pro/ui/routes/routing.rb +20 -3
  158. data/lib/karafka/web/pro/ui/routes/scheduled_messages.rb +28 -11
  159. data/lib/karafka/web/pro/ui/routes/status.rb +20 -3
  160. data/lib/karafka/web/pro/ui/routes/support.rb +20 -3
  161. data/lib/karafka/web/pro/ui/routes/topics.rb +29 -12
  162. data/lib/karafka/web/pro/ui/routes/ux.rb +20 -3
  163. data/lib/karafka/web/pro/ui/views/cluster/_breadcrumbs.erb +13 -2
  164. data/lib/karafka/web/pro/ui/views/cluster/_broker.erb +13 -2
  165. data/lib/karafka/web/pro/ui/views/cluster/_config.erb +14 -3
  166. data/lib/karafka/web/pro/ui/views/cluster/_tabs.erb +13 -2
  167. data/lib/karafka/web/pro/ui/views/cluster/index.erb +13 -2
  168. data/lib/karafka/web/pro/ui/views/cluster/show.erb +13 -2
  169. data/lib/karafka/web/pro/ui/views/consumers/commands/_backtrace.erb +13 -2
  170. data/lib/karafka/web/pro/ui/views/consumers/commands/_breadcrumbs.erb +13 -2
  171. data/lib/karafka/web/pro/ui/views/consumers/commands/_command.erb +24 -66
  172. data/lib/karafka/web/pro/ui/views/consumers/commands/_command_details.erb +13 -2
  173. data/lib/karafka/web/pro/ui/views/consumers/commands/_empty.erb +13 -2
  174. data/lib/karafka/web/pro/ui/views/consumers/commands/_incompatible_command.erb +19 -0
  175. data/lib/karafka/web/pro/ui/views/consumers/commands/_incompatible_schema.erb +13 -2
  176. data/lib/karafka/web/pro/ui/views/consumers/commands/_table.erb +15 -4
  177. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_acceptance.erb +19 -0
  178. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_request.erb +19 -0
  179. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_result.erb +27 -0
  180. data/lib/karafka/web/pro/ui/views/consumers/commands/index.erb +13 -2
  181. data/lib/karafka/web/pro/ui/views/consumers/commands/metadata/_request.erb +52 -0
  182. data/lib/karafka/web/pro/ui/views/consumers/commands/metadata/_response.erb +46 -0
  183. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_command_name_badge.erb +40 -0
  184. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_request.erb +47 -0
  185. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_response.erb +46 -0
  186. data/lib/karafka/web/pro/ui/views/consumers/commands/show.erb +14 -15
  187. data/lib/karafka/web/pro/ui/views/consumers/consumers/_breadcrumbs.erb +13 -2
  188. data/lib/karafka/web/pro/ui/views/consumers/consumers/_consumer.erb +13 -2
  189. data/lib/karafka/web/pro/ui/views/consumers/consumers/_consumer_performance.erb +13 -2
  190. data/lib/karafka/web/pro/ui/views/consumers/consumers/_tabs.erb +13 -2
  191. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_commands.erb +13 -2
  192. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_consumer_group.erb +13 -2
  193. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_metrics.erb +13 -2
  194. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_no_subscriptions.erb +13 -2
  195. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_partition.erb +15 -5
  196. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_partition_edit_options.erb +16 -5
  197. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_stopped.erb +13 -2
  198. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_subscription_group.erb +31 -7
  199. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_tabs.erb +13 -2
  200. data/lib/karafka/web/pro/ui/views/consumers/consumers/details.erb +13 -2
  201. data/lib/karafka/web/pro/ui/views/consumers/consumers/index.erb +13 -2
  202. data/lib/karafka/web/pro/ui/views/consumers/consumers/performance.erb +13 -2
  203. data/lib/karafka/web/pro/ui/views/consumers/consumers/subscriptions.erb +13 -2
  204. data/lib/karafka/web/pro/ui/views/consumers/controls/_breadcrumbs.erb +13 -2
  205. data/lib/karafka/web/pro/ui/views/consumers/controls/_controls.erb +14 -3
  206. data/lib/karafka/web/pro/ui/views/consumers/controls/index.erb +35 -7
  207. data/lib/karafka/web/pro/ui/views/consumers/jobs/_breadcrumbs.erb +13 -2
  208. data/lib/karafka/web/pro/ui/views/consumers/jobs/_job.erb +14 -3
  209. data/lib/karafka/web/pro/ui/views/consumers/jobs/_no_jobs.erb +13 -2
  210. data/lib/karafka/web/pro/ui/views/consumers/jobs/pending.erb +13 -2
  211. data/lib/karafka/web/pro/ui/views/consumers/jobs/running.erb +13 -2
  212. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_basics.erb +20 -13
  213. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_breadcrumbs.erb +37 -46
  214. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_form.erb +25 -14
  215. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_not_running_error.erb +13 -2
  216. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_running_warning.erb +13 -2
  217. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/edit.erb +17 -6
  218. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_active_not_editable.erb +13 -2
  219. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_adjusting_warning.erb +14 -3
  220. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_breadcrumbs.erb +40 -48
  221. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_edit_form.erb +18 -8
  222. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_lrj_not_manageable.erb +13 -2
  223. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_new_form.erb +22 -11
  224. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_not_running.erb +13 -2
  225. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_partition_info.erb +57 -0
  226. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/edit.erb +16 -5
  227. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/new.erb +16 -5
  228. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_adjusting_warning.erb +38 -0
  229. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_breadcrumbs.erb +46 -0
  230. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_edit_form.erb +66 -0
  231. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_lrj_not_manageable.erb +30 -0
  232. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_new_form.erb +86 -0
  233. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_not_running.erb +27 -0
  234. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_topic_info.erb +72 -0
  235. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/edit.erb +29 -0
  236. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/new.erb +29 -0
  237. data/lib/karafka/web/pro/ui/views/dashboard/index.erb +13 -2
  238. data/lib/karafka/web/pro/ui/views/dlq/_breadcrumbs.erb +13 -2
  239. data/lib/karafka/web/pro/ui/views/dlq/_no_topics.erb +13 -2
  240. data/lib/karafka/web/pro/ui/views/dlq/_topic.erb +13 -2
  241. data/lib/karafka/web/pro/ui/views/dlq/index.erb +13 -2
  242. data/lib/karafka/web/pro/ui/views/errors/_breadcrumbs.erb +13 -2
  243. data/lib/karafka/web/pro/ui/views/errors/_error.erb +14 -3
  244. data/lib/karafka/web/pro/ui/views/errors/_partition_option.erb +18 -5
  245. data/lib/karafka/web/pro/ui/views/errors/_selector.erb +14 -3
  246. data/lib/karafka/web/pro/ui/views/errors/_table.erb +14 -3
  247. data/lib/karafka/web/pro/ui/views/errors/index.erb +39 -26
  248. data/lib/karafka/web/pro/ui/views/errors/partition.erb +50 -37
  249. data/lib/karafka/web/pro/ui/views/errors/show.erb +14 -3
  250. data/lib/karafka/web/pro/ui/views/explorer/explorer/_breadcrumbs.erb +13 -2
  251. data/lib/karafka/web/pro/ui/views/explorer/explorer/_failed_deserialization.erb +13 -2
  252. data/lib/karafka/web/pro/ui/views/explorer/explorer/_filtered.erb +13 -2
  253. data/lib/karafka/web/pro/ui/views/explorer/explorer/_message.erb +14 -3
  254. data/lib/karafka/web/pro/ui/views/explorer/explorer/_no_topics.erb +13 -2
  255. data/lib/karafka/web/pro/ui/views/explorer/explorer/_partition_option.erb +18 -5
  256. data/lib/karafka/web/pro/ui/views/explorer/explorer/_selector.erb +14 -3
  257. data/lib/karafka/web/pro/ui/views/explorer/explorer/_topic.erb +13 -2
  258. data/lib/karafka/web/pro/ui/views/explorer/explorer/index.erb +13 -2
  259. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_metadata.erb +13 -2
  260. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_payload.erb +13 -2
  261. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_resources_utilization.erb +13 -2
  262. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_too_big_to_be_displayed.erb +15 -4
  263. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_detail.erb +13 -2
  264. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_headers.erb +13 -2
  265. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_key.erb +13 -2
  266. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_cleaned.erb +13 -2
  267. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_empty.erb +13 -2
  268. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_messages.erb +14 -3
  269. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_time_selector.erb +14 -3
  270. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_timestamp_selector.erb +15 -3
  271. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition.erb +52 -39
  272. data/lib/karafka/web/pro/ui/views/explorer/explorer/show.erb +13 -2
  273. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_actions.erb +39 -26
  274. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_empty.erb +13 -2
  275. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_limited.erb +13 -2
  276. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic.erb +13 -2
  277. data/lib/karafka/web/pro/ui/views/explorer/messages/_breadcrumbs.erb +13 -2
  278. data/lib/karafka/web/pro/ui/views/explorer/messages/forward.erb +28 -16
  279. data/lib/karafka/web/pro/ui/views/explorer/search/_breadcrumbs.erb +13 -2
  280. data/lib/karafka/web/pro/ui/views/explorer/search/_fix_errors.erb +13 -2
  281. data/lib/karafka/web/pro/ui/views/explorer/search/_metadata.erb +13 -2
  282. data/lib/karafka/web/pro/ui/views/explorer/search/_no_results.erb +13 -2
  283. data/lib/karafka/web/pro/ui/views/explorer/search/_no_search_criteria.erb +13 -2
  284. data/lib/karafka/web/pro/ui/views/explorer/search/_search_criteria.erb +14 -3
  285. data/lib/karafka/web/pro/ui/views/explorer/search/_search_modal.erb +27 -15
  286. data/lib/karafka/web/pro/ui/views/explorer/search/_timeout.erb +13 -2
  287. data/lib/karafka/web/pro/ui/views/explorer/search/index.erb +13 -2
  288. data/lib/karafka/web/pro/ui/views/health/_breadcrumbs.erb +13 -2
  289. data/lib/karafka/web/pro/ui/views/health/_no_data.erb +13 -2
  290. data/lib/karafka/web/pro/ui/views/health/_no_partition_data.erb +13 -2
  291. data/lib/karafka/web/pro/ui/views/health/_partition.erb +22 -6
  292. data/lib/karafka/web/pro/ui/views/health/_partition_lags.erb +13 -2
  293. data/lib/karafka/web/pro/ui/views/health/_partition_offset.erb +13 -2
  294. data/lib/karafka/web/pro/ui/views/health/_partition_times.erb +13 -2
  295. data/lib/karafka/web/pro/ui/views/health/_partitions_with_fallback.erb +15 -2
  296. data/lib/karafka/web/pro/ui/views/health/_table_metadata.erb +13 -2
  297. data/lib/karafka/web/pro/ui/views/health/_tabs.erb +13 -2
  298. data/lib/karafka/web/pro/ui/views/health/_topic_edit_options.erb +64 -0
  299. data/lib/karafka/web/pro/ui/views/health/changes.erb +14 -2
  300. data/lib/karafka/web/pro/ui/views/health/cluster_lags.erb +13 -2
  301. data/lib/karafka/web/pro/ui/views/health/lags.erb +14 -2
  302. data/lib/karafka/web/pro/ui/views/health/offsets.erb +14 -2
  303. data/lib/karafka/web/pro/ui/views/health/overview.erb +29 -5
  304. data/lib/karafka/web/pro/ui/views/jobs/_job.erb +14 -3
  305. data/lib/karafka/web/pro/ui/views/jobs/_no_jobs.erb +13 -2
  306. data/lib/karafka/web/pro/ui/views/jobs/pending.erb +13 -2
  307. data/lib/karafka/web/pro/ui/views/jobs/running.erb +13 -2
  308. data/lib/karafka/web/pro/ui/views/recurring_tasks/_actions.erb +13 -2
  309. data/lib/karafka/web/pro/ui/views/recurring_tasks/_batch_actions.erb +13 -2
  310. data/lib/karafka/web/pro/ui/views/recurring_tasks/_breadcrumbs.erb +13 -2
  311. data/lib/karafka/web/pro/ui/views/recurring_tasks/_log.erb +13 -2
  312. data/lib/karafka/web/pro/ui/views/recurring_tasks/_not_active.erb +13 -2
  313. data/lib/karafka/web/pro/ui/views/recurring_tasks/_tabs.erb +13 -2
  314. data/lib/karafka/web/pro/ui/views/recurring_tasks/_task.erb +14 -3
  315. data/lib/karafka/web/pro/ui/views/recurring_tasks/logs.erb +13 -2
  316. data/lib/karafka/web/pro/ui/views/recurring_tasks/schedule.erb +14 -3
  317. data/lib/karafka/web/pro/ui/views/routing/_consumer_group.erb +14 -3
  318. data/lib/karafka/web/pro/ui/views/routing/_detail.erb +13 -2
  319. data/lib/karafka/web/pro/ui/views/routing/_topic.erb +14 -3
  320. data/lib/karafka/web/pro/ui/views/routing/index.erb +13 -2
  321. data/lib/karafka/web/pro/ui/views/routing/show.erb +13 -2
  322. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_breadcrumbs.erb +13 -2
  323. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_key.erb +13 -2
  324. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_message.erb +13 -2
  325. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_messages.erb +14 -3
  326. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_cancel.erb +14 -3
  327. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_compacted.erb +13 -2
  328. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_schedule.erb +14 -3
  329. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_tombstone.erb +14 -3
  330. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_unknown.erb +14 -3
  331. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/partition.erb +52 -39
  332. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/topic.erb +13 -2
  333. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/_breadcrumbs.erb +13 -2
  334. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/_no_groups.erb +13 -2
  335. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/index.erb +13 -2
  336. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/show.erb +14 -3
  337. data/lib/karafka/web/pro/ui/views/shared/_navigation.erb +14 -3
  338. data/lib/karafka/web/pro/ui/views/shared/_rdkafka_form_error_alert_box.erb +13 -2
  339. data/lib/karafka/web/pro/ui/views/shared/branding/_label.erb +13 -2
  340. data/lib/karafka/web/pro/ui/views/shared/branding/_notice.erb +13 -2
  341. data/lib/karafka/web/pro/ui/views/topics/configs/_breadcrumbs.erb +13 -2
  342. data/lib/karafka/web/pro/ui/views/topics/configs/_config.erb +14 -3
  343. data/lib/karafka/web/pro/ui/views/topics/configs/_delete_button.erb +13 -2
  344. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_form.erb +17 -6
  345. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_plan.erb +13 -2
  346. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_warning.erb +13 -2
  347. data/lib/karafka/web/pro/ui/views/topics/configs/edit.erb +21 -10
  348. data/lib/karafka/web/pro/ui/views/topics/configs/index.erb +14 -3
  349. data/lib/karafka/web/pro/ui/views/topics/distributions/_add_partitions_button.erb +13 -2
  350. data/lib/karafka/web/pro/ui/views/topics/distributions/_badges.erb +13 -2
  351. data/lib/karafka/web/pro/ui/views/topics/distributions/_breadcrumbs.erb +13 -2
  352. data/lib/karafka/web/pro/ui/views/topics/distributions/_chart.erb +13 -2
  353. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_form.erb +18 -6
  354. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_hints.erb +13 -2
  355. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_warnings.erb +13 -2
  356. data/lib/karafka/web/pro/ui/views/topics/distributions/_empty_partitions.erb +13 -2
  357. data/lib/karafka/web/pro/ui/views/topics/distributions/_limited.erb +13 -2
  358. data/lib/karafka/web/pro/ui/views/topics/distributions/_partition.erb +13 -2
  359. data/lib/karafka/web/pro/ui/views/topics/distributions/edit.erb +13 -2
  360. data/lib/karafka/web/pro/ui/views/topics/distributions/show.erb +13 -2
  361. data/lib/karafka/web/pro/ui/views/topics/offsets/_breadcrumbs.erb +13 -2
  362. data/lib/karafka/web/pro/ui/views/topics/offsets/_partition.erb +13 -2
  363. data/lib/karafka/web/pro/ui/views/topics/offsets/show.erb +13 -2
  364. data/lib/karafka/web/pro/ui/views/topics/replications/_breadcrumbs.erb +13 -2
  365. data/lib/karafka/web/pro/ui/views/topics/replications/_metric_box.erb +20 -0
  366. data/lib/karafka/web/pro/ui/views/topics/replications/_partition.erb +13 -2
  367. data/lib/karafka/web/pro/ui/views/topics/replications/_replication_info.erb +65 -0
  368. data/lib/karafka/web/pro/ui/views/topics/replications/_resilience_success.erb +24 -0
  369. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_low_durability.erb +67 -0
  370. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_no_redundancy.erb +66 -0
  371. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_zero_fault_tolerance.erb +67 -0
  372. data/lib/karafka/web/pro/ui/views/topics/replications/show.erb +15 -2
  373. data/lib/karafka/web/pro/ui/views/topics/topics/_breadcrumbs.erb +13 -2
  374. data/lib/karafka/web/pro/ui/views/topics/topics/_create_button.erb +13 -2
  375. data/lib/karafka/web/pro/ui/views/topics/topics/_create_hints.erb +13 -2
  376. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_form.erb +13 -2
  377. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_hints.erb +13 -2
  378. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_warning.erb +13 -2
  379. data/lib/karafka/web/pro/ui/views/topics/topics/_new_form.erb +25 -11
  380. data/lib/karafka/web/pro/ui/views/topics/topics/_tabs.erb +13 -2
  381. data/lib/karafka/web/pro/ui/views/topics/topics/_topic.erb +13 -2
  382. data/lib/karafka/web/pro/ui/views/topics/topics/edit.erb +13 -2
  383. data/lib/karafka/web/pro/ui/views/topics/topics/index.erb +13 -2
  384. data/lib/karafka/web/pro/ui/views/topics/topics/new.erb +13 -2
  385. data/lib/karafka/web/processing/consumer.rb +1 -1
  386. data/lib/karafka/web/processing/consumers/aggregators/metrics.rb +11 -11
  387. data/lib/karafka/web/processing/consumers/aggregators/state.rb +4 -3
  388. data/lib/karafka/web/processing/consumers/reports_migrator.rb +2 -2
  389. data/lib/karafka/web/processing/consumers/schema_manager.rb +1 -1
  390. data/lib/karafka/web/processing/publisher.rb +2 -2
  391. data/lib/karafka/web/producer.rb +61 -0
  392. data/lib/karafka/web/tracking/consumers/contracts/report.rb +2 -2
  393. data/lib/karafka/web/tracking/consumers/contracts/subscription_group.rb +1 -0
  394. data/lib/karafka/web/tracking/consumers/listeners/booting.rb +1 -1
  395. data/lib/karafka/web/tracking/consumers/listeners/connections.rb +7 -2
  396. data/lib/karafka/web/tracking/consumers/listeners/errors.rb +10 -10
  397. data/lib/karafka/web/tracking/consumers/listeners/pausing.rb +1 -1
  398. data/lib/karafka/web/tracking/consumers/listeners/processing.rb +25 -25
  399. data/lib/karafka/web/tracking/consumers/listeners/statistics.rb +35 -35
  400. data/lib/karafka/web/tracking/consumers/reporter.rb +2 -2
  401. data/lib/karafka/web/tracking/consumers/sampler/enrichers/consumer_groups.rb +1 -0
  402. data/lib/karafka/web/tracking/consumers/sampler/metrics/base.rb +2 -1
  403. data/lib/karafka/web/tracking/consumers/sampler/metrics/container.rb +15 -15
  404. data/lib/karafka/web/tracking/consumers/sampler/metrics/network.rb +6 -6
  405. data/lib/karafka/web/tracking/consumers/sampler/metrics/os.rb +41 -37
  406. data/lib/karafka/web/tracking/consumers/sampler.rb +7 -7
  407. data/lib/karafka/web/tracking/helpers/error_info.rb +10 -10
  408. data/lib/karafka/web/tracking/helpers/sysconf.rb +2 -2
  409. data/lib/karafka/web/tracking/helpers/ttls/array.rb +1 -1
  410. data/lib/karafka/web/tracking/helpers/ttls/hash.rb +1 -1
  411. data/lib/karafka/web/tracking/helpers/ttls/stats.rb +4 -4
  412. data/lib/karafka/web/tracking/producers/listeners/booting.rb +1 -1
  413. data/lib/karafka/web/tracking/producers/listeners/errors.rb +2 -2
  414. data/lib/karafka/web/tracking/producers/reporter.rb +2 -2
  415. data/lib/karafka/web/tracking/producers/sampler.rb +1 -1
  416. data/lib/karafka/web/tracking/ui/errors.rb +4 -4
  417. data/lib/karafka/web/ui/app.rb +2 -2
  418. data/lib/karafka/web/ui/base.rb +30 -30
  419. data/lib/karafka/web/ui/controllers/base_controller.rb +24 -24
  420. data/lib/karafka/web/ui/controllers/cluster_controller.rb +3 -3
  421. data/lib/karafka/web/ui/controllers/requests/params.rb +6 -6
  422. data/lib/karafka/web/ui/helpers/application_helper.rb +59 -59
  423. data/lib/karafka/web/ui/helpers/paths_helper.rb +15 -7
  424. data/lib/karafka/web/ui/helpers/tailwind_helper.rb +6 -6
  425. data/lib/karafka/web/ui/helpers/time_helper.rb +1 -1
  426. data/lib/karafka/web/ui/helpers/topics_helper.rb +4 -4
  427. data/lib/karafka/web/ui/lib/admin.rb +2 -2
  428. data/lib/karafka/web/ui/lib/paginations/base.rb +7 -7
  429. data/lib/karafka/web/ui/lib/paginations/offset_based.rb +2 -2
  430. data/lib/karafka/web/ui/lib/paginations/page_based.rb +1 -1
  431. data/lib/karafka/web/ui/lib/paginations/paginators/arrays.rb +3 -3
  432. data/lib/karafka/web/ui/lib/paginations/watermark_offsets_based.rb +1 -1
  433. data/lib/karafka/web/ui/lib/sorter.rb +2 -2
  434. data/lib/karafka/web/ui/models/counters.rb +1 -1
  435. data/lib/karafka/web/ui/models/health.rb +1 -0
  436. data/lib/karafka/web/ui/models/jobs.rb +2 -2
  437. data/lib/karafka/web/ui/models/message.rb +9 -9
  438. data/lib/karafka/web/ui/models/metrics/charts/aggregated.rb +3 -3
  439. data/lib/karafka/web/ui/models/metrics/charts/topics.rb +3 -3
  440. data/lib/karafka/web/ui/models/metrics/topics.rb +8 -8
  441. data/lib/karafka/web/ui/models/processes.rb +3 -3
  442. data/lib/karafka/web/ui/models/recurring_tasks/schedule.rb +2 -2
  443. data/lib/karafka/web/ui/models/status/checks/base.rb +127 -0
  444. data/lib/karafka/web/ui/models/status/checks/commands_topic_presence.rb +52 -0
  445. data/lib/karafka/web/ui/models/status/checks/connection.rb +68 -0
  446. data/lib/karafka/web/ui/models/status/checks/consumers_reports.rb +34 -0
  447. data/lib/karafka/web/ui/models/status/checks/consumers_reports_schema_state.rb +32 -0
  448. data/lib/karafka/web/ui/models/status/checks/consumers_schemas.rb +44 -0
  449. data/lib/karafka/web/ui/models/status/checks/enabled.rb +39 -0
  450. data/lib/karafka/web/ui/models/status/checks/initial_consumers_metrics.rb +48 -0
  451. data/lib/karafka/web/ui/models/status/checks/initial_consumers_state.rb +48 -0
  452. data/lib/karafka/web/ui/models/status/checks/live_reporting.rb +31 -0
  453. data/lib/karafka/web/ui/models/status/checks/materializing_lag.rb +49 -0
  454. data/lib/karafka/web/ui/models/status/checks/partitions.rb +45 -0
  455. data/lib/karafka/web/ui/models/status/checks/pro_subscription.rb +29 -0
  456. data/lib/karafka/web/ui/models/status/checks/replication.rb +51 -0
  457. data/lib/karafka/web/ui/models/status/checks/routing_topics_presence.rb +53 -0
  458. data/lib/karafka/web/ui/models/status/checks/state_calculation.rb +39 -0
  459. data/lib/karafka/web/ui/models/status/checks/topics.rb +44 -0
  460. data/lib/karafka/web/ui/models/status/context.rb +142 -0
  461. data/lib/karafka/web/ui/models/status/step.rb +64 -0
  462. data/lib/karafka/web/ui/models/status.rb +70 -356
  463. data/lib/karafka/web/ui/models/topic.rb +2 -2
  464. data/lib/karafka/web/ui/public/javascripts/application.min.js +1 -1
  465. data/lib/karafka/web/ui/public/javascripts/application.min.js.br +0 -0
  466. data/lib/karafka/web/ui/public/javascripts/application.min.js.gz +0 -0
  467. data/lib/karafka/web/ui/public/javascripts/components/live_poll.js +2 -2
  468. data/lib/karafka/web/ui/public/stylesheets/application.min.css +4660 -2524
  469. data/lib/karafka/web/ui/public/stylesheets/application.min.css.br +0 -0
  470. data/lib/karafka/web/ui/public/stylesheets/application.min.css.gz +0 -0
  471. data/lib/karafka/web/ui/public/stylesheets/libs/tailwind.css +62 -3
  472. data/lib/karafka/web/ui/routes/assets.rb +7 -7
  473. data/lib/karafka/web/ui/routes/cluster.rb +4 -4
  474. data/lib/karafka/web/ui/routes/consumers.rb +2 -2
  475. data/lib/karafka/web/ui/routes/dashboard.rb +1 -1
  476. data/lib/karafka/web/ui/routes/errors.rb +2 -2
  477. data/lib/karafka/web/ui/routes/jobs.rb +4 -4
  478. data/lib/karafka/web/ui/routes/routing.rb +1 -1
  479. data/lib/karafka/web/ui/routes/status.rb +1 -1
  480. data/lib/karafka/web/ui/routes/support.rb +1 -1
  481. data/lib/karafka/web/ui/routes/ux.rb +1 -1
  482. data/lib/karafka/web/ui/views/cluster/_partition.erb +1 -0
  483. data/lib/karafka/web/ui/views/dashboard/_counters.erb +16 -16
  484. data/lib/karafka/web/ui/views/errors/_detail.erb +2 -3
  485. data/lib/karafka/web/ui/views/errors/_error.erb +1 -1
  486. data/lib/karafka/web/ui/views/errors/index.erb +1 -1
  487. data/lib/karafka/web/ui/views/errors/show.erb +1 -1
  488. data/lib/karafka/web/ui/views/jobs/_job.erb +1 -1
  489. data/lib/karafka/web/ui/views/layout.erb +1 -1
  490. data/lib/karafka/web/ui/views/routing/_consumer_group.erb +1 -1
  491. data/lib/karafka/web/ui/views/routing/_topic.erb +1 -1
  492. data/lib/karafka/web/ui/views/shared/_header.erb +5 -5
  493. data/lib/karafka/web/ui/views/shared/_navigation.erb +1 -1
  494. data/lib/karafka/web/ui/views/shared/alerts/_error.erb +2 -2
  495. data/lib/karafka/web/ui/views/shared/alerts/_info.erb +1 -1
  496. data/lib/karafka/web/ui/views/shared/alerts/_primary.erb +1 -1
  497. data/lib/karafka/web/ui/views/shared/alerts/_secondary.erb +1 -1
  498. data/lib/karafka/web/ui/views/shared/alerts/_success.erb +1 -1
  499. data/lib/karafka/web/ui/views/shared/alerts/_warning.erb +2 -2
  500. data/lib/karafka/web/ui/views/shared/exceptions/not_allowed.erb +3 -3
  501. data/lib/karafka/web/ui/views/shared/exceptions/not_found.erb +4 -4
  502. data/lib/karafka/web/ui/views/shared/exceptions/pro_only.erb +4 -4
  503. data/lib/karafka/web/ui/views/shared/exceptions/unhandled_error.erb +4 -4
  504. data/lib/karafka/web/ui/views/status/show.erb +15 -0
  505. data/lib/karafka/web/ui/views/status/warnings/_commands_topic_presence.erb +14 -0
  506. data/lib/karafka/web/ui/views/ux/_code.erb +0 -1
  507. data/lib/karafka/web/ui/views/ux/_data_table.erb +79 -0
  508. data/lib/karafka/web/ui/views/ux/_headers.erb +1 -1
  509. data/lib/karafka/web/ui/views/ux/_pagination.erb +1 -1
  510. data/lib/karafka/web/version.rb +1 -1
  511. data/lib/karafka/web.rb +17 -17
  512. data/package-lock.json +480 -92
  513. data/package.json +3 -1
  514. data/renovate.json +12 -11
  515. data/tailwind.config.js +4 -7
  516. metadata +72 -3
  517. data/lib/karafka/web/pro/ui/views/consumers/commands/_metadata.erb +0 -44
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="status-row-<%= process.status %>">
5
16
  <td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="status-row-<%= process.status %>">
5
16
  <td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="tab-container-wrapper">
5
16
  <div class="tab-container">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%
5
16
  commanding_class = 'btn-disabled'
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%==
5
16
  render_each(
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div id="metrics" class="w-full">
5
16
  <div class="grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-4 gap-4 mb-6">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="container-wrapper mb-4">
5
16
  <div class="row">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="<%= lso_risk_state_bg(partition) %>">
5
16
  <td>
@@ -37,12 +48,11 @@
37
48
  </span>
38
49
  </td>
39
50
 
40
- <td>
51
+ <td class="options">
41
52
  <%== partial(
42
53
  'consumers/consumers/consumer/partition_edit_options',
43
54
  locals: {
44
- process: @process,
45
- subscription_group_id: subscription_group.id,
55
+ consumer_group_id: consumer_group.id,
46
56
  topic_name: topic.name,
47
57
  partition: partition
48
58
  }
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%
5
16
  feature_class = 'btn-disabled'
@@ -7,7 +18,7 @@
7
18
  %>
8
19
 
9
20
  <a
10
- href="<%= consumer_path(process.id, 'partitions', subscription_group_id, topic_name, partition.id, 'offset', 'edit') %>"
21
+ href="<%= consumers_path('partitions', consumer_group_id, topic_name, partition.id, 'offset', 'edit') %>"
11
22
  class="btn btn-info btn-sm <%= feature_class %>"
12
23
  title="Edit the offset position for this topic partition"
13
24
  >
@@ -16,7 +27,7 @@
16
27
 
17
28
  <% if partition.poll_state != 'active' %>
18
29
  <a
19
- href="<%= consumer_path(process.id, 'partitions', subscription_group_id, topic_name, partition.id, 'pause', 'edit') %>"
30
+ href="<%= consumers_path('partitions', consumer_group_id, topic_name, partition.id, 'pause', 'edit') %>"
20
31
  class="btn btn-success btn-sm <%= feature_class %>"
21
32
  title="Resume processing of this topic partition"
22
33
  >
@@ -25,7 +36,7 @@
25
36
  <% end %>
26
37
 
27
38
  <a
28
- href="<%= consumer_path(process.id, 'partitions', subscription_group_id, topic_name, partition.id, 'pause', 'new') %>"
39
+ href="<%= consumers_path('partitions', consumer_group_id, topic_name, partition.id, 'pause', 'new') %>"
29
40
  class="btn btn-warning btn-sm <%= feature_class %>"
30
41
  title="Setup or configure pause duration for this topic partition"
31
42
  >
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="mb-6">
5
16
  <%==
@@ -1,9 +1,32 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <h2 class="h2 mb-3" id="<%= subscription_group.id %>">
5
- <%= consumer_group.id %> /
6
- <%= subscription_group.id %>
16
+ <span class="tooltip" data-tip="Consumer Group">
17
+ <%= consumer_group.id %>
18
+ </span>
19
+ /
20
+ <span class="tooltip" data-tip="Subscription Group">
21
+ <%= subscription_group.id %>
22
+ </span>
23
+
24
+ <% if subscription_group.instance_id %>
25
+ /
26
+ <span class="tooltip" data-tip="Static Membership ID (group.instance.id)">
27
+ <%= subscription_group.instance_id %>
28
+ </span>
29
+ <% end %>
7
30
  </h2>
8
31
 
9
32
  <div class="card-detail-container">
@@ -98,7 +121,7 @@
98
121
  <table class="data-table">
99
122
  <thead>
100
123
  <tr>
101
- <th colspan="10">
124
+ <th colspan="9">
102
125
  <%= topic.name %>
103
126
  </th>
104
127
  </tr>
@@ -107,7 +130,7 @@
107
130
  <th colspan="2">Lag</th>
108
131
  <th colspan="2">Offsets</th>
109
132
  <th colspan="3">States</th>
110
- <th rowspan="2">Options</th>
133
+ <th rowspan="2" class="options">Options</th>
111
134
  </tr>
112
135
  <tr>
113
136
  <th><%== sort_link(:lag_hybrid) %></th>
@@ -127,7 +150,8 @@
127
150
  locals: {
128
151
  topic: topic,
129
152
  partition: partition,
130
- subscription_group: subscription_group
153
+ subscription_group: subscription_group,
154
+ consumer_group: consumer_group
131
155
  }
132
156
  )
133
157
  %>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="tab-container-wrapper">
5
16
  <div class="tab-container">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title @process.id %>
5
16
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title 'Consumers' %>
5
16
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title 'Consumers Performance Details' %>
5
16
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title @process.id %>
5
16
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <li>
5
16
  <a href="<%= consumers_path('overview') %>">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="status-row-<%= process.status %>">
5
16
  <td>
@@ -46,7 +57,7 @@
46
57
  <%= process.lag_hybrid %>
47
58
  </td>
48
59
 
49
- <td class="commands-inline-3">
60
+ <td class="options">
50
61
  <%
51
62
  trace_path = consumers_path('commanding', process.id, 'trace')
52
63
  disabled_class = process.status != 'stopped' ? '' : 'btn-disabled'
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title 'Consumers Controls' %>
5
16
 
@@ -9,10 +20,19 @@
9
20
  <div class="col-span-12 flex justify-end space-x-2 mb-6">
10
21
  <%
11
22
  quiet_all_path = consumers_path('commanding', 'quiet_all')
23
+ has_standalone = @processes.any? { |p| p.execution_mode == 'standalone' }
24
+
25
+ if has_standalone
26
+ quiet_all_disabled_class = ''
27
+ quiet_all_title = 'Quiet All'
28
+ else
29
+ quiet_all_disabled_class = 'btn-disabled'
30
+ quiet_all_title = 'Supported only with standalone consumer processes'
31
+ end
12
32
  %>
13
- <form action="<%= quiet_all_path %>" method="post" class="inline-flex items-center">
33
+ <form action="<%= quiet_all_path %>" method="post" class="inline-flex items-center" title="<%= quiet_all_title %>">
14
34
  <%== csrf_tag(quiet_all_path) %>
15
- <button type="submit" class="btn btn-warning btn-sm">
35
+ <button type="submit" class="btn btn-warning btn-sm <%= quiet_all_disabled_class %>">
16
36
  <%== icon(:pause) %>
17
37
  Quiet All
18
38
  </button>
@@ -20,10 +40,18 @@
20
40
 
21
41
  <%
22
42
  stop_all_path = consumers_path('commanding', 'stop_all')
43
+
44
+ if has_standalone
45
+ stop_all_disabled_class = ''
46
+ stop_all_title = 'Stop All'
47
+ else
48
+ stop_all_disabled_class = 'btn-disabled'
49
+ stop_all_title = 'Supported only with standalone consumer processes'
50
+ end
23
51
  %>
24
- <form action="<%= stop_all_path %>" method="post" class="inline-flex items-center">
52
+ <form action="<%= stop_all_path %>" method="post" class="inline-flex items-center" title="<%= stop_all_title %>">
25
53
  <%== csrf_tag(stop_all_path) %>
26
- <button type="submit" class="btn btn-error btn-sm">
54
+ <button type="submit" class="btn btn-error btn-sm <%= stop_all_disabled_class %>">
27
55
  <%== icon(:stop) %>
28
56
  Stop All
29
57
  </button>
@@ -48,7 +76,7 @@
48
76
  <th><%== sort_link(:memory_usage) %></th>
49
77
  <th>Performance</th>
50
78
  <th><%== sort_link(:lag_hybrid) %></th>
51
- <th></th>
79
+ <th class="options">Options</th>
52
80
  </tr>
53
81
  </thead>
54
82
  <tbody>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <li>
5
16
  <a href="<%= consumers_path('overview') %>">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr>
5
16
  <td>
@@ -11,7 +22,7 @@
11
22
  <code><%= job.consumer %></code>
12
23
 
13
24
  <% unless job.tags.empty? %>
14
- <br/>
25
+ <br>
15
26
  <%== tags(job.tags) %>
16
27
  <% end %>
17
28
  </td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="col-lg-12">
5
16
  <%== alert_info("This process has no #{type} jobs at the moment.") %>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title @process.id %>
5
16