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
  <h3 class="h3 mt-6">
5
16
  <%= backtrace[:label] %>
@@ -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
  <% if command_message.is_a?(Array) %>
5
16
  <%== partial 'shared/not_a_message' %>
@@ -7,70 +18,17 @@
7
18
  <% command = command_message.payload %>
8
19
 
9
20
  <% if command[:schema_version] == @schema_version %>
10
- <tr>
11
- <td>
12
- <%
13
- type = command[:type]
14
- color = 'primary'
15
- color = 'success' if type == 'result'
16
- color = 'secondary' if type == 'acceptance'
17
- %>
18
-
19
- <span class="badge badge-<%= color %>">
20
- <%= command[:type] %>
21
- </span>
22
- </td>
23
-
24
- <td>
25
- <%
26
- scope = ::Karafka::Web::Pro::Commanding::Commands
27
- color = case command[:command][:name]
28
- when scope::Consumers::Trace.name
29
- 'info'
30
- when scope::Consumers::Quiet.name
31
- 'warning'
32
- when scope::Consumers::Stop.name
33
- 'error'
34
- when scope::Partitions::Seek.name
35
- 'primary'
36
- when scope::Partitions::Pause.name
37
- 'warning'
38
- when scope::Partitions::Resume.name
39
- 'warning'
40
- else
41
- 'secondary'
42
- end
43
- %>
44
- <span class="badge badge-<%= color %>">
45
- <%= command[:command][:name] %>
46
- </span>
47
- </td>
48
-
49
- <td>
50
- <% if command[:process][:id] == '*' %>
51
- *
52
- <% else %>
53
- <a href="<%= consumer_path(command[:process][:id], 'subscriptions') %>">
54
- <%= truncate(command[:process][:id], strategy: :middle) %>
55
- </a>
56
- <% end %>
57
- </td>
58
-
59
- <td>
60
- <%== relative_time command[:dispatched_at] %>
61
- </td>
62
-
63
- <td>
64
- <a href="<%= consumers_path('commands', command_message.offset) %>" class="btn btn-sm btn-primary">
65
- Details
66
- </a>
67
- </td>
68
- </tr>
21
+ <% row_partial = command[:type] == 'request' ? 'rows/request' : 'rows/response' %>
22
+ <%==
23
+ partial(
24
+ "consumers/commands/#{row_partial}",
25
+ locals: {
26
+ command: command,
27
+ command_message: command_message
28
+ }
29
+ )
30
+ %>
69
31
  <% else %>
70
- <tr>
71
- <td colspan="100" class="text-center text-muted">
72
- Incompatible command schema. This command message schema does not match the Karafka Web UI schema.
73
- </td>
74
- </tr>
32
+ <%== partial 'consumers/commands/incompatible_command' %>
75
33
  <% end %>
76
34
  <% end %>
@@ -1,4 +1,15 @@
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
  <pre class="code"><code class="json"><%= JSON.pretty_generate command %></code></pre>
@@ -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
  alert_info('No commands found.')
@@ -0,0 +1,19 @@
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 %>
14
+
15
+ <tr>
16
+ <td colspan="100" class="text-center text-muted">
17
+ Incompatible command schema. This command message schema does not match the Karafka Web UI schema.
18
+ </td>
19
+ </tr>
@@ -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
  <% alert_box_error('Incompatible Command Schema') do %>
5
16
  This issue occurs when the Web UI and consumer processes use different command schemas, preventing the display of command details. It arises from version mismatches, where either the Web UI or the consumer processes are outdated. To resolve this, ensure both components use compatible versions with the same schema.
@@ -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="data-table-wrapper">
5
16
  <table class="data-table">
@@ -7,9 +18,9 @@
7
18
  <tr>
8
19
  <th>Type</th>
9
20
  <th>Name</th>
10
- <th>Process ID</th>
21
+ <th>Matchers</th>
11
22
  <th>Dispatched</th>
12
- <th></th>
23
+ <th class="options">Options</th>
13
24
  </tr>
14
25
  </thead>
15
26
 
@@ -0,0 +1,19 @@
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 %>
14
+
15
+ <%== partial 'consumers/commands/metadata/response', locals: { command: command } %>
16
+
17
+ <h2 class="h2">Details</h2>
18
+
19
+ <%== partial 'consumers/commands/command_details', locals: { command: command } %>
@@ -0,0 +1,19 @@
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 %>
14
+
15
+ <%== partial 'consumers/commands/metadata/request', locals: { command: command } %>
16
+
17
+ <h2 class="h2">Details</h2>
18
+
19
+ <%== partial 'consumers/commands/command_details', locals: { command: command } %>
@@ -0,0 +1,27 @@
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 %>
14
+
15
+ <%== partial 'consumers/commands/metadata/response', locals: { command: command } %>
16
+
17
+ <% if command[:command][:name] == 'consumers.trace' %>
18
+ <h2 class="h2">Backtraces</h2>
19
+
20
+ <% command[:result].each_value do |backtrace| %>
21
+ <%== partial 'consumers/commands/backtrace', locals: { backtrace: backtrace } %>
22
+ <% end %>
23
+ <% else %>
24
+ <h2 class="h2">Details</h2>
25
+
26
+ <%== partial 'consumers/commands/command_details', locals: { command: command } %>
27
+ <% end %>
@@ -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 Commands and Responses' %>
5
16
 
@@ -0,0 +1,52 @@
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 %>
14
+
15
+ <h2 class="h2">
16
+ Metadata
17
+ </h2>
18
+
19
+ <div class="data-table-wrapper">
20
+ <table class="data-table">
21
+ <tbody>
22
+ <tr>
23
+ <td>Type</td>
24
+ <td><%== command[:type] %></td>
25
+ </tr>
26
+
27
+ <tr>
28
+ <td>Name</td>
29
+ <td><%== command[:command][:name] %></td>
30
+ </tr>
31
+
32
+ <tr>
33
+ <td>Dispatched</td>
34
+ <td><%== relative_time command[:dispatched_at] %></td>
35
+ </tr>
36
+
37
+ <tr>
38
+ <td>Matchers</td>
39
+ <td>
40
+ <% matchers = command[:matchers] || {} %>
41
+ <% if matchers.empty? %>
42
+ <%== badge_secondary '*' %>
43
+ <% else %>
44
+ <% matchers.each do |key, value| %>
45
+ <%== badge_secondary "#{key}:#{value}" %>
46
+ <% end %>
47
+ <% end %>
48
+ </td>
49
+ </tr>
50
+ </tbody>
51
+ </table>
52
+ </div>
@@ -0,0 +1,46 @@
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 %>
14
+
15
+ <h2 class="h2">
16
+ Metadata
17
+ </h2>
18
+
19
+ <div class="data-table-wrapper">
20
+ <table class="data-table">
21
+ <tbody>
22
+ <tr>
23
+ <td>Type</td>
24
+ <td><%== command[:type] %></td>
25
+ </tr>
26
+
27
+ <tr>
28
+ <td>Name</td>
29
+ <td><%== command[:command][:name] %></td>
30
+ </tr>
31
+
32
+ <tr>
33
+ <td>Dispatched</td>
34
+ <td><%== relative_time command[:dispatched_at] %></td>
35
+ </tr>
36
+
37
+ <tr>
38
+ <td>Process</td>
39
+ <td>
40
+ <% process_id = command[:process][:id] %>
41
+ <%== badge_secondary process_id %>
42
+ </td>
43
+ </tr>
44
+ </tbody>
45
+ </table>
46
+ </div>
@@ -0,0 +1,40 @@
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 %>
14
+
15
+ <%
16
+ scope = ::Karafka::Web::Pro::Commanding::Commands
17
+ color = case command[:command][:name]
18
+ when scope::Consumers::Trace.name
19
+ 'info'
20
+ when scope::Consumers::Quiet.name
21
+ 'warning'
22
+ when scope::Consumers::Stop.name
23
+ 'error'
24
+ when scope::Partitions::Seek.name
25
+ 'primary'
26
+ when scope::Partitions::Pause.name
27
+ 'warning'
28
+ when scope::Partitions::Resume.name
29
+ 'success'
30
+ when scope::Topics::Pause.name
31
+ 'warning'
32
+ when scope::Topics::Resume.name
33
+ 'success'
34
+ else
35
+ 'secondary'
36
+ end
37
+ %>
38
+ <span class="badge badge-<%= color %>">
39
+ <%= command[:command][:name] %>
40
+ </span>
@@ -0,0 +1,47 @@
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 %>
14
+
15
+ <tr>
16
+ <td>
17
+ <span class="badge badge-primary">request</span>
18
+ </td>
19
+
20
+ <td>
21
+ <%== partial 'consumers/commands/rows/command_name_badge', locals: { command: command } %>
22
+ </td>
23
+
24
+ <td>
25
+ <% matchers = command[:matchers] || {} %>
26
+ <% if matchers.empty? %>
27
+ <%== badge_secondary '*' %>
28
+ <% else %>
29
+ <% matchers.each do |key, value| %>
30
+ <%== badge_secondary "#{key}:#{truncate(value.to_s, length: 20, strategy: :middle)}" %>
31
+ <% end %>
32
+ <% end %>
33
+ </td>
34
+
35
+ <td>
36
+ <%== relative_time command[:dispatched_at] %>
37
+ </td>
38
+
39
+ <td class="options">
40
+ <a
41
+ href="<%= consumers_path('commands', command_message.offset) %>"
42
+ class="btn btn-sm btn-primary"
43
+ >
44
+ Details
45
+ </a>
46
+ </td>
47
+ </tr>
@@ -0,0 +1,46 @@
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 %>
14
+
15
+ <%
16
+ type = command[:type]
17
+ color = type == 'result' ? 'success' : 'secondary'
18
+ %>
19
+
20
+ <tr>
21
+ <td>
22
+ <span class="badge badge-<%= color %>"><%= type %></span>
23
+ </td>
24
+
25
+ <td>
26
+ <%== partial 'consumers/commands/rows/command_name_badge', locals: { command: command } %>
27
+ </td>
28
+
29
+ <td>
30
+ <% process_id = command[:process][:id] %>
31
+ <%== badge_secondary "process_id:#{truncate(process_id, strategy: :middle)}" %>
32
+ </td>
33
+
34
+ <td>
35
+ <%== relative_time command[:dispatched_at] %>
36
+ </td>
37
+
38
+ <td class="options">
39
+ <a
40
+ href="<%= consumers_path('commands', command_message.offset) %>"
41
+ class="btn btn-sm btn-primary"
42
+ >
43
+ Details
44
+ </a>
45
+ </td>
46
+ </tr>
@@ -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
  <% command = @command_message.payload %>
5
16
 
@@ -9,19 +20,7 @@
9
20
 
10
21
  <%== partial 'consumers/consumers/tabs' %>
11
22
 
12
- <%== partial 'consumers/commands/metadata', locals: { command: command } %>
13
-
14
- <% if command[:type] == 'result' && command[:command][:name] == 'consumers.trace' %>
15
- <h2 class="h2">Backtraces</h2>
16
-
17
- <% command[:result].each_value do |backtrace| %>
18
- <%== partial 'consumers/commands/backtrace', locals: { backtrace: backtrace } %>
19
- <% end %>
20
- <% else %>
21
- <h2 class="h2">Details</h2>
22
-
23
- <%== partial 'consumers/commands/command_details', locals: { command: command } %>
24
- <% end %>
23
+ <%== partial "consumers/commands/details/#{command[:type]}", locals: { command: command } %>
25
24
  <% else %>
26
25
  <% view_title 'Incompatible Command Schema' %>
27
26
 
@@ -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') %>">