Module: Karafka::Web
- Defined in:
- lib/karafka/web.rb,
lib/karafka/web/app.rb,
lib/karafka/web/cli.rb,
lib/karafka/web/config.rb,
lib/karafka/web/errors.rb,
lib/karafka/web/ui/app.rb,
lib/karafka/web/ui/base.rb,
lib/karafka/web/version.rb,
lib/karafka/web/cli/base.rb,
lib/karafka/web/cli/help.rb,
lib/karafka/web/cli/reset.rb,
lib/karafka/web/inflector.rb,
lib/karafka/web/installer.rb,
lib/karafka/web/ui/pro/app.rb,
lib/karafka/web/cli/install.rb,
lib/karafka/web/cli/migrate.rb,
lib/karafka/web/deserializer.rb,
lib/karafka/web/ui/lib/admin.rb,
lib/karafka/web/cli/uninstall.rb,
lib/karafka/web/ui/lib/sorter.rb,
lib/karafka/web/ui/models/job.rb,
lib/karafka/web/contracts/base.rb,
lib/karafka/web/ui/models/jobs.rb,
lib/karafka/web/ui/models/topic.rb,
lib/karafka/web/contracts/config.rb,
lib/karafka/web/tracking/sampler.rb,
lib/karafka/web/ui/lib/ttl_cache.rb,
lib/karafka/web/ui/models/health.rb,
lib/karafka/web/ui/models/status.rb,
lib/karafka/web/tracking/reporter.rb,
lib/karafka/web/ui/lib/hash_proxy.rb,
lib/karafka/web/ui/models/message.rb,
lib/karafka/web/ui/models/process.rb,
lib/karafka/web/tracking/scheduler.rb,
lib/karafka/web/ui/models/counters.rb,
lib/karafka/web/management/migrator.rb,
lib/karafka/web/processing/consumer.rb,
lib/karafka/web/ui/controllers/base.rb,
lib/karafka/web/ui/controllers/jobs.rb,
lib/karafka/web/ui/models/partition.rb,
lib/karafka/web/ui/models/processes.rb,
lib/karafka/web/processing/publisher.rb,
lib/karafka/web/ui/controllers/errors.rb,
lib/karafka/web/ui/controllers/status.rb,
lib/karafka/web/ui/controllers/cluster.rb,
lib/karafka/web/ui/controllers/routing.rb,
lib/karafka/web/ui/models/cluster_info.rb,
lib/karafka/web/ui/pro/controllers/dlq.rb,
lib/karafka/web/management/actions/base.rb,
lib/karafka/web/tracking/memoized_shell.rb,
lib/karafka/web/ui/helpers/paths_helper.rb,
lib/karafka/web/ui/lib/paginations/base.rb,
lib/karafka/web/ui/pro/controllers/jobs.rb,
lib/karafka/web/tracking/contracts/error.rb,
lib/karafka/web/ui/controllers/consumers.rb,
lib/karafka/web/ui/controllers/dashboard.rb,
lib/karafka/web/ui/models/consumer_group.rb,
lib/karafka/web/ui/models/metrics/topics.rb,
lib/karafka/web/management/actions/enable.rb,
lib/karafka/web/ui/controllers/become_pro.rb,
lib/karafka/web/ui/models/consumers_state.rb,
lib/karafka/web/ui/pro/controllers/errors.rb,
lib/karafka/web/ui/pro/controllers/health.rb,
lib/karafka/web/ui/pro/controllers/status.rb,
lib/karafka/web/processing/consumers/state.rb,
lib/karafka/web/tracking/consumers/sampler.rb,
lib/karafka/web/tracking/helpers/ttls/hash.rb,
lib/karafka/web/tracking/producers/sampler.rb,
lib/karafka/web/ui/pro/controllers/cluster.rb,
lib/karafka/web/ui/pro/controllers/routing.rb,
lib/karafka/web/tracking/consumers/reporter.rb,
lib/karafka/web/tracking/helpers/error_info.rb,
lib/karafka/web/tracking/helpers/ttls/array.rb,
lib/karafka/web/tracking/helpers/ttls/stats.rb,
lib/karafka/web/tracking/producers/reporter.rb,
lib/karafka/web/ui/models/consumers_metrics.rb,
lib/karafka/web/ui/models/visibility_filter.rb,
lib/karafka/web/ui/models/watermark_offsets.rb,
lib/karafka/web/ui/pro/controllers/explorer.rb,
lib/karafka/web/ui/pro/controllers/messages.rb,
lib/karafka/web/management/migrations/0_base.rb,
lib/karafka/web/processing/consumers/metrics.rb,
lib/karafka/web/ui/models/metrics/aggregated.rb,
lib/karafka/web/ui/models/subscription_group.rb,
lib/karafka/web/ui/pro/controllers/consumers.rb,
lib/karafka/web/ui/pro/controllers/dashboard.rb,
lib/karafka/web/tracking/helpers/ttls/windows.rb,
lib/karafka/web/ui/controllers/responses/deny.rb,
lib/karafka/web/ui/controllers/responses/file.rb,
lib/karafka/web/ui/helpers/application_helper.rb,
lib/karafka/web/ui/lib/paginations/page_based.rb,
lib/karafka/web/processing/time_series_tracker.rb,
lib/karafka/web/ui/controllers/requests/params.rb,
lib/karafka/web/ui/controllers/responses/render.rb,
lib/karafka/web/ui/lib/paginations/offset_based.rb,
lib/karafka/web/ui/models/metrics/charts/topics.rb,
lib/karafka/web/management/actions/create_topics.rb,
lib/karafka/web/management/actions/delete_topics.rb,
lib/karafka/web/tracking/consumers/contracts/job.rb,
lib/karafka/web/tracking/consumers/listeners/base.rb,
lib/karafka/web/tracking/consumers/listeners/tags.rb,
lib/karafka/web/tracking/producers/listeners/base.rb,
lib/karafka/web/ui/controllers/responses/redirect.rb,
lib/karafka/web/management/actions/clean_boot_file.rb,
lib/karafka/web/tracking/consumers/contracts/topic.rb,
lib/karafka/web/ui/lib/paginations/paginators/base.rb,
lib/karafka/web/ui/lib/paginations/paginators/sets.rb,
lib/karafka/web/management/actions/extend_boot_file.rb,
lib/karafka/web/processing/consumers/schema_manager.rb,
lib/karafka/web/tracking/consumers/contracts/report.rb,
lib/karafka/web/tracking/consumers/listeners/errors.rb,
lib/karafka/web/tracking/consumers/listeners/status.rb,
lib/karafka/web/tracking/producers/listeners/errors.rb,
lib/karafka/web/ui/models/metrics/charts/aggregated.rb,
lib/karafka/web/processing/consumers/contracts/state.rb,
lib/karafka/web/tracking/consumers/listeners/booting.rb,
lib/karafka/web/tracking/consumers/listeners/pausing.rb,
lib/karafka/web/tracking/producers/listeners/booting.rb,
lib/karafka/web/ui/lib/paginations/paginators/arrays.rb,
lib/karafka/web/processing/consumers/aggregators/base.rb,
lib/karafka/web/management/actions/migrate_states_data.rb,
lib/karafka/web/processing/consumers/aggregators/state.rb,
lib/karafka/web/processing/consumers/contracts/metrics.rb,
lib/karafka/web/processing/consumers/contracts/process.rb,
lib/karafka/web/tracking/consumers/contracts/partition.rb,
lib/karafka/web/tracking/consumers/listeners/processing.rb,
lib/karafka/web/tracking/consumers/listeners/statistics.rb,
lib/karafka/web/management/actions/create_initial_states.rb,
lib/karafka/web/processing/consumers/aggregators/metrics.rb,
lib/karafka/web/tracking/consumers/listeners/connections.rb,
lib/karafka/web/ui/lib/paginations/paginators/partitions.rb,
lib/karafka/web/processing/consumers/contracts/topic_stats.rb,
lib/karafka/web/ui/lib/paginations/watermark_offsets_based.rb,
lib/karafka/web/tracking/consumers/contracts/consumer_group.rb,
lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb,
lib/karafka/web/tracking/consumers/contracts/subscription_group.rb,
lib/karafka/web/management/migrations/0_set_initial_consumers_state.rb,
lib/karafka/web/management/migrations/0_set_initial_consumers_metrics.rb,
lib/karafka/web/management/migrations/1706607960_introduce_lag_total_in_states.rb,
lib/karafka/web/management/migrations/1706607960_introduce_lag_total_in_metrics.rb,
lib/karafka/web/management/migrations/1700234522_introduce_waiting_in_consumers_state.rb,
lib/karafka/web/management/migrations/1700234522_introduce_waiting_in_consumers_metrics.rb,
lib/karafka/web/management/migrations/1700234522_remove_processing_from_consumers_state.rb,
lib/karafka/web/management/migrations/1700234522_remove_processing_from_consumers_metrics.rb,
lib/karafka/web/management/migrations/1706611396_rename_lag_total_to_lag_hybrid_in_states.rb,
lib/karafka/web/management/migrations/1706611396_rename_lag_total_to_lag_hybrid_in_metrics.rb,
lib/karafka/web/management/migrations/1704722380_split_listeners_into_active_and_paused_in_states.rb,
lib/karafka/web/management/migrations/1704722380_split_listeners_into_active_and_paused_in_metrics.rb,
lib/karafka/web/management/migrations/1699543515_fill_missing_received_and_sent_bytes_in_consumers_state.rb,
lib/karafka/web/management/migrations/1699543515_fill_missing_received_and_sent_bytes_in_consumers_metrics.rb
Overview
Karafka Web UI + Karafka web monitoring
Defined Under Namespace
Modules: Contracts, Errors, Management, Processing, Tracking, Ui Classes: App, Cli, Config, Deserializer, Inflector, Installer
Constant Summary collapse
- VERSION =
Current gem version
'0.8.2'
Class Method Summary collapse
-
.config ⇒ Karafka::Web::Config
Config instance.
-
.enable! ⇒ Object
Activates all the needed routing and sets up listener, etc This needs to run after the optional configuration of the web component.
-
.gem_root ⇒ String
Root path of this gem.
-
.producer ⇒ WaterDrop::Producer?
Waterdrop messages producer or nil if not yet fully initialized.
-
.setup(&block) ⇒ Object
Sets up the whole configuration.
Class Method Details
.config ⇒ Karafka::Web::Config
Returns config instance.
35 36 37 |
# File 'lib/karafka/web.rb', line 35 def config Config.config end |
.enable! ⇒ Object
Activates all the needed routing and sets up listener, etc This needs to run after the optional configuration of the web component
41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/karafka/web.rb', line 41 def enable! # Make sure config is as expected # It should be configured before enabling the Web UI Contracts::Config.new.validate!(config.to_h) Installer.new.enable! # Inject correct settings for the Web-UI sessions plugin based on the user configuration # We cannot configure this automatically like other Roda plugins because it requires safe # custom values provided by our user App.engine.plugin(:sessions, **config.ui.sessions.to_h) end |
.gem_root ⇒ String
Returns root path of this gem.
24 25 26 |
# File 'lib/karafka/web.rb', line 24 def gem_root Pathname.new(File.('../..', __dir__)) end |
.producer ⇒ WaterDrop::Producer?
Do NOT memoize producer as it may be updated after forking
Returns waterdrop messages producer or nil if not yet fully initialized. It may not be fully initialized until the configuration is done.
19 20 21 |
# File 'lib/karafka/web.rb', line 19 def producer Web.config.producer end |
.setup(&block) ⇒ Object
Sets up the whole configuration
30 31 32 |
# File 'lib/karafka/web.rb', line 30 def setup(&block) Config.configure(&block) end |