Logstash 无法找到 JRuby
Logstash Unable to find JRuby
我从 here 下载 logstash 2.0.0。
测试输出:
D:\logstash\bin>logstash -e 'input { stdin { } } output { stdout {} }'
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
windows还提醒我“如何打开.rb
”,我安装了ruby,但不熟悉
因为它说"If you are a user, this is a bug.",所以我认为我不需要安装JRuby。 Google 也别告诉我怎么修复这个bug。
我该如何解决这个问题?
=================================
setup.bat
同样的错误:
D:\logstash\bin>setup.bat
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
更新:
在我将 .rb
与 ruby.exe
关联后,错误更改为:
D:\logstash\bin>logstash
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
C:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file --
bundler (LoadError)
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from D:/logstash/lib/bootstrap/bundler.rb:44:in `setup!'
from D:/logstash/lib/bootstrap/environment.rb:47:in `<main>'
我找到了解决方案。
我在github中克隆了repo,并尝试直接使用它,结果出现了这个错误。
如果您克隆了 repo,您需要先 bootstrap 您的系统,使用 rake boostrap
,但这通常是针对开发人员的。
对于用户来说,最好获取 https://www.elastic.co/downloads/logstash
提供的软件包
这在 2.3.4 中仍然存在!
这是 .zip 下载的问题,而不是 tar.gz。前者缺少 vendor/jruby 目录。从 tar.gz 下载。
我尝试过下载并解压 zip 文件而不是 .tar.gz 等解决方案,但它似乎没有用。在我的例子中,我的文件路径中有一个 space,是的 SPACE。
在我的例子中,我将 logstash 放在 "D:\Program Files\ElasticSearch\logstash" 中。请注意 "Program Files" 文件夹包含 SPACE。我将 logstash 复制到新文件夹 "ProgramFiles"(没有 space),所以路径现在是 "D:\ProgramFiles\ElasticSearch\logstash" 并启动 setup.bat 或logstash.bat。并且有效。
简答:确保文件路径 您的日志存储 不包含任何 spaces.
第一次 - 我使用 "Extract All" 选项解压缩了 "kibana" 和 "logstash" 压缩文件。
我遇到了上述错误。
但是当我使用 "7zip" 解压缩这些压缩文件时,首先,它花费的时间更少,其次,它按预期工作。
尝试使用 "7zip".
解压缩
使用 Windows powershell 启动 logstash。为我工作
.\logstash-7.9.0\bin\logstash -f .\simpleconf.conf
我从 here 下载 logstash 2.0.0。 测试输出:
D:\logstash\bin>logstash -e 'input { stdin { } } output { stdout {} }'
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
windows还提醒我“如何打开.rb
”,我安装了ruby,但不熟悉
因为它说"If you are a user, this is a bug.",所以我认为我不需要安装JRuby。 Google 也别告诉我怎么修复这个bug。
我该如何解决这个问题?
=================================
setup.bat
同样的错误:
D:\logstash\bin>setup.bat
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
更新:
在我将 .rb
与 ruby.exe
关联后,错误更改为:
D:\logstash\bin>logstash
Unable to find JRuby.
If you are a user, this is a bug.
If you are a developer, please run 'rake bootstrap'. Running 'rake' requires the 'ruby' program be available.
C:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file --
bundler (LoadError)
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from D:/logstash/lib/bootstrap/bundler.rb:44:in `setup!'
from D:/logstash/lib/bootstrap/environment.rb:47:in `<main>'
我找到了解决方案。
我在github中克隆了repo,并尝试直接使用它,结果出现了这个错误。
如果您克隆了 repo,您需要先 bootstrap 您的系统,使用 rake boostrap
,但这通常是针对开发人员的。
对于用户来说,最好获取 https://www.elastic.co/downloads/logstash
这在 2.3.4 中仍然存在!
这是 .zip 下载的问题,而不是 tar.gz。前者缺少 vendor/jruby 目录。从 tar.gz 下载。
我尝试过下载并解压 zip 文件而不是 .tar.gz 等解决方案,但它似乎没有用。在我的例子中,我的文件路径中有一个 space,是的 SPACE。
在我的例子中,我将 logstash 放在 "D:\Program Files\ElasticSearch\logstash" 中。请注意 "Program Files" 文件夹包含 SPACE。我将 logstash 复制到新文件夹 "ProgramFiles"(没有 space),所以路径现在是 "D:\ProgramFiles\ElasticSearch\logstash" 并启动 setup.bat 或logstash.bat。并且有效。
简答:确保文件路径 您的日志存储 不包含任何 spaces.
第一次 - 我使用 "Extract All" 选项解压缩了 "kibana" 和 "logstash" 压缩文件。 我遇到了上述错误。
但是当我使用 "7zip" 解压缩这些压缩文件时,首先,它花费的时间更少,其次,它按预期工作。
尝试使用 "7zip".
解压缩使用 Windows powershell 启动 logstash。为我工作
.\logstash-7.9.0\bin\logstash -f .\simpleconf.conf