Ввод файла logstash и проблема с анализом кодека avro - PullRequest
0 голосов
/ 19 октября 2018

Все, у меня возникли проблемы с совместным использованием ввода файла Logstash и кодека avro.Идея состоит в том, чтобы прочитать файл avro и извлечь объект json, а затем вставить его в Elasticsearch.

Ниже приведен мой файл конфигурации.

  input {
  file {
  path => "C:/dev/testData/xxx/weather.avro"
  start_position => "beginning"
  codec => avro {
        schema_uri => "C:/dev/testData/xxx/weather.avsc"
    }

  sincedb_path=>"C:/dev/testData/property/db"

  }
 }

output {

  stdout { codec => rubydebug }
}

Вот журнал:

2018-10-18T13: 45: 09,523] [DEBUG] [filewatch.tailmode.handlers.grow] read_to_eof: получить чанк [2018-10-18T13: 45: 09,599] [DEBUG] [logstash.inputs.file] Полученоline {: path => "C: /dev/testData/chewer/weather.avro",: text => "Obj \ x01 \ x04 \ x14avro.codec \ bnull \ x16avro.schema \ xF2 \ x02 {\" type \": \" запись \ "\ "имя \": \ "Погода \", \ "пространства имен \": \ "тест \", \ "поля \": [{\ "имя \": \" станции \"\ "Тип \": \ "строка \"}, {\ "имя \": \ "время \", \ "типа \": \ "длинной \"}, {\ "имя \": \"temp \ ", \" type \ ": \" int \ "}], \" doc \ ": \" Чтение погоды. \ "} \ x00 \ xB0 \ x81 \ xB3 \ xC4"} [2018-10-18T13: 45: 10,155] [ОШИБКА] [filewatch.tailmode.handlers.grow] read_to_eof: общая ошибка чтения C: /dev/testData/chewer/weather.avro {"error" => "#", "backtrace" =>["org / jruby / ext / stringio / StringIO.java: 788: in read'", "C:/logstash-6.4.0/vendor/bundle/jruby/2.3.0/gems/avro-1.8.2/lib/avro/io.rb:106:in read '", "C: /logstash-6.4.0/vendor/bundle/jruby/2.3.0/gems/avro-1.8.2 / Библиотека / Avro / IO.rb: 93: in read_bytes'", "C:/logstash-6.4.0/vendor/bundle/jruby/2.3.0/gems/avro-1.8.2/lib/avro/io.rb:99:in read_string '"]} Тестовые файлы взяты из собственного репозитория Avro (weather.avro)

Я использую avro 1.8.2 и logstash-codec-avro-3.2.3-java,Пожалуйста, порекомендуйте.Гордон

...