Sha256: a967cf552be2df12baf22eb7b4eefb6573d1894a7e27657f9ec93be158d78ae6

Contents?: true

Size: 925 Bytes

Versions: 1

Compression:

Stored size: 925 Bytes

Contents

require 'helper'

module ParserTest
  include Fluent

  def str2time(str_time, format = nil)
    if format
      Time.strptime(str_time, format).to_i
    else
      Time.parse(str_time).to_i
    end
  end
end

class ElasticsearchParserTest < Test::Unit::TestCase
  include ParserTest
  
  def setup
    TextParser.new
    @parser = TextParser::TEMPLATE_REGISTRY.lookup('elasticsearch').call
  end

  def test_call
    time, record = @parser.call('[2014-03-18 18:27:34,897][INFO ][http                     ] [es01] bound_address {inet[/0:0:0:0:0:0:0:0:9200]}, publish_address {inet[/10.0.0.185:9200]}')

    assert_equal(str2time('2014-03-18 18:27:34,897', '%Y-%m-%d %H:%M:%S,%L'), time)
    assert_equal({
      'log_level' => 'INFO',
      'log_type' => 'http',
      'node_name' => 'es01',
      'message' => 'bound_address {inet[/0:0:0:0:0:0:0:0:9200]}, publish_address {inet[/10.0.0.185:9200]}'
    }, record)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fluent-parser-elasticsearch-0.0.1 test/plugin/test_parser_elasticsearch.rb