class LogStash::Inputs::Azuretopic
Reads events from Azure topics
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
# File lib/logstash/inputs/azuretopic.rb, line 22 def initialize(*args) super(*args) end
Public Instance Methods
process(output_queue)
click to toggle source
# File lib/logstash/inputs/azuretopic.rb, line 35 def process(output_queue) message = @azure_service_bus.receive_subscription_message(@topic ,@subscription, { :peek_lock => true, :timeout => 1 } ) if message codec.decode(message.body) do |event| output_queue << event end # codec.decode @azure_service_bus.delete_subscription_message(message) end rescue LogStash::ShutdownSignal => e raise e rescue => e @logger.error("Oh My, An error occurred.", :exception => e) if message and message.delivery_count > @deliverycount @azure_service_bus.delete_subscription_message(message) end end
register()
click to toggle source
# File lib/logstash/inputs/azuretopic.rb, line 27 def register Azure.configure do |config| config.sb_namespace = @namespace config.sb_access_key = @access_key end @azure_service_bus = Azure::ServiceBus::ServiceBusService.new end
run(output_queue)
click to toggle source
# File lib/logstash/inputs/azuretopic.rb, line 53 def run(output_queue) while true process(output_queue) end # loop end
teardown()
click to toggle source
# File lib/logstash/inputs/azuretopic.rb, line 60 def teardown end