Module: DaimonSkycrawlers::Crawler
- Defined in:
- lib/daimon_skycrawlers/crawler.rb,
lib/daimon_skycrawlers/crawler/base.rb,
lib/daimon_skycrawlers/crawler/default.rb
Overview
Name space for crawler related classes
Defined Under Namespace
Class Method Summary collapse
-
.config ⇒ DaimonSkycrawlers::Configuration
Shortcut of DaimonSkycrawlers.configuration.
-
.default_process_name ⇒ String
Default process name.
-
.enqueue_url(url, message = {}) ⇒ void
Enqueue a URL to crawler queue.
-
.queue_name ⇒ String
Queue name for crawler.
-
.run(process_name: default_process_name) ⇒ Object
Run registered crawlers.
Class Method Details
.config ⇒ DaimonSkycrawlers::Configuration
Shortcut of DaimonSkycrawlers.configuration
41 42 43 |
# File 'lib/daimon_skycrawlers/crawler.rb', line 41 def config DaimonSkycrawlers.configuration end |
.default_process_name ⇒ String
Default process name
59 60 61 |
# File 'lib/daimon_skycrawlers/crawler.rb', line 59 def default_process_name "#{config.queue_name_prefix}:url" end |
.enqueue_url(url, message = {}) ⇒ void
This method returns an undefined value.
Enqueue a URL to crawler queue
30 31 32 33 34 |
# File 'lib/daimon_skycrawlers/crawler.rb', line 30 def enqueue_url(url, = {}) [:url] = url config.logger.debug("#{queue_name}: #{url}") SongkickQueue.publish(queue_name, ) end |
.queue_name ⇒ String
Queue name for crawler
50 51 52 |
# File 'lib/daimon_skycrawlers/crawler.rb', line 50 def queue_name "#{config.queue_name_prefix}.url" end |
.run(process_name: default_process_name) ⇒ Object
Run registered crawlers
17 18 19 20 21 22 |
# File 'lib/daimon_skycrawlers/crawler.rb', line 17 def run(process_name: default_process_name) if config.shutdown_interval > 0 DaimonSkycrawlers::Timer.setup_shutdown_timer(config.queue_name_prefix, interval: config.shutdown_interval) end SongkickQueue::Worker.new(process_name, [DaimonSkycrawlers::Consumer::URL]).run end |