如何将本地 gem 依赖项添加到自定义 Logstash 插件



我有一个 ruby gem 文件,它是实际的 Logstash 插件,我有另一个 Logstash 插件 gem 需要的 gem。我如何将宝石放入我的 Logstash 中,所以当我这样做时

require "gem_name"

它不是说"找不到gem_name"吗?

这对我有用:

path/to/logstash/logstash-plugin install --no-verify --local localxxx.gem

确保您的 gem 文件 (localxxx.gem) 位于 logstash 目录中。

与往常一样,将您的本地 gem 作为依赖项包含在插件中。然后,在安装插件之前,在 Logstash 中安装本地依赖项,如下所示:

/path/to/logstash/logstash-plugin install --no-verify /path/to/local/gem

然后安装您的插件

/path/to/logstash/logstash-plugin install /path/to/local/plugin

将一行包含依赖项的行添加到您的 gemspec(在名为 plugin-name.gemspec 的插件文件夹中)。 例如,如果您的插件需要 rest-client:

s.add_runtime_dependency "rest-client", '>= 1.8.0'

您可以在此处找到具有依赖项的有效 gemspec 文件的示例。在 rubygems.org 上查看您选择的插件以查找有效的版本声明。

声明所有依赖项后,运行bundle install ,使用 gem build your-plugin-name.gemspec 构建 gem。然后安装并测试它:bin/logstash-plugin install logstash-filter-mypluginname.gem .

我强烈建议使用 RVM 来避免 ruby 版本问题。您可能还需要考虑坚持使用本教程,使其变得容易得多。如果您需要进一步的帮助,请告诉我。

相关内容

  • 没有找到相关文章

最新更新