Module: Lepus
- Defined in:
- lib/lepus.rb,
lib/lepus/cli.rb,
lib/lepus/web.rb,
lib/lepus/timer.rb,
lib/lepus/message.rb,
lib/lepus/process.rb,
lib/lepus/testing.rb,
lib/lepus/version.rb,
lib/lepus/web/api.rb,
lib/lepus/web/app.rb,
lib/lepus/consumer.rb,
lib/lepus/producer.rb,
lib/lepus/consumers.rb,
lib/lepus/processes.rb,
lib/lepus/producers.rb,
lib/lepus/publisher.rb,
lib/lepus/middleware.rb,
lib/lepus/prometheus.rb,
lib/lepus/supervisor.rb,
lib/lepus/app_executor.rb,
lib/lepus/configuration.rb,
lib/lepus/rails/railtie.rb,
lib/lepus/processes/base.rb,
lib/lepus/web/aggregator.rb,
lib/lepus/connection_pool.rb,
lib/lepus/consumers/stats.rb,
lib/lepus/producers/hooks.rb,
lib/lepus/consumers/config.rb,
lib/lepus/consumers/worker.rb,
lib/lepus/message/metadata.rb,
lib/lepus/middleware_chain.rb,
lib/lepus/process_registry.rb,
lib/lepus/producers/config.rb,
lib/lepus/testing/exchange.rb,
lib/lepus/web/respond_with.rb,
lib/lepus/consumers/handler.rb,
lib/lepus/supervisor/pidfile.rb,
lib/lepus/supervisor/signals.rb,
lib/lepus/web/management_api.rb,
lib/lepus/supervisor/pidfiled.rb,
lib/lepus/producers/definition.rb,
lib/lepus/prometheus/collector.rb,
lib/lepus/message/delivery_info.rb,
lib/lepus/supervisor/maintenance.rb,
lib/lepus/testing/rspec_matchers.rb,
lib/lepus/testing/message_builder.rb,
lib/lepus/consumers/stats_registry.rb,
lib/lepus/consumers/worker_factory.rb,
lib/lepus/process_registry/backend.rb,
lib/lepus/supervisor/children_pipes.rb,
lib/lepus/consumers/middleware_chain.rb,
lib/lepus/consumers/middlewares/json.rb,
lib/lepus/producers/middleware_chain.rb,
lib/lepus/producers/middlewares/json.rb,
lib/lepus/prometheus/instrumentation.rb,
lib/lepus/supervisor/lifecycle_hooks.rb,
lib/lepus/supervisor/registry_cleaner.rb,
lib/lepus/consumers/middlewares/unique.rb,
lib/lepus/producers/middlewares/header.rb,
lib/lepus/producers/middlewares/unique.rb,
lib/lepus/process_registry/file_backend.rb,
lib/lepus/consumers/middlewares/max_retry.rb,
lib/lepus/process_registry/message_builder.rb,
lib/lepus/consumers/middlewares/honeybadger.rb,
lib/lepus/process_registry/rabbitmq_backend.rb,
lib/lepus/producers/middlewares/correlation_id.rb,
lib/lepus/producers/middlewares/instrumentation.rb,
lib/lepus/consumers/middlewares/exception_logger.rb
Defined Under Namespace
Modules: AppExecutor, Consumers, Primitive, Processes, Producers, Prometheus, Testing, Timer, Web
Classes: CLI, Configuration, ConnectionPool, ConnectionPoolError, ConnectionPoolTimeoutError, Consumer, Error, InvalidConsumerConfigError, InvalidConsumerReturnError, InvalidProducerConfigError, LogSubscriber, MaxRecoveryAttemptsExhaustedError, Message, Middleware, MiddlewareChain, Process, ProcessRegistry, Producer, Publisher, Railtie, ShutdownError, Supervisor
Constant Summary
collapse
- DEFAULT_LOGGER =
Logger.new($stdout)
- VERSION =
"0.1.0"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.logger ⇒ Object
69
70
71
|
# File 'lib/lepus.rb', line 69
def logger
@logger ||= DEFAULT_LOGGER
end
|
Class Method Details
.config ⇒ Object
92
93
94
|
# File 'lib/lepus.rb', line 92
def config
@config ||= Configuration.new
end
|
96
97
98
|
# File 'lib/lepus.rb', line 96
def configure
yield config
end
|
.eager_load_consumers! ⇒ Object
81
82
83
84
85
86
87
88
89
90
|
# File 'lib/lepus.rb', line 81
def eager_load_consumers!
return false unless Lepus.config.consumers_directory.exist?
Dir[config.consumers_directory.join("**/*.rb")].map { |path| Pathname.new(path) }.each do |path|
next unless path.extname == ".rb"
require(path.expand_path.to_s)
end
true
end
|
.instrument(channel, **options, &block) ⇒ Object
73
74
75
76
77
78
79
|
# File 'lib/lepus.rb', line 73
def instrument(channel, **options, &block)
if defined?(ActiveSupport::Notifications)
ActiveSupport::Notifications.instrument("#{channel}.lepus", **options, &block)
else
yield(options.dup)
end
end
|