Logstash 输入插件编辑

有关其他版本,请参阅 版本化插件文档

获取帮助编辑

如果您对插件有任何疑问,请在 Discuss 论坛中发布主题。对于错误或功能请求,请在 Github 中创建问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵

描述编辑

监听由 Logstash 输出插件 在可能位于另一个进程或另一台主机上的管道中发送的事件。上游输出必须具有到此插件绑定到的接口上的端口(默认值为 9800)的 TCP 路由。

通过任何方式(除了 plugins-outputs-logstash)将事件发送到此输入既不建议也不支持。我们将维护输出/输入对的任何两个支持版本之间的交叉兼容性,并保留更改协议和编码等细节的权利。

最小配置编辑

SSL 已启用 SSL 已禁用
input {
  logstash {
    ssl_keystore_path
         => "/path/to/logstash.p12"
    ssl_keystore_password
         => "${PASS}"
  }
}
input {
  logstash {
    ssl_enabled => false
  }
}

配置概念编辑

此输入插件需要配置为绑定到 TCP port,并且可以通过向 host 提供 IP 来限制其绑定到特定接口。

安全性:SSL 身份编辑

除非 SSL 被禁用,否则此插件需要配置身份材料

安全性:SSL 信任编辑

在通过 SSL 通信时,此插件可以配置为请求或要求连接的客户端使用 ssl_client_authentication 提供自己的身份声明。

客户端提供的证书默认使用系统信任库进行验证,以确保它们是当前有效的和可信的,并且客户端可以证明拥有其关联的私钥。您可以使用以下方法提供替代信任来源:

客户端证书验证不会验证所提供证书上的身份声明,例如证书是否包含与客户端连接的 IP 地址匹配的主题备用名称。

安全性:凭据编辑

您还可以通过配置 usernamepassword 来配置此插件以要求连接的 logstash-output 插件客户端提供匹配的 usernamepassword

当 SSL 被禁用时,数据和凭据将以明文形式接收。

Logstash 输入配置选项编辑

此插件支持以下配置选项以及后面描述的 通用选项

另请参阅 通用选项,了解所有输入插件支持的选项列表。

 

host编辑

  • 值类型为 字符串 IP 地址
  • 默认值为 0.0.0.0(所有接口)

通过提供其 IP 地址来指定要监听的接口。默认情况下,此输入监听所有可用接口。

password编辑

  • 值类型为 密码
  • 此设置没有默认值。

基于密码的身份验证的密码。需要 username

port编辑

  • 值类型为 数字 端口
  • 默认值为 9800

指定要监听的端口。

ssl_certificate编辑

  • 值类型为 路径
  • 此设置没有默认值。
  • 如果存在,则 ssl_keyssl_key_passphrase 也是必需的。
  • 不能与禁用 SSL 的配置结合使用。

PEM 编码的证书或证书链的路径,用于向连接的客户端标识此插件。证书包含有关客户端用于建立连接的 IP 地址或主机名的身份声明。

ssl_certificate_authorities编辑

一个或多个 PEM 编码的文件,定义用于客户端身份验证的证书颁发机构。此设置可用于覆盖系统信任库以验证客户端提供的 SSL 证书。

ssl_client_authentication编辑

  • 值可以是以下任何一种:

    • none:不要求客户端的证书,或验证所提供的证书
    • optional:请求客户端的证书,并在仅当提供证书时将其验证与我们的信任机构进行验证
    • required:要求来自客户端的有效证书,该证书由可信证书颁发机构签名
  • 默认值为 "none"

默认情况下,服务器不会执行任何客户端身份验证。这意味着当 SSL 启用时,来自客户端的连接是私有的,但此输入将允许来自任何客户端的 SSL 连接。如果您希望配置此插件以拒绝来自不受信任主机的连接,则需要配置此插件以对客户端进行身份验证,并且可能还需要配置其 信任来源

ssl_enabled编辑

SSL 默认情况下已启用,这需要配置此插件以显示其 身份

您可以使用 +ssl_enabled => false+ 禁用 SSL。禁用后,设置任何 ssl_* 配置会导致配置失败。

ssl_key编辑

  • 值类型为 路径
  • 此设置没有默认值。
  • 当连接身份使用 ssl_certificate 配置时,此项为必需。
  • 不能与禁用 SSL 的配置结合使用。

PEM 编码的加密 PKCS8 SSL 证书密钥的路径。

ssl_keystore_password编辑

  • 值类型为 密码
  • 此设置没有默认值。
  • 当连接身份使用 ssl_keystore_path 配置时,此项为必需。
  • 不能与禁用 SSL 的配置结合使用。

ssl_keystore_path 的密码

ssl_keystore_path编辑

  • 值类型为 路径
  • 此设置没有默认值。
  • 如果存在,则 ssl_keystore_password 也是必需的。
  • 不能与禁用 SSL 的配置结合使用。

用于标识此插件到 Elasticsearch 的 JKS 或 PKCS12 格式密钥库的路径。

ssl_key_passphraseedit

  • 值类型为 密码
  • 此设置没有默认值。
  • 当连接身份使用 ssl_certificate 配置时,此项为必需。
  • 不能与禁用 SSL 的配置结合使用。

ssl_key 的密码或口令。

usernameedit

  • 值类型为 string
  • 此设置没有默认值。

用于基于密码的身份验证的用户名。当此输入插件配置了 username 时,它还需要一个 password,并且任何上游 logstash-output 插件也必须配置一个匹配的 username/password 对。

当禁用 SSL 时,凭据将以明文形式传输。

通用选项edit

以下配置选项受所有输入插件支持

设置 输入类型 必需

add_field

hash

enable_metric

布尔值

id

字符串

tags

数组

type

字符串

详情edit

 

add_fieldedit

  • 值类型为 hash
  • 默认值为 {}

向事件添加字段

enable_metricedit

  • 值类型为 boolean
  • 默认值为 true

禁用或启用此特定插件实例的指标日志记录,默认情况下我们会记录所有可以记录的指标,但您可以禁用特定插件的指标收集。

idedit

  • 值类型为 string
  • 此设置没有默认值。

向插件配置添加唯一的 ID。如果未指定 ID,Logstash 将生成一个。强烈建议在您的配置中设置此 ID。当您有两个或多个相同类型的插件时,这尤其有用,例如,如果您有两个 logstash 输入。在这种情况下,添加一个命名 ID 将有助于在使用监控 API 时监控 Logstash。

input {
  logstash {
    id => "my_plugin_id"
  }
}

id 字段中的变量替换仅支持环境变量,不支持使用来自密钥存储的值。

tagsedit

  • 值类型为 array
  • 此设置没有默认值。

向您的事件添加任意数量的任意标签。

这可以帮助以后处理。

typeedit

  • 值类型为 string
  • 此设置没有默认值。

向此输入处理的所有事件添加 type 字段。

类型主要用于过滤器激活。

类型存储为事件本身的一部分,因此您也可以使用类型在 Kibana 中搜索它。

如果您尝试在已经具有类型的事件上设置类型(例如,当您从发件人发送事件到索引器时),那么新的输入将不会覆盖现有的类型。在发件人处设置的类型会一直保留在该事件中,即使它被发送到另一个 Logstash 服务器也是如此。