karafka-web 0.1.0

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 (178) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +3 -0
  3. data/.coditsu/ci.yml +3 -0
  4. data/.diffend.yml +3 -0
  5. data/.github/FUNDING.yml +1 -0
  6. data/.github/ISSUE_TEMPLATE/bug_report.md +50 -0
  7. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  8. data/.github/workflows/ci.yml +49 -0
  9. data/.gitignore +69 -0
  10. data/.ruby-gemset +1 -0
  11. data/.ruby-version +1 -0
  12. data/CHANGELOG.md +9 -0
  13. data/CODE_OF_CONDUCT.md +46 -0
  14. data/Gemfile +7 -0
  15. data/Gemfile.lock +52 -0
  16. data/LICENSE +17 -0
  17. data/README.md +29 -0
  18. data/bin/karafka-web +33 -0
  19. data/certs/cert_chain.pem +26 -0
  20. data/config/locales/errors.yml +9 -0
  21. data/karafka-web.gemspec +44 -0
  22. data/lib/karafka/web/app.rb +17 -0
  23. data/lib/karafka/web/config.rb +80 -0
  24. data/lib/karafka/web/deserializer.rb +20 -0
  25. data/lib/karafka/web/errors.rb +25 -0
  26. data/lib/karafka/web/installer.rb +124 -0
  27. data/lib/karafka/web/processing/consumer.rb +66 -0
  28. data/lib/karafka/web/processing/consumers/aggregator.rb +130 -0
  29. data/lib/karafka/web/processing/consumers/state.rb +32 -0
  30. data/lib/karafka/web/tracking/base_contract.rb +31 -0
  31. data/lib/karafka/web/tracking/consumers/contracts/consumer_group.rb +33 -0
  32. data/lib/karafka/web/tracking/consumers/contracts/job.rb +26 -0
  33. data/lib/karafka/web/tracking/consumers/contracts/partition.rb +22 -0
  34. data/lib/karafka/web/tracking/consumers/contracts/report.rb +95 -0
  35. data/lib/karafka/web/tracking/consumers/contracts/topic.rb +29 -0
  36. data/lib/karafka/web/tracking/consumers/listeners/base.rb +33 -0
  37. data/lib/karafka/web/tracking/consumers/listeners/errors.rb +107 -0
  38. data/lib/karafka/web/tracking/consumers/listeners/pausing.rb +45 -0
  39. data/lib/karafka/web/tracking/consumers/listeners/processing.rb +157 -0
  40. data/lib/karafka/web/tracking/consumers/listeners/statistics.rb +123 -0
  41. data/lib/karafka/web/tracking/consumers/listeners/status.rb +58 -0
  42. data/lib/karafka/web/tracking/consumers/sampler.rb +216 -0
  43. data/lib/karafka/web/tracking/memoized_shell.rb +48 -0
  44. data/lib/karafka/web/tracking/reporter.rb +144 -0
  45. data/lib/karafka/web/tracking/ttl_array.rb +59 -0
  46. data/lib/karafka/web/tracking/ttl_hash.rb +16 -0
  47. data/lib/karafka/web/ui/app.rb +78 -0
  48. data/lib/karafka/web/ui/base.rb +77 -0
  49. data/lib/karafka/web/ui/controllers/base.rb +40 -0
  50. data/lib/karafka/web/ui/controllers/become_pro.rb +17 -0
  51. data/lib/karafka/web/ui/controllers/cluster.rb +24 -0
  52. data/lib/karafka/web/ui/controllers/consumers.rb +27 -0
  53. data/lib/karafka/web/ui/controllers/errors.rb +43 -0
  54. data/lib/karafka/web/ui/controllers/jobs.rb +33 -0
  55. data/lib/karafka/web/ui/controllers/requests/params.rb +30 -0
  56. data/lib/karafka/web/ui/controllers/responses/data.rb +26 -0
  57. data/lib/karafka/web/ui/controllers/routing.rb +30 -0
  58. data/lib/karafka/web/ui/helpers/application_helper.rb +144 -0
  59. data/lib/karafka/web/ui/lib/hash_proxy.rb +66 -0
  60. data/lib/karafka/web/ui/lib/paginate_array.rb +38 -0
  61. data/lib/karafka/web/ui/models/consumer_group.rb +20 -0
  62. data/lib/karafka/web/ui/models/health.rb +44 -0
  63. data/lib/karafka/web/ui/models/job.rb +13 -0
  64. data/lib/karafka/web/ui/models/message.rb +99 -0
  65. data/lib/karafka/web/ui/models/partition.rb +13 -0
  66. data/lib/karafka/web/ui/models/process.rb +56 -0
  67. data/lib/karafka/web/ui/models/processes.rb +86 -0
  68. data/lib/karafka/web/ui/models/state.rb +67 -0
  69. data/lib/karafka/web/ui/models/topic.rb +19 -0
  70. data/lib/karafka/web/ui/pro/app.rb +120 -0
  71. data/lib/karafka/web/ui/pro/controllers/cluster.rb +16 -0
  72. data/lib/karafka/web/ui/pro/controllers/consumers.rb +54 -0
  73. data/lib/karafka/web/ui/pro/controllers/dlq.rb +44 -0
  74. data/lib/karafka/web/ui/pro/controllers/errors.rb +57 -0
  75. data/lib/karafka/web/ui/pro/controllers/explorer.rb +79 -0
  76. data/lib/karafka/web/ui/pro/controllers/health.rb +33 -0
  77. data/lib/karafka/web/ui/pro/controllers/jobs.rb +26 -0
  78. data/lib/karafka/web/ui/pro/controllers/routing.rb +26 -0
  79. data/lib/karafka/web/ui/pro/views/consumers/_breadcrumbs.erb +27 -0
  80. data/lib/karafka/web/ui/pro/views/consumers/_consumer.erb +60 -0
  81. data/lib/karafka/web/ui/pro/views/consumers/_counters.erb +50 -0
  82. data/lib/karafka/web/ui/pro/views/consumers/_summary.erb +81 -0
  83. data/lib/karafka/web/ui/pro/views/consumers/consumer/_consumer_group.erb +109 -0
  84. data/lib/karafka/web/ui/pro/views/consumers/consumer/_job.erb +26 -0
  85. data/lib/karafka/web/ui/pro/views/consumers/consumer/_metrics.erb +126 -0
  86. data/lib/karafka/web/ui/pro/views/consumers/consumer/_no_jobs.erb +9 -0
  87. data/lib/karafka/web/ui/pro/views/consumers/consumer/_no_subscriptions.erb +9 -0
  88. data/lib/karafka/web/ui/pro/views/consumers/consumer/_partition.erb +32 -0
  89. data/lib/karafka/web/ui/pro/views/consumers/consumer/_stopped.erb +10 -0
  90. data/lib/karafka/web/ui/pro/views/consumers/consumer/_tabs.erb +20 -0
  91. data/lib/karafka/web/ui/pro/views/consumers/index.erb +30 -0
  92. data/lib/karafka/web/ui/pro/views/consumers/jobs.erb +42 -0
  93. data/lib/karafka/web/ui/pro/views/consumers/subscriptions.erb +23 -0
  94. data/lib/karafka/web/ui/pro/views/dlq/_breadcrumbs.erb +5 -0
  95. data/lib/karafka/web/ui/pro/views/dlq/_no_topics.erb +9 -0
  96. data/lib/karafka/web/ui/pro/views/dlq/_topic.erb +12 -0
  97. data/lib/karafka/web/ui/pro/views/dlq/index.erb +16 -0
  98. data/lib/karafka/web/ui/pro/views/errors/_breadcrumbs.erb +25 -0
  99. data/lib/karafka/web/ui/pro/views/errors/_detail.erb +29 -0
  100. data/lib/karafka/web/ui/pro/views/errors/_error.erb +26 -0
  101. data/lib/karafka/web/ui/pro/views/errors/_partition_option.erb +7 -0
  102. data/lib/karafka/web/ui/pro/views/errors/index.erb +58 -0
  103. data/lib/karafka/web/ui/pro/views/errors/show.erb +56 -0
  104. data/lib/karafka/web/ui/pro/views/explorer/_breadcrumbs.erb +29 -0
  105. data/lib/karafka/web/ui/pro/views/explorer/_detail.erb +21 -0
  106. data/lib/karafka/web/ui/pro/views/explorer/_encryption_enabled.erb +18 -0
  107. data/lib/karafka/web/ui/pro/views/explorer/_failed_deserialization.erb +4 -0
  108. data/lib/karafka/web/ui/pro/views/explorer/_message.erb +16 -0
  109. data/lib/karafka/web/ui/pro/views/explorer/_partition_option.erb +7 -0
  110. data/lib/karafka/web/ui/pro/views/explorer/_topic.erb +12 -0
  111. data/lib/karafka/web/ui/pro/views/explorer/index.erb +17 -0
  112. data/lib/karafka/web/ui/pro/views/explorer/partition.erb +56 -0
  113. data/lib/karafka/web/ui/pro/views/explorer/show.erb +65 -0
  114. data/lib/karafka/web/ui/pro/views/health/_breadcrumbs.erb +5 -0
  115. data/lib/karafka/web/ui/pro/views/health/_partition.erb +35 -0
  116. data/lib/karafka/web/ui/pro/views/health/index.erb +60 -0
  117. data/lib/karafka/web/ui/pro/views/jobs/_breadcrumbs.erb +5 -0
  118. data/lib/karafka/web/ui/pro/views/jobs/_job.erb +31 -0
  119. data/lib/karafka/web/ui/pro/views/jobs/_no_jobs.erb +9 -0
  120. data/lib/karafka/web/ui/pro/views/jobs/index.erb +34 -0
  121. data/lib/karafka/web/ui/pro/views/shared/_navigation.erb +57 -0
  122. data/lib/karafka/web/ui/public/images/favicon.ico +0 -0
  123. data/lib/karafka/web/ui/public/images/logo.svg +28 -0
  124. data/lib/karafka/web/ui/public/javascripts/application.js +41 -0
  125. data/lib/karafka/web/ui/public/javascripts/bootstrap.min.js +7 -0
  126. data/lib/karafka/web/ui/public/javascripts/highlight.min.js +337 -0
  127. data/lib/karafka/web/ui/public/javascripts/live_poll.js +124 -0
  128. data/lib/karafka/web/ui/public/javascripts/timeago.min.js +1 -0
  129. data/lib/karafka/web/ui/public/stylesheets/application.css +106 -0
  130. data/lib/karafka/web/ui/public/stylesheets/bootstrap.min.css +7 -0
  131. data/lib/karafka/web/ui/public/stylesheets/bootstrap.min.css.map +1 -0
  132. data/lib/karafka/web/ui/public/stylesheets/highlight.min.css +10 -0
  133. data/lib/karafka/web/ui/views/cluster/_breadcrumbs.erb +5 -0
  134. data/lib/karafka/web/ui/views/cluster/_broker.erb +5 -0
  135. data/lib/karafka/web/ui/views/cluster/_partition.erb +22 -0
  136. data/lib/karafka/web/ui/views/cluster/index.erb +72 -0
  137. data/lib/karafka/web/ui/views/consumers/_breadcrumbs.erb +27 -0
  138. data/lib/karafka/web/ui/views/consumers/_consumer.erb +43 -0
  139. data/lib/karafka/web/ui/views/consumers/_counters.erb +44 -0
  140. data/lib/karafka/web/ui/views/consumers/_summary.erb +81 -0
  141. data/lib/karafka/web/ui/views/consumers/consumer/_consumer_group.erb +109 -0
  142. data/lib/karafka/web/ui/views/consumers/consumer/_job.erb +26 -0
  143. data/lib/karafka/web/ui/views/consumers/consumer/_metrics.erb +126 -0
  144. data/lib/karafka/web/ui/views/consumers/consumer/_no_jobs.erb +9 -0
  145. data/lib/karafka/web/ui/views/consumers/consumer/_no_subscriptions.erb +9 -0
  146. data/lib/karafka/web/ui/views/consumers/consumer/_partition.erb +32 -0
  147. data/lib/karafka/web/ui/views/consumers/consumer/_stopped.erb +10 -0
  148. data/lib/karafka/web/ui/views/consumers/consumer/_tabs.erb +20 -0
  149. data/lib/karafka/web/ui/views/consumers/index.erb +29 -0
  150. data/lib/karafka/web/ui/views/errors/_breadcrumbs.erb +19 -0
  151. data/lib/karafka/web/ui/views/errors/_detail.erb +29 -0
  152. data/lib/karafka/web/ui/views/errors/_error.erb +26 -0
  153. data/lib/karafka/web/ui/views/errors/index.erb +38 -0
  154. data/lib/karafka/web/ui/views/errors/show.erb +30 -0
  155. data/lib/karafka/web/ui/views/jobs/_breadcrumbs.erb +5 -0
  156. data/lib/karafka/web/ui/views/jobs/_job.erb +22 -0
  157. data/lib/karafka/web/ui/views/jobs/_no_jobs.erb +9 -0
  158. data/lib/karafka/web/ui/views/jobs/index.erb +31 -0
  159. data/lib/karafka/web/ui/views/layout.erb +23 -0
  160. data/lib/karafka/web/ui/views/routing/_breadcrumbs.erb +15 -0
  161. data/lib/karafka/web/ui/views/routing/_consumer_group.erb +34 -0
  162. data/lib/karafka/web/ui/views/routing/_detail.erb +25 -0
  163. data/lib/karafka/web/ui/views/routing/_topic.erb +18 -0
  164. data/lib/karafka/web/ui/views/routing/index.erb +10 -0
  165. data/lib/karafka/web/ui/views/routing/show.erb +26 -0
  166. data/lib/karafka/web/ui/views/shared/_become_pro.erb +13 -0
  167. data/lib/karafka/web/ui/views/shared/_brand.erb +3 -0
  168. data/lib/karafka/web/ui/views/shared/_content.erb +31 -0
  169. data/lib/karafka/web/ui/views/shared/_header.erb +20 -0
  170. data/lib/karafka/web/ui/views/shared/_navigation.erb +57 -0
  171. data/lib/karafka/web/ui/views/shared/_pagination.erb +21 -0
  172. data/lib/karafka/web/ui/views/shared/exceptions/not_found.erb +39 -0
  173. data/lib/karafka/web/ui/views/shared/exceptions/pro_only.erb +52 -0
  174. data/lib/karafka/web/version.rb +8 -0
  175. data/lib/karafka/web.rb +60 -0
  176. data.tar.gz.sig +0 -0
  177. metadata +328 -0
  178. metadata.gz.sig +0 -0
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ %w[
4
+ karafka
5
+ roda
6
+ etc
7
+ open3
8
+ ].each { |lib| require lib }
9
+
10
+ module Karafka
11
+ # Karafka Web UI + Karafka web monitoring
12
+ module Web
13
+ class << self
14
+ # @return [String] root path of this gem
15
+ def gem_root
16
+ Pathname.new(File.expand_path('../..', __dir__))
17
+ end
18
+
19
+ # Sets up the whole configuration
20
+ # @param [Block] block configuration block
21
+ def setup(&block)
22
+ Config.configure(&block)
23
+ end
24
+
25
+ # @return [Karafka::Web::Config] config instance
26
+ def config
27
+ Config.config
28
+ end
29
+
30
+ # Creates all the needed topics for the admin UI to work and populates initial (empty) set
31
+ # of data, so the UI will work even when no Karafka servers are started
32
+ def bootstrap!
33
+ Installer.new.bootstrap!
34
+ end
35
+
36
+ # Activates all the needed routing and sets up listener, etc
37
+ # This needs to run **after** the optional configuration of the web component
38
+ def enable!
39
+ Installer.new.enable!
40
+ end
41
+ end
42
+ end
43
+ end
44
+
45
+ loader = Zeitwerk::Loader.new
46
+ # Make sure pro is not loaded unless Pro
47
+ loader.ignore(Karafka::Web.gem_root.join('lib/karafka/web/ui/pro'))
48
+
49
+ # If license is detected, we can use loader without limitations
50
+ Karafka::Licenser.detect do
51
+ loader = Zeitwerk::Loader.new
52
+ end
53
+
54
+ root = File.expand_path('..', __dir__)
55
+ loader.tag = 'karafka-web'
56
+ loader.inflector = Zeitwerk::GemInflector.new("#{root}/karafka/web.rb")
57
+ loader.push_dir(root)
58
+
59
+ loader.setup
60
+ loader.eager_load
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,328 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: karafka-web
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Maciej Mensfeld
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MRAwDgYDVQQDDAdjb250
14
+ YWN0MRcwFQYKCZImiZPyLGQBGRYHa2FyYWZrYTESMBAGCgmSJomT8ixkARkWAmlv
15
+ MB4XDTIyMDgxOTE3MjEzN1oXDTIzMDgxOTE3MjEzN1owPzEQMA4GA1UEAwwHY29u
16
+ dGFjdDEXMBUGCgmSJomT8ixkARkWB2thcmFma2ExEjAQBgoJkiaJk/IsZAEZFgJp
17
+ bzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAODzeO3L6lxdATzMHKNW
18
+ jFA/GGunoPuylO/BMzy8RiQHh7VIvysAKs0tHhTx3g2D0STDpF+hcQcPELFikiT2
19
+ F+1wOHj/SsrK7VKqfA8+gq04hKc5sQoX2Egf9k3V0YJ3eZ6R/koHkQ8A0TVt0w6F
20
+ ZQckoV4MqnEAx0g/FZN3mnHTlJ3VFLSBqJEIe+S6FZMl92mSv+hTrlUG8VaYxSfN
21
+ lTCvnKk284F6QZq5XIENLRmcDd/3aPBLnLwNnyMyhB+6gK8cUO+CFlDO5tjo/aBA
22
+ rUnl++wGG0JooF1ed0v+evOn9KoMBG6rHewcf79qJbVOscbD8qSAmo+sCXtcFryr
23
+ KRMTB8gNbowJkFRJDEe8tfRy11u1fYzFg/qNO82FJd62rKAw2wN0C29yCeQOPRb1
24
+ Cw9Y4ZwK9VFNEcV9L+3pHTHn2XfuZHtDaG198VweiF6raFO4yiEYccodH/USP0L5
25
+ cbcCFtmu/4HDSxL1ByQXO84A0ybJuk3/+aPUSXe9C9U8fwIDAQABo3cwdTAJBgNV
26
+ HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUSlcEakb7gfn/5E2WY6z73BF/
27
+ iZkwHQYDVR0RBBYwFIESY29udGFjdEBrYXJhZmthLmlvMB0GA1UdEgQWMBSBEmNv
28
+ bnRhY3RAa2FyYWZrYS5pbzANBgkqhkiG9w0BAQsFAAOCAYEA1aS+E7RXJ1w9g9mJ
29
+ G0NzFxe64OEuENosNlvYQCbRKGCXAU1qqelYkBQHseRgRKxLICrnypRo9IEobyHa
30
+ vDnJ4r7Tsb34dleqQW2zY/obG+cia3Ym2JsegXWF7dDOzCXJ4FN8MFoT2jHlqLLw
31
+ yrap0YO5zx0GSQ0Dwy8h2n2v2vanMEeCx7iNm3ERgR5WuN5sjzWoz2A/JLEEcK0C
32
+ EnAGKCWAd1fuG8IemDjT1edsd5FyYR4bIX0m+99oDuFZyPiiIbalmyYiSBBp59Yb
33
+ Q0P8zeBi4OfwCZNcxqz0KONmw9JLNv6DgyEAH5xe/4JzhMEgvIRiPj0pHfA7oqQF
34
+ KUNqvD1KlxbEC+bZfE5IZhnqYLdld/Ksqd22FI1RBhiS1Ejfsj99LVIm9cBuZEY2
35
+ Qf04B9ceLUaC4fPVEz10FyobjaFoY4i32xRto3XnrzeAgfEe4swLq8bQsR3w/EF3
36
+ MGU0FeSV2Yj7Xc2x/7BzLK8xQn5l7Yy75iPF+KP3vVmDHnNl
37
+ -----END CERTIFICATE-----
38
+ date: 2023-01-30 00:00:00.000000000 Z
39
+ dependencies:
40
+ - !ruby/object:Gem::Dependency
41
+ name: erubi
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.4'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.4'
54
+ - !ruby/object:Gem::Dependency
55
+ name: karafka
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 2.0.29
61
+ - - "<"
62
+ - !ruby/object:Gem::Version
63
+ version: 3.0.0
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 2.0.29
71
+ - - "<"
72
+ - !ruby/object:Gem::Version
73
+ version: 3.0.0
74
+ - !ruby/object:Gem::Dependency
75
+ name: roda
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '3.63'
81
+ type: :runtime
82
+ prerelease: false
83
+ version_requirements: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.63'
88
+ - !ruby/object:Gem::Dependency
89
+ name: tilt
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '2.0'
95
+ type: :runtime
96
+ prerelease: false
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '2.0'
102
+ - !ruby/object:Gem::Dependency
103
+ name: rackup
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '0.2'
109
+ type: :development
110
+ prerelease: false
111
+ version_requirements: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '0.2'
116
+ description: Karafka ecosystem plug-and-play Web UI
117
+ email:
118
+ - contact@karafka.io
119
+ executables:
120
+ - karafka-web
121
+ extensions: []
122
+ extra_rdoc_files: []
123
+ files:
124
+ - ".coditsu/ci.yml"
125
+ - ".diffend.yml"
126
+ - ".github/FUNDING.yml"
127
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
128
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
129
+ - ".github/workflows/ci.yml"
130
+ - ".gitignore"
131
+ - ".ruby-gemset"
132
+ - ".ruby-version"
133
+ - CHANGELOG.md
134
+ - CODE_OF_CONDUCT.md
135
+ - Gemfile
136
+ - Gemfile.lock
137
+ - LICENSE
138
+ - README.md
139
+ - bin/karafka-web
140
+ - certs/cert_chain.pem
141
+ - config/locales/errors.yml
142
+ - karafka-web.gemspec
143
+ - lib/karafka/web.rb
144
+ - lib/karafka/web/app.rb
145
+ - lib/karafka/web/config.rb
146
+ - lib/karafka/web/deserializer.rb
147
+ - lib/karafka/web/errors.rb
148
+ - lib/karafka/web/installer.rb
149
+ - lib/karafka/web/processing/consumer.rb
150
+ - lib/karafka/web/processing/consumers/aggregator.rb
151
+ - lib/karafka/web/processing/consumers/state.rb
152
+ - lib/karafka/web/tracking/base_contract.rb
153
+ - lib/karafka/web/tracking/consumers/contracts/consumer_group.rb
154
+ - lib/karafka/web/tracking/consumers/contracts/job.rb
155
+ - lib/karafka/web/tracking/consumers/contracts/partition.rb
156
+ - lib/karafka/web/tracking/consumers/contracts/report.rb
157
+ - lib/karafka/web/tracking/consumers/contracts/topic.rb
158
+ - lib/karafka/web/tracking/consumers/listeners/base.rb
159
+ - lib/karafka/web/tracking/consumers/listeners/errors.rb
160
+ - lib/karafka/web/tracking/consumers/listeners/pausing.rb
161
+ - lib/karafka/web/tracking/consumers/listeners/processing.rb
162
+ - lib/karafka/web/tracking/consumers/listeners/statistics.rb
163
+ - lib/karafka/web/tracking/consumers/listeners/status.rb
164
+ - lib/karafka/web/tracking/consumers/sampler.rb
165
+ - lib/karafka/web/tracking/memoized_shell.rb
166
+ - lib/karafka/web/tracking/reporter.rb
167
+ - lib/karafka/web/tracking/ttl_array.rb
168
+ - lib/karafka/web/tracking/ttl_hash.rb
169
+ - lib/karafka/web/ui/app.rb
170
+ - lib/karafka/web/ui/base.rb
171
+ - lib/karafka/web/ui/controllers/base.rb
172
+ - lib/karafka/web/ui/controllers/become_pro.rb
173
+ - lib/karafka/web/ui/controllers/cluster.rb
174
+ - lib/karafka/web/ui/controllers/consumers.rb
175
+ - lib/karafka/web/ui/controllers/errors.rb
176
+ - lib/karafka/web/ui/controllers/jobs.rb
177
+ - lib/karafka/web/ui/controllers/requests/params.rb
178
+ - lib/karafka/web/ui/controllers/responses/data.rb
179
+ - lib/karafka/web/ui/controllers/routing.rb
180
+ - lib/karafka/web/ui/helpers/application_helper.rb
181
+ - lib/karafka/web/ui/lib/hash_proxy.rb
182
+ - lib/karafka/web/ui/lib/paginate_array.rb
183
+ - lib/karafka/web/ui/models/consumer_group.rb
184
+ - lib/karafka/web/ui/models/health.rb
185
+ - lib/karafka/web/ui/models/job.rb
186
+ - lib/karafka/web/ui/models/message.rb
187
+ - lib/karafka/web/ui/models/partition.rb
188
+ - lib/karafka/web/ui/models/process.rb
189
+ - lib/karafka/web/ui/models/processes.rb
190
+ - lib/karafka/web/ui/models/state.rb
191
+ - lib/karafka/web/ui/models/topic.rb
192
+ - lib/karafka/web/ui/pro/app.rb
193
+ - lib/karafka/web/ui/pro/controllers/cluster.rb
194
+ - lib/karafka/web/ui/pro/controllers/consumers.rb
195
+ - lib/karafka/web/ui/pro/controllers/dlq.rb
196
+ - lib/karafka/web/ui/pro/controllers/errors.rb
197
+ - lib/karafka/web/ui/pro/controllers/explorer.rb
198
+ - lib/karafka/web/ui/pro/controllers/health.rb
199
+ - lib/karafka/web/ui/pro/controllers/jobs.rb
200
+ - lib/karafka/web/ui/pro/controllers/routing.rb
201
+ - lib/karafka/web/ui/pro/views/consumers/_breadcrumbs.erb
202
+ - lib/karafka/web/ui/pro/views/consumers/_consumer.erb
203
+ - lib/karafka/web/ui/pro/views/consumers/_counters.erb
204
+ - lib/karafka/web/ui/pro/views/consumers/_summary.erb
205
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_consumer_group.erb
206
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_job.erb
207
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_metrics.erb
208
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_no_jobs.erb
209
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_no_subscriptions.erb
210
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_partition.erb
211
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_stopped.erb
212
+ - lib/karafka/web/ui/pro/views/consumers/consumer/_tabs.erb
213
+ - lib/karafka/web/ui/pro/views/consumers/index.erb
214
+ - lib/karafka/web/ui/pro/views/consumers/jobs.erb
215
+ - lib/karafka/web/ui/pro/views/consumers/subscriptions.erb
216
+ - lib/karafka/web/ui/pro/views/dlq/_breadcrumbs.erb
217
+ - lib/karafka/web/ui/pro/views/dlq/_no_topics.erb
218
+ - lib/karafka/web/ui/pro/views/dlq/_topic.erb
219
+ - lib/karafka/web/ui/pro/views/dlq/index.erb
220
+ - lib/karafka/web/ui/pro/views/errors/_breadcrumbs.erb
221
+ - lib/karafka/web/ui/pro/views/errors/_detail.erb
222
+ - lib/karafka/web/ui/pro/views/errors/_error.erb
223
+ - lib/karafka/web/ui/pro/views/errors/_partition_option.erb
224
+ - lib/karafka/web/ui/pro/views/errors/index.erb
225
+ - lib/karafka/web/ui/pro/views/errors/show.erb
226
+ - lib/karafka/web/ui/pro/views/explorer/_breadcrumbs.erb
227
+ - lib/karafka/web/ui/pro/views/explorer/_detail.erb
228
+ - lib/karafka/web/ui/pro/views/explorer/_encryption_enabled.erb
229
+ - lib/karafka/web/ui/pro/views/explorer/_failed_deserialization.erb
230
+ - lib/karafka/web/ui/pro/views/explorer/_message.erb
231
+ - lib/karafka/web/ui/pro/views/explorer/_partition_option.erb
232
+ - lib/karafka/web/ui/pro/views/explorer/_topic.erb
233
+ - lib/karafka/web/ui/pro/views/explorer/index.erb
234
+ - lib/karafka/web/ui/pro/views/explorer/partition.erb
235
+ - lib/karafka/web/ui/pro/views/explorer/show.erb
236
+ - lib/karafka/web/ui/pro/views/health/_breadcrumbs.erb
237
+ - lib/karafka/web/ui/pro/views/health/_partition.erb
238
+ - lib/karafka/web/ui/pro/views/health/index.erb
239
+ - lib/karafka/web/ui/pro/views/jobs/_breadcrumbs.erb
240
+ - lib/karafka/web/ui/pro/views/jobs/_job.erb
241
+ - lib/karafka/web/ui/pro/views/jobs/_no_jobs.erb
242
+ - lib/karafka/web/ui/pro/views/jobs/index.erb
243
+ - lib/karafka/web/ui/pro/views/shared/_navigation.erb
244
+ - lib/karafka/web/ui/public/images/favicon.ico
245
+ - lib/karafka/web/ui/public/images/logo.svg
246
+ - lib/karafka/web/ui/public/javascripts/application.js
247
+ - lib/karafka/web/ui/public/javascripts/bootstrap.min.js
248
+ - lib/karafka/web/ui/public/javascripts/highlight.min.js
249
+ - lib/karafka/web/ui/public/javascripts/live_poll.js
250
+ - lib/karafka/web/ui/public/javascripts/timeago.min.js
251
+ - lib/karafka/web/ui/public/stylesheets/application.css
252
+ - lib/karafka/web/ui/public/stylesheets/bootstrap.min.css
253
+ - lib/karafka/web/ui/public/stylesheets/bootstrap.min.css.map
254
+ - lib/karafka/web/ui/public/stylesheets/highlight.min.css
255
+ - lib/karafka/web/ui/views/cluster/_breadcrumbs.erb
256
+ - lib/karafka/web/ui/views/cluster/_broker.erb
257
+ - lib/karafka/web/ui/views/cluster/_partition.erb
258
+ - lib/karafka/web/ui/views/cluster/index.erb
259
+ - lib/karafka/web/ui/views/consumers/_breadcrumbs.erb
260
+ - lib/karafka/web/ui/views/consumers/_consumer.erb
261
+ - lib/karafka/web/ui/views/consumers/_counters.erb
262
+ - lib/karafka/web/ui/views/consumers/_summary.erb
263
+ - lib/karafka/web/ui/views/consumers/consumer/_consumer_group.erb
264
+ - lib/karafka/web/ui/views/consumers/consumer/_job.erb
265
+ - lib/karafka/web/ui/views/consumers/consumer/_metrics.erb
266
+ - lib/karafka/web/ui/views/consumers/consumer/_no_jobs.erb
267
+ - lib/karafka/web/ui/views/consumers/consumer/_no_subscriptions.erb
268
+ - lib/karafka/web/ui/views/consumers/consumer/_partition.erb
269
+ - lib/karafka/web/ui/views/consumers/consumer/_stopped.erb
270
+ - lib/karafka/web/ui/views/consumers/consumer/_tabs.erb
271
+ - lib/karafka/web/ui/views/consumers/index.erb
272
+ - lib/karafka/web/ui/views/errors/_breadcrumbs.erb
273
+ - lib/karafka/web/ui/views/errors/_detail.erb
274
+ - lib/karafka/web/ui/views/errors/_error.erb
275
+ - lib/karafka/web/ui/views/errors/index.erb
276
+ - lib/karafka/web/ui/views/errors/show.erb
277
+ - lib/karafka/web/ui/views/jobs/_breadcrumbs.erb
278
+ - lib/karafka/web/ui/views/jobs/_job.erb
279
+ - lib/karafka/web/ui/views/jobs/_no_jobs.erb
280
+ - lib/karafka/web/ui/views/jobs/index.erb
281
+ - lib/karafka/web/ui/views/layout.erb
282
+ - lib/karafka/web/ui/views/routing/_breadcrumbs.erb
283
+ - lib/karafka/web/ui/views/routing/_consumer_group.erb
284
+ - lib/karafka/web/ui/views/routing/_detail.erb
285
+ - lib/karafka/web/ui/views/routing/_topic.erb
286
+ - lib/karafka/web/ui/views/routing/index.erb
287
+ - lib/karafka/web/ui/views/routing/show.erb
288
+ - lib/karafka/web/ui/views/shared/_become_pro.erb
289
+ - lib/karafka/web/ui/views/shared/_brand.erb
290
+ - lib/karafka/web/ui/views/shared/_content.erb
291
+ - lib/karafka/web/ui/views/shared/_header.erb
292
+ - lib/karafka/web/ui/views/shared/_navigation.erb
293
+ - lib/karafka/web/ui/views/shared/_pagination.erb
294
+ - lib/karafka/web/ui/views/shared/exceptions/not_found.erb
295
+ - lib/karafka/web/ui/views/shared/exceptions/pro_only.erb
296
+ - lib/karafka/web/version.rb
297
+ homepage: https://karafka.io
298
+ licenses:
299
+ - LGPL-3.0
300
+ - Commercial
301
+ metadata:
302
+ funding_uri: https://karafka.io/#become-pro
303
+ homepage_uri: https://karafka.io
304
+ changelog_uri: https://github.com/karafka/karafka-web/blob/master/CHANGELOG.md
305
+ bug_tracker_uri: https://github.com/karafka/karafka-web/issues
306
+ source_code_uri: https://github.com/karafka/karafka-web
307
+ documentation_uri: https://karafka.io/docs
308
+ rubygems_mfa_required: 'true'
309
+ post_install_message:
310
+ rdoc_options: []
311
+ require_paths:
312
+ - lib
313
+ required_ruby_version: !ruby/object:Gem::Requirement
314
+ requirements:
315
+ - - ">="
316
+ - !ruby/object:Gem::Version
317
+ version: '0'
318
+ required_rubygems_version: !ruby/object:Gem::Requirement
319
+ requirements:
320
+ - - ">="
321
+ - !ruby/object:Gem::Version
322
+ version: '0'
323
+ requirements: []
324
+ rubygems_version: 3.4.1
325
+ signing_key:
326
+ specification_version: 4
327
+ summary: Karafka ecosystem Web UI interface
328
+ test_files: []
metadata.gz.sig ADDED
Binary file