在线安装:
bin/logstash-plugin install logstash-filter-json_encode
这里可能会保一个mmap 的错误
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005e9990000, 7892041728, 0) failed; error='Cannot allocate memory' (errno=12)
猜测安装的时候会启动一个jvm程序,同样也要启动虚拟机,然后申请内存,所以启动不起来
一提到jvm 的时候就想到了jvm.options 里面是配置的logstash启动时候的参数。一般都配置物理内存的一半,这里怀疑logstash-plugin 启动的时候还会申请相同大小的内存,所以报错。
所以这块我们可以暂时先把logstash 关掉。然后安装插件
离线安装:
1.如果有的logstash 有相关的组件
可以用./bin/logstash-plugin prepare-offline-pack logstash-filter-json_encode
类似与将logstash-filter-json_encode 打包
相关提示
Offline package created at: /data/server/logstash-7.5.0/logstash-offline-plugins-7.5.0.zip
You can install it with this command `bin/logstash-plugin install file:///data/server/logstash-7.5.0/logstash-offline-plugins-7.5.0.zip`
意思就是说你可以把这个zip包 以这种方式安装
2.但是如果没有logstash 已经安装了这个插件呢。
当打开 logstash-offline-plugins-7.5.0.zip文件时候会有两个文件
dependencies 空文件夹
logstash-filter-json_encode-3.0.3-java.gem 文件(版本可能不同)
所以理论上我们找到这个java.gem 文件就可以
那去哪找呢,我们在没有网络install 的时候的提示
Unable to download data from https://rubygems.org
那意思就是应该去这个网站去找喽(https://rubygems.org)
然后可以搜索一下我们的这个插件 logstash-filter-json_encode
同样我们可以选择版本,点击下载,下载到本地
我们就可以下载这个.java.gem 文件
然后在打包zip,放在服务器上安装,就可以