在線安裝:
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,放在服務器上安裝,就可以