gpt4 book ai didi

ruby - 如何使用 JRuby 从 exploded jar 运行 logstash

转载 作者:太空宇宙 更新时间:2023-11-03 17:00:59 26 4
gpt4 key购买 nike

我不太适应 jrubyrvm 环境,所以我在尝试用它运行 logstash 时遇到了麻烦(据说这是最快的方法所以)。

我尝试过的:

  • 我安装了 rvm 环境(附带说明,标准安装脚本会创建一个新的 .bash_profile,当您在 Ubuntu 上时它会禁用标准 .bashrc 脚本. 这会让像我这样的新用户感到困惑...我想了好几个小时为什么我的“ll”别名不起作用!)
  • 我在新目录中解压了 logstash (jar xvf/logstash-1.1.4-monolithic.jar)
  • 我已按照 https://rvm.io/rvm/install/ 中的说明进行操作作为 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

(inout.config 文件在使用 java 命令行调用时有效:)

java -jar (...)/logstash-1.1.4-monolithic.jar agent -f ../etc/inout.config -v

所以我现在基本上卡住了,因为我尝试随机的东西越多,我就越害怕弄乱我的配置......

更新: 在 logstash 页面 (https://github.com/logstash/logstash) 上,看起来它正在使用 1.6.8 ruby​​ 版本(但是它不清楚,我'我不确定它是否有任何区别......)所以我也试过了:

  $ 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

但是当我运行最后两行中的任何一行时都没有任何反应......

最佳答案

因为 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 代理。

关于ruby - 如何使用 JRuby 从 exploded jar 运行 logstash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13362043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com