Reputation: 2163
I am running Logstash 1.4.1, comparing to the latest, I can't find anywhere in my installation folders contains gem information (versus the latest code in github has those gembag.rb, Gemfile etc..)
My current issue is I need to use several gems that Logstash doesn't have out of box, simply require 'gemname'
seems doesn't work. Could anyone direct me to the readings that explains how to add these 3rd party gems or show me some sample codes which can do this.
Thanks very much!
Upvotes: 4
Views: 12252
Reputation: 846
I think the simplest way is:
/usr/share/logstash/bin/ruby -S gem install <gem-name>
or
/opt/logstash/bin/ruby -S gem install <gem-name>
Work for me on recent version of logstash...
Upvotes: 8
Reputation: 41
For example:
env GEM_HOME=vendor/bundle/jruby/1.9 vendor/jruby/bin/jruby vendor/jruby/bin/gem install zookeeper -v 1.4.11 -V
edit Gemfile:
gem "zookeeper", "1.4.11"
Upvotes: 1
Reputation: 9769
This is what worked for me in logstash 2.0.
env GEM_HOME=/opt/logstash/vendor/bundle/jruby/1.9 /opt/logstash/vendor/jruby/bin/jruby /opt/logstash/vendor/jruby/bin/gem install PACKAGE_NAME -v PACKAGE_VERSION
Then I had to edit /opt/logstash/Gemfile
to include the line:
gem "PACKAGE_NAME", "PACKAGE_VERSION"
I know we also did a yum install ruby-devel
at some point along the way, but I don't remember if that was needed for this to work.
Upvotes: 5
Reputation: 16362
cd /opt/logstash
env GEM_HOME=vendor/bundle/jruby/1.9 GEM_PATH="" java -jar vendor/jar/jruby-complete-1.7.11.jar -S gem install gemname
If you're installing a local gem file, put the path to the file in GEM_PATH.
Upvotes: 9