使用插件编辑

macOS Gatekeeper 警告

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

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

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

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

或者,如果出现 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 是“输入”、“过滤器”、“输出”或“编解码器”,NAME 是插件的名称。

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