class Fluent::Plugin::AzureEventHubsOutputBuffered
Constants
- DEFAULT_BUFFER_TYPE
Public Instance Methods
configure(conf)
click to toggle source
Calls superclass method
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 31 def configure(conf) compat_parameters_convert(conf, :buffer, :inject) super case @type when 'amqps' raise NotImplementedError else require_relative 'azureeventhubs/http' @sender = AzureEventHubsHttpSender.new(@connection_string, @hub_name, @expiry_interval,@proxy_addr,@proxy_port,@open_timeout,@read_timeout) end raise Fluent::ConfigError, "'tag' in chunk_keys is required." if not @chunk_key_tag end
enrich_record(tag, time, record)
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 84 def enrich_record(tag, time, record) if @include_tag record['tag'] = tag end if @include_time record[@tag_time_name] = time end end
format(tag, time, record)
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 44 def format(tag, time, record) record = inject_values_to_record(tag, time, record) [tag, time, record].to_msgpack end
formatted_to_msgpack_binary?()
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 49 def formatted_to_msgpack_binary? true end
write(chunk)
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 53 def write(chunk) @batch ? write_batched(chunk) : write_singularly(chunk) end
write_batched(chunk)
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 67 def write_batched(chunk) records = [] chunk.msgpack_each { |tag, time, record| if @print_records p record.to_s end enrich_record(tag, time, record) records << record } records.each_slice(@max_batch_size).each { |group| payload = group @sender.send_w_properties(payload, @message_properties) } end
write_singularly(chunk)
click to toggle source
# File lib/fluent/plugin/out_azureeventhubs_buffered.rb, line 57 def write_singularly(chunk) chunk.msgpack_each { |tag, time, record| if @print_records p record.to_s end enrich_record(tag, time, record) @sender.send_w_properties(record, @message_properties) } end