使用插件编辑

macOS Gatekeeper 警告

Apple 推出更严格的公证要求,影响了 8.14.2 Logstash 工件的公证。如果 macOS Catalina 在您首次运行 Logstash 时显示对话框,则需要采取措施才能允许它运行。要防止 Gatekeeper 检查 Logstash 文件,请在下载的 .tar.gz 存档或解压缩到的目录上运行以下命令

xattr -d -r com.apple.quarantine <archive-or-directory>

例如,如果 .tar.gz 文件解压缩到默认的 logstash-8.14.2 目录,则命令为

xattr -d -r com.apple.quarantine logstash-8.14.2

或者,如果您遇到 Gatekeeper 弹出窗口,您可以按照 在 Mac 上安全打开应用程序 中的“如何打开未经公证或来自未知开发者的应用程序”部分中的说明添加安全覆盖。

Logstash 拥有丰富的输入、过滤器、编解码器和输出插件集合。查看 Elastic 支持矩阵,了解哪些插件在不同级别受到支持。

插件以自包含的包形式提供,称为 gem,并托管在 RubyGems.org 上。使用插件管理器脚本(bin/logstash-plugin)来管理插件

没有互联网连接?编辑

如果您没有互联网连接,请查看 离线插件管理,了解有关 构建安装更新 离线插件包的信息。

代理配置编辑

大多数插件管理器命令都需要访问互联网才能访问 RubyGems.org。如果您的组织位于防火墙后面,您可以设置这些环境变量来配置 Logstash 以使用您的代理。

export http_proxy=https://127.0.0.1:3128
export https_proxy=https://127.0.0.1:3128

列出插件编辑

Logstash 发行版软件包捆绑了常见插件。要列出当前在您的部署中可用的插件

bin/logstash-plugin list 
bin/logstash-plugin list --verbose 
bin/logstash-plugin list '*namefragment*' 
bin/logstash-plugin list --group output 

列出所有已安装的插件

列出已安装的插件及其版本信息

列出所有已安装的插件,其中包含名称片段

列出特定组(输入、过滤器、编解码器、输出)的所有已安装插件

将插件添加到您的部署编辑

当您有权访问互联网时,您可以检索托管在 RubyGems.org 公共存储库上的插件,并将它们安装到您的 Logstash 安装之上。

bin/logstash-plugin install logstash-input-github

成功安装插件后,您可以在配置文件中使用它。

更新插件编辑

插件有自己的发布周期,通常独立于 Logstash 的核心发布周期发布。使用 update 子命令,您可以获取插件的最新版本。

bin/logstash-plugin update 
bin/logstash-plugin update logstash-input-github 

更新所有已安装的插件

仅更新您指定的插件

删除插件编辑

如果您需要从 Logstash 安装中删除插件

bin/logstash-plugin remove logstash-input-github

高级:添加本地构建的插件编辑

在某些情况下,您可能希望安装尚未发布且未托管在 RubyGems.org 上的插件。Logstash 提供了安装本地构建的插件的选项,该插件打包为 ruby gem。使用文件位置

bin/logstash-plugin install /path/to/logstash-output-kafka-1.0.0.gem

高级:使用 --path.plugins编辑

使用 Logstash --path.plugins 标志,您可以加载位于文件系统上的插件源代码。通常,这由正在迭代自定义插件的开发人员使用,他们希望在创建 ruby gem 之前对其进行测试。

路径需要位于特定的目录层次结构中:PATH/logstash/TYPE/NAME.rb,其中 TYPE 为 inputs filtersoutputscodecs,而 NAME 为插件的名称。

# supposing the code is in /opt/shared/lib/logstash/inputs/my-custom-plugin-code.rb
bin/logstash --path.plugins /opt/shared/lib