lib/fluent/plugin/out_tdlog.rb in fluent-plugin-td-0.9.10 vs lib/fluent/plugin/out_tdlog.rb in fluent-plugin-td-0.10.0

- old
+ new

@@ -2,13 +2,22 @@ class TreasureDataLogOutput < BufferedOutput Plugin.register_output('tdlog', self) - HOST = ENV['TD_API_SERVER'] || 'api.treasure-data.com' - PORT = 80 + host = 'api.treasure-data.com' + port = 80 + if e = ENV['TD_API_SERVER'] + host, port_ = e.split(':',2) + port_ = port_.to_i + port = port_ if port_ != 0 + end + + HOST = host + PORT = port USE_SSL = false + BASE_URL = '' def initialize require 'fileutils' require 'tempfile' require 'zlib' @@ -23,11 +32,12 @@ @key = nil @key_num_limit = 5120 # TODO @record_size_limit = 32*1024*1024 # TODO @table_list = [] @auto_create_table = true - @flush_interval = 300 # overwrite default flush_interval from 1min to 5mins + @buffer_type = 'file' # overwrite default buffer_type + @flush_interval = 300 # overwrite default flush_interval to 5mins end def configure(conf) super @@ -99,12 +109,11 @@ end def format_stream(tag, es) out = '' off = out.bytesize - es.each {|event| - record = event.record - record['time'] = event.time + es.each {|time,record| + record['time'] = time if record.size > @key_num_limit raise "Too many number of keys (#{record.size} keys)" # TODO include summary of the record end