2012-11-13 52 views
1

我對jrubyrvm環境並不是很滿意,所以我在嘗試運行logstash時遇到了問題(據說這是最快的方法)。如何使用JRuby從爆炸jar中運行logstash

我tryed什麼:

  • 我安裝rvm environement(作爲一個側面說明,標準的安裝腳本創建一個新的.bash_profile,當你在Ubuntu其禁用標準的.bashrc腳本,這可以迷惑新用戶喜歡我......我在想了好幾個小時,爲什麼我的「LL」的別名將無法正常工作!)
  • 我在新目錄中的未壓縮logstash(jar xvf /logstash-1.1.4-monolithic.jar
  • 我遵循的說明https://rvm.io/rvm/install/ as rvm install 1.9.2(儘管我也是m ADE一些嘗試/錯誤/恢復操作,所以我不記得命令的確切上市)

然後我試了幾個命令,但他們沒有工作:

$ 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命令行中:)

援引作爲inout.config文件工作

所以我現在基本上卡住了,因爲更多的我會盡量隨意的事情,我怕弄亂我的配置更...

更新:在logstash頁面(HTTPS: //github.com/logstash/logstash),它看起來像它的工作與1.6.8版本的紅寶石(但目前還不清楚,我不知道這有什麼差別......) 所以我也試過:

$ 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 

但是當我運行任的最後兩行沒有任何反應......

+1

得到與logstash幫助的最佳途徑是使用郵件列表或IRC頻道,因爲這是在活躍的社區和專家用戶所在的位置。 –

回答

1

由於rvm工具會讓你知道:你必須在登錄shell中才能使用rvm。

所以,無論是運行bash -login或使用RVM來選擇和運行紅寶石版本如以下完成:

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劑。

+0

嘿,最後一行是我正在尋找的。我工作完美!謝謝... –