Obter versão do logstash

11

Como obter a versão do Logstash?

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

Eu tenho o Logstash em execução no meu sistema. Além disso.

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

Além disso.

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

Mais.

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
Karl Morrison
fonte
2
Primeiro você precisará encontrá-lo.
Michael Hampton
1
@MichaelHampton Onde normalmente reside? O Google não tem sido muito informativo, receio.
Karl Morrison
Eh? Você não instalou? Encontre quem fez. Ou apenas olhe ao redor do sistema nos lugares óbvios.
Michael Hampton
@MichaelHampton Eu não o instalei. Muito comum ao trabalhar em um projeto que outra pessoa configurou.
Karl Morrison

Respostas:

21

O Logstash é uma daquelas coisas que simplesmente não mora onde você espera, e a documentação é realmente leve (leia-se: inexistente) sobre onde eles esperam que você encontre coisas, portanto, se você a instalou a partir de um pacote, pode ser quase impossível encontrar o local esperado documentado. 1

O logstash normalmente reside /opt/logstashe você pode encontrar o logstashbinário na binpasta ( /opt/logstash/bin).

De lá, você pode executar -Vou--version

./logstash -v

ou

./logstash --version

A partir dos seus comentários em outra resposta, parece que ele está em um contêiner de janela de encaixe. Esse é o tipo de coisa que você realmente deveria incluir na sua pergunta original.

Você vai querer fazer uso docker exec. Você precisará usar docker pspara listar seus contêineres e transmiti-los ao seu docker execcomando.

Por exemplo:

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

1 Não quero que isso seja mal interpretado. A documentação do Logstash é excelente - são apenas as partes sobre onde todos os diferentes bits são esperados que são impossíveis de encontrar

Mark Henderson
fonte
1
OBRIGADO! Vejo que a gangue elitista também votou em você! Estou tentando aprender as cordas aqui, mas como você disse e concordo plenamente com você, a documentação é incrivelmente pobre (nesta área) . Eu atualizei a pergunta com mais saída do console!
Karl Morrison
@KarlMorrison Você precisa fazer ./logstash, ou usar o caminho completo, como eu coloquei na minha resposta.
27416 Mark Henderson
1
Demorou cerca de 20 segundos, mas o comando root@elk:/opt/logstash/bin# ./logstash --versionfez o truque! Obrigado! Voto a favor, mas alguém aparentemente te derrubou (?).
Karl Morrison
2
@KarlMorrison Chamar as pessoas de "gangue elitista" não está ajudando. A revisão original da sua pergunta parecia a mesma de muitas outras perguntas que recebemos de pessoas que esperavam que fizéssemos suas pesquisas para elas. Não indicava que você havia tentado ler a documentação. E / opt é um dos lugares óbvios para procurar coisas ...
Michael Hampton
1
Bem, esse é o meu termo para pessoas que não fazem bem à comunidade de troca de pilhas (as piores estão de longe na matemática). Sim, eu estou na documentação há cerca de três dias, antes do Logstash, eu estava sofrendo com o Sensu. Sempre atualizo minhas perguntas após mais informações, se necessário. Além disso, como não sou administrador de sistemas, às vezes não sei realmente o que incluir na pergunta para facilitar, quando as pessoas perguntam, é claro, que adiciono mais informações. No entanto, eu não entendo o assunto sem motivo nem postando respostas zombeteiras. Vou deixar você agora, obrigado novamente!
Karl Morrison
6

No Logstash 5.x no CentOS / Red Hat:

Localização do binário do logstash: /usr/share/logstash/bin/

Então isto lhe dirá a versão: ./logstash -V

Jonesome Restabelecer Monica
fonte
2

Tente find /-type f -name "logstash" 2>/dev/nullencontrar o logstash, mas levará algum tempo para retornar.

Em seguida, com a localização do logstash, execute o binário com a --versionbandeira

Douglas P.
fonte
Está em um contêiner. Este comando não irá funcionar.
EEAA
0

A partir da documentação :

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

(que me levou cerca de 30 segundos para encontrar, a propósito)

EEAA
fonte
1
Doh. Atualizado a pergunta.
Karl Morrison
1
É de uma Dockerfile bastante complicado, que eu não tenho tempo para decodificar e aprender sobre, eu estou ocupado trabalhando ...
Karl Morrison
3
Certo, e parte do seu trabalho é descobrir coisas assim. Como devemos saber onde o logstash está instalado em seu ambiente específico ?
EEAA
1
Sou engenheiro de software / cientista da computação. Anyhows Mark respondeu perfeitamente e melhorou esta comunidade. (Perguntas estúpidas continuará a vir até que sejam respondidas de alguma forma, através de uma melhor documentação ou pessoas como Mark, apenas dizendo)
Karl Morrison
1
@KarlMorrison Entendo que você é um "engenheiro de software / cientista da computação". Eu também. Você está executando tarefas de administração de sistemas, o que torna esse tipo de parte do seu trabalho. Temos uma expectativa de que as pessoas façam perguntas sobre suas próprias pesquisas. Vir aqui para perguntar sobre o logstash e não ter idéia de onde está instalado falha no teste de "pesquisa".
EEAA
0

Meu logstash no Linux 17.04, logstash foi encontrada em: /usr/share/logstash. No entanto, os arquivos de configuração são encontrados em /etc/logstash. Eu tive que copiar os arquivos de configuração para o novo local: /usr/share/logstash/configpara fazer o logstash funcionar.

Julian
fonte
0

Primeiro, você precisará encontrar o caminho para o logstash. Tente procurá-lo executando updatedb && locate logstash/bin. Eu encontrei o meu /usr/share/logstash/bin.

A execução do logstash com os sinalizadores " -v" ou " --version" deve retornar a versão.

Mweya Ruider
fonte
1
Esta resposta assume que você locateinstalou. Se não, as respostas acima deve funcionar :)
Mweya Ruider
-1

Para verificar a versão do logstash no servidor, execute o comando abaixo: cd / usr / share / logstash; ./bin/logstash -V

user459893
fonte
-3

O Logstash mantém sua identidade de versão em um arquivo ruby, ou seja, version.rb No Ubuntu, você pode encontrar o arquivo de versão no seguinte local. Então, use issocat /opt/logstash/lib/logstash/version.rb

user2481458
fonte
Adicionando algum detalhe sobre este melhoraria a resposta
Dave M