logstash自定义插件install时报错

logstash自定义插件install时报错
报: is built in to Ruby, and can't be cached because your Gemfile doesn't have any sources that contain it.
Plugin not found, aborting
ERROR: Installation Aborted, message: Missing gem file '---.gem'.

img

下面是我想到的解决方案,你可以试一下, 如果还不可以及时告诉我, 创作不易, 记得给个采纳哦!!!!

  1. 错误原因:logstash插件安装时未指定源

这个错误提示中提到 Gemfile 缺少包含对应 gem 包的源地址,通常是由于我们在安装插件时没有指定源导致的。

  1. 解决方法:指定源地址进行安装

我们可以通过在 logstash-plugin 安装命令中指定源地址来解决这个问题。具体步骤如下:

  • 执行以下命令格式,指定源地址和需要安装的插件名称:
bin/logstash-plugin install --no-verify --source source_address logstash-output-plugin_name

其中 logstash-output-plugin_name 为需要安装的插件名称,例如 logstash-output-elasticsearch。

  • 替换 source_address 为具体的源地址

需要注意的是,我们需要将 source_address 替换为一个存在且可用的源地址(注意加上引号);如果不知道可用的源地址,可以在 Gemfile 中添加一行:

source "https://rubygems.org"

以使用默认的 RubyGems 源作为源地址。

  1. 其他提示:缺少对应的 gem 包文件

最后,还有一个可能会遇到的错误是,提示缺少对应的 gem 包文件。这种情况下,我们需要先下载对应的 gem 包文件并放到合适的位置,再执行安装命令。

这个错误可能是由于缺少必要的依赖项或者Gemfile文件中没有指定正确的源。你可以尝试以下步骤解决该问题:

  1. 确认你的Gemfile文件中包含了正确的源,例如:
source "https://rubygems.org"
  1. 确认你的插件依赖项已经安装,可以使用以下命令安装:
bundle install
  1. 如果依赖项已经安装,可以尝试重新安装插件,使用以下命令:
bin/logstash-plugin install /path/to/your/plugin.gem

如果以上步骤都没有解决问题,你可以尝试查看更详细的错误信息,以便更好地定位问题。

Logstash系列之--JAVA自定义插件
可以学习下
https://blog.csdn.net/m0_37911384/article/details/105220250

谢谢大家的解决方法,都试过了,并不能解决。三天都安装失败,昨天中午突然突然能打包成功,不知道什么原因

以下回答来自chatgpt
这个错误可能是因为logstash无法找到特定的gem源。解决这个问题你可以尝试以下几个方法:

  1. 手动安装gem文件

从你的logstash自定义插件路径中找到对应的.gem文件,用以下命令手动安装:

gem install /your/path/to/plugin.gem
  1. 修改logstash Gemfile

进入logstash的Gemfile中,添加你的特定gem源。对于RubyGems源,请按照以下方式进行修改:

source 'https://rubygems.org'

# Add your custom source here
source 'https://your-custom-source' do
  gem 'your-custom-plugin-gem'
end

gem "logstash-core"
gem "logstash-core-plugin-api"
...

请确保你的logstash版本和你要安装的插件版本兼容。修改完成后使用bundle update命令重新安装。

  1. 使用国内的ruby镜像源

由于众所周知的原因,连接国外的gem源可能会有问题。你可以尝试使用国内的ruby镜像源进行安装:

# 修改Gemfile文件,添加如下代码
source 'https://gems.ruby-china.org/'

gem 'your-custom-plugin-gem'

然后,在logstash目录下,先执行bundle config命令将gem源修改为国内源,再执行bundle install命令重新安装:

bundle config mirror.https://rubygems.org https://gems.ruby-china.org

bundle install

任意一种方法成功后,你应该能够成功安装自定logstash插件了。希望这能帮到你。

ERROR: Installation Aborted, message: Missing gem file '---.gem'.
gem缺失吧,是不是你没安装上