Получить версию logstash

11

Как получить версию Logstash?

root@elk:/usr/share/elasticsearch# bin/logstash --help
bash: bin/logstash: No such file or directory

В моей системе запущен Logstash. Также.

root@elk:/# logstash -V
bash: logstash: command not found

Также.

root@elk:/# ps aux | grep logstash
logstash  1725 45.3  8.5 1942860 175936 ?      SNl  22:03   0:35 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/opt/logstash -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/opt/logstash -XX:HeapDumpPath=/opt/logstash/heapdump.hprof -Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log
root      1777  0.0  0.0   8860   636 ?        S+   22:05   0:00 grep --color=auto logstash

Больше.

root@elk:/opt/logstash/bin# ls
logstash  logstash.bat  logstash.lib.sh  plugin  plugin.bat  rspec  rspec.bat  setup.bat
root@elk:/opt/logstash/bin# logstash -V
bash: logstash: command not found
Карл Моррисон
источник
2
Сначала вам нужно найти его.
Майкл Хэмптон
1
@MichaelHampton Где это обычно проживает? Боюсь, Google не очень информативен.
Карл Моррисон
А? Вы не установили это? Найдите того, кто сделал. Или просто посмотрите вокруг системы в очевидных местах.
Майкл Хэмптон
@MichaelHampton Я не установил его. Довольно часто при работе над проектом кто-то другой имеет настройку.
Карл Моррисон

Ответы:

21

Logstash - это одна из тех вещей, которые просто не совсем живут там, где вы ожидаете, и документация по-настоящему легка (читай: не существует), где они ожидают, что вы что-то найдете, поэтому, если вы установили ее из пакет, то это может быть почти невозможно найти ожидаемое местоположение задокументировано. 1

Logstash обычно живет в, /opt/logstashи вы можете найти logstashдвоичный файл в binпапке ( /opt/logstash/bin).

Оттуда вы можете запустить -Vили--version

./logstash -v

или

./logstash --version

Из ваших комментариев к другому ответу может показаться, что это находится в контейнере Docker. Это то, что вы действительно должны включить в свой первоначальный вопрос.

Вы хотите использовать docker exec. Вам нужно будет использовать docker psсписок ваших контейнеров и передать это своей docker execкоманде.

Например:

docker exec -d elk_container /opt/logstash/bin/logstash --version

1 Я не хочу, чтобы это было неправильно истолковано. Документация Logstash превосходна - это просто части о том, где ожидаются разные биты, которые невозможно найти

Марк Хендерсон
источник
1
СПАСИБО! Я вижу, что элитарная банда тоже голосует за вас! Я пытаюсь изучить веревки здесь, но, как вы сказали, и я полностью с вами согласен, документация невероятно плохая (в этой области) . Я обновил вопрос с большим выходом из консоли!
Карл Моррисон
@KarlMorrison Вы должны сделать ./logstash, или использовать полный путь, как я указал в своем ответе.
Марк Хендерсон
1
Прошло около 20 секунд, но команда root@elk:/opt/logstash/bin# ./logstash --versionсделала свое дело! Спасибо! Я проголосовал против, но кто-то, по-видимому, проголосовал против вас (?).
Карл Моррисон
2
@KarlMorrison Называть людей «элитарной бандой» вам не помогает. Первоначальная редакция вашего вопроса выглядела так же, как и многие другие вопросы, которые мы получаем от людей, ожидающих, что мы проведем их исследование для них. Это не показывает , что вы уже пробовали читать документацию. И / opt является одним из очевидных мест для поиска вещей ...
Майкл Хэмптон
1
Ну, это мой термин для людей, которые не приносят пользы сообществу обмена стеками (худшее на данный момент в математике). Да, я был в документации около трех дней, до Logstash я страдал от Sensu. Я всегда обновляю свои вопросы после получения дополнительной информации, если это необходимо. Кроме того, поскольку я не являюсь системным администратором, я иногда не знаю, что включить в вопрос, чтобы было легче, когда люди спрашивают, конечно, я добавляю больше информации. Однако я не берусь закрывать тему без причины и не публиковать насмешливые ответы. Оставлю вас сейчас, спасибо еще раз!
Карл Моррисон
6

На Logstash 5.x на CentOS / Red Hat:

Расположение двоичного файла logstash: /usr/share/logstash/bin/

Тогда это скажет вам версию: ./logstash -V

Jonesome Восстановить Монику
источник
2

Попытайтесь find /-type f -name "logstash" 2>/dev/nullнайти logstash, для возврата потребуется некоторое время.

Затем с расположением logstash запускаем бинарный файл с --versionфлагом

Дуглас П.
источник
Это в контейнере докера. Эта команда не будет работать.
EEAA
0

Из документации :

-V, --version Display the version of Logstash.

(кстати, это заняло у меня около 30 секунд)

EEAA
источник
1
Doh. Обновил вопрос.
Карл Моррисон
1
Это из довольно сложного Dockerfile, который я не успеваю расшифровать и узнать, я занят работой ...
Карл Моррисон
3
Правильно, и частью твоей работы является выяснение таких вещей. Как мы должны знать, где logstash установлен в вашей конкретной среде ?
EEAA
1
Я инженер-программист / ученый. Так или иначе, Марк отлично ответил и улучшил это сообщество. (Глупые вопросы будут продолжаться до тех пор, пока на них не будут получены какие-либо ответы, через лучшую документацию или людей, подобных Марку, просто скажу)
Карл Моррисон
1
@KarlMorrison Я понимаю, что вы «инженер-программист / ученый». Я тоже. Вы выполняете задачи системного администрирования, что делает подобные вещи частью вашей работы. От людей, которые задают вопросы, мы ожидаем, что они проведут собственное исследование. Приходить сюда, чтобы спросить о logstash, и не имея представления о том, где он установлен, не проходит «исследовательский» тест.
EEAA
0

Мой logstash на Linux 17.04, logstash был найден: /usr/share/logstash. Тем не менее, файлы конфигурации находятся по адресу /etc/logstash. Мне пришлось скопировать файлы конфигурации в новое место: /usr/share/logstash/configзаставить работать logstash.

юлианский
источник
0

Во-первых, вам нужно найти путь к logstash. Попробуйте найти его, запустив updatedb && locate logstash/bin. Я нашел свой в /usr/share/logstash/bin.

Запуск logstash с флагами " -v" или " --version" должен вернуть версию.

Mweya Ruider
источник
1
Этот ответ предполагает, что вы locateустановили. Если нет, ответы выше должны работать :)
Mweya Ruider
-1

Чтобы проверить версию logstash с сервера, выполните следующую команду: cd / usr / share / logstash; ./bin/logstash -V

user459893
источник
-3

Logstash сохраняет свою версию в файле ruby, т.е. version.rb В Ubuntu вы можете найти файл версии в следующем месте. Итак, используйте этоcat /opt/logstash/lib/logstash/version.rb

user2481458
источник
Добавление некоторых подробностей об этом улучшило бы ответ
Дэйв М