本节书摘来自华章出版社《ELK Stack权威指南(第2版)》一书中的第1章,第1.4节,作者 饶琛琳 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.4 插件安装
从Logstash 1.5.0版本开始,Logstash将所有的插件都独立拆分成gem包。这样,每个插件都可以独立更新,不用等待Logstash自身做整体更新的时候才能使用了。
为了达到这个目标,Logstash配置了专门的plugin管理命令。
plugin命令用法说明如下:
Usage:
bin/logstash-plugin [OPTIONS] SUBCOMMAND [ARG] ...
Parameters:
SUBCOMMAND subcommand
[ARG] ... subcommand arguments
Subcommands:
install Install a plugin
uninstall Uninstall a plugin
update Install a plugin
list List all installed plugins
Options:
-h, --help print help
首先,你可以通过bin/logstash-plugin list查看本机现在有多少插件可用。(其实就在vendor/bundle/jruby/1.9/gems/目录下。)
然后,假如你看到https://github.com/logstash-plugins/下新发布了一个logstash-output-webhdfs模块(当然目前还没有)。打算试试,就只需运行如下命令:
bin/logstash-plugin install logstash-output-webhdfs
同样,假如是升级,只需运行如下命令即可:
bin/logstash-plugin update logstash-input-tcp
bin/logstash-plugin不但可以通过 rubygems平台安装插件,还可以读取本地路径的gem文件,这对自定义插件或者无外接网络的环境都非常有效:
bin/logstash_plugin install /path/to/logstash-filter-crash.gem
执行成功以后。你会发现,logstash-5.0.2目录下的 Gemfile文件最后会多出一段内容:
gem "logstash-filter-crash", "1.1.0", :path =>"vendor/local_gems/d354312c/logstash-filter-mweibocrash-1.1.0"
同时Gemfile.jruby-1.9.lock文件开头也会多出一段内容,如下所示:
PATH
remote: vendor/local_gems/d354312c/logstash-filter-crash-1.1.0
specs:
logstash-filter-crash (1.1.0)
logstash-core (>= 1.4.0, < 2.0.0)