Логсташ ожидал одного из #

В настоящее время я пытаюсь запустить Lostash со следующим файлом конфигурации:

input { 
    stdin { } 
} 
output { 
    rabbitmq { 
        exchange => "test_exchange" 
        exchange_type => "fanout" 
        host => "172.17.x.x" 
    } 
}

Однако я получаю сообщение об ошибке:

logstash agent --configtest -f -config.conf

дает мне:

Ошибка: ожидается одно из #, } в строке 1, столбце 105 (байт 105) после вывода { rabbitmq { exchange => test_exchange exchange_type => fanout host => 172.17

Кажется, у logstash есть проблема, когда я помещаю IP-адрес в поле хоста. Что не так с моим конфигом?


person Heschoon    schedule 27.04.2015    source источник
comment
У вас, вероятно, есть какой-то мусорный символ в конце вашего файла (или там, где заканчивается смещение 105). Если я скопирую приведенный выше фрагмент файла конфигурации в новый файл, Logstash им доволен. Передача вашего файла hexdump -C должна облегчить обнаружение ошибки.   -  person Magnus Bäck    schedule 27.04.2015
comment
Нет, у меня все еще та же проблема, даже после воссоздания файла с нуля или использования опции -e.   -  person Heschoon    schedule 27.04.2015
comment
Хорошо, кажется, это как-то связано с тем, как я создал config.conf; Я использовал эхо-содержимое › config.conf, но проблема в том, что я заключаю текст, содержащий двойные кавычки, в двойные кавычки... Окружение содержимого одинарными кавычками при создании файла config.conf решило мою проблему.   -  person Heschoon    schedule 27.04.2015


Ответы (2)


Вся проблема была в методе, который вы использовали при создании файла config.conf.

Вы использовали следующую команду:

echo "input {stdin{}} output{rabbitmq{exchange=>"test_exchange" exchange_type =>"fanout" host=>"172.17.x.x"}}"

Окружать строку, содержащую двойные кавычки, двойными кавычками - не очень хорошая идея...

Используя одинарные кавычки вокруг строки, проблема решена...

echo 'input {stdin{}} output{rabbitmq{exchange=>"test_exchange" exchange_type =>"fanout" host=>"172.17.x.x"}}'
person Heschoon    schedule 27.04.2015

Настоящая проблема заключается в том, что logstash неправильно сообщает о проблемах доступа к файлу конфигурации. Вот проблема на github:

https://github.com/elastic/logstash/issues/2571

Просто проверьте права доступа, и все будет готово.

person alfredocambera    schedule 12.01.2016