Logstash - не удалось найти исполняемый java файл

У меня есть ELK, установленный на виртуальной машине в моем ноутбуке. Вкладка "Ресурсы" запущена и запущена.

./bin/logstash -f logstash-filter.conf gives me the below error Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME.

Я попытался настроить JAVA_HOME и $ PATH, но проблема остается постоянной. Я что-то пропустил?

 which java
/usr/bin/java


java -version
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

echo $JAVA_HOME
/usr/local/java/jdk1.8.0_45

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/divija/bin:/usr/local/java/jdk1.8.0_45/bin

logstash-filter.conf

input { stdin { } }

filter {
  grok {
    match => { "message" => "%{COMBINEDAPACHELOG}" }
  }
  date {
    match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]
  }
}

output {
  elasticsearch { host => localhost 
    index=>"myindex"
}
  stdout { codec => rubydebug }`enter code here`
}

Ответ 1

Мне пришлось

export JAVACMD = `which java`

чтобы сделать эту работу.

Ответ 2

Я знаю, это старая нить, но у меня тоже была такая же проблема, и я делал очень глупо.

Я обновил my $JAVA_HOME var в /etc/environment, но не перезагружал файл, из-за которого он не вступил в силу, а запуск source /etc/environment решил мою проблему.