我对jruby
和rvm
环境不太满意,因此我无法尝试使用它运行logstash(据说这是最快的方法)。< / p>
我尝试过的事情:
rvm
环境(作为旁注,标准安装脚本会创建一个新的.bash_profile
,当你在Ubuntu上时会禁用标准的.bashrc脚本。这可能会让人感到困惑。像我这样的用户......几个小时后我想知道为什么我的别名不会起作用!)jar xvf /logstash-1.1.4-monolithic.jar
)rvm install 1.9.2
的说明操作了$ ruby logstash.rb
/home/orabig/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- logstash/agent (LoadError)
from /home/orabig/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from logstash.rb:1:in `<main>'
(尽管我还做了一些尝试/错误/重做操作,所以我无法记住确切的命令列表)然后我尝试了几个命令,但没有一个命令工作:
jruby-1.7.0 logstash.rb agent -f ../etc/inout.config -v
而以下几行在几秒后返回:
java -jar (...)/logstash-1.1.4-monolithic.jar agent -f ../etc/inout.config -v
(当使用java命令行调用inout.config文件时,如下所示:)
$ rvm install 1.6.8
(...)
$ rvm use 1.6.8
$ export JRUBY_OPTS=--1.9
$ ruby logstash.rb agent -f ../etc/inout.config -v
$ jruby-1.6.8 logstash.rb agent -f ../etc/inout.config -v
所以我现在基本上被困住了,因为我会越多地尝试随机的东西,我就越害怕搞乱我的配置...
更新:在logstash页面(https://github.com/logstash/logstash)上,看起来它正在使用1.6.8 ruby版本(不过它&#39 ;不清楚,我不确定它是否有任何区别......) 所以我也试过了:
{{1}}
但是当我跑最后两行中的任何一行时都没有发生......
答案 0 :(得分:1)
由于rvm工具会让你知道:你必须在登录shell中才能使用rvm。
因此,运行bash -login
或使用rvm选择并运行您的ruby版本,如下所示:
rvm install 1.7.0 # note that 1.7.0 will also work
export JRUBY_OPTS=--1.9
rvm 1.7.0 do bundle install
rvm 1.7.0 do ruby lib/logstash/runner.rb agent -f ../etc/inout.config -v
这将告诉rvm
使用jruby-1.7.0运行您的logstash代理。