TCP 输出插件编辑

  • 插件版本:v6.2.1
  • 发布时间:2024 年 6 月 5 日
  • 更新日志

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

获取帮助编辑

有关插件的问题,请在论坛中打开一个主题。对于错误或功能请求,请在Github中打开一个问题。有关 Elastic 支持的插件列表,请参阅Elastic 支持矩阵

描述编辑

通过 TCP 套接字写入事件。

默认情况下,此插件使用json编解码器。为了让每个事件 json 以换行符分隔,请使用json_lines编解码器。

可以接受来自客户端的连接,也可以连接到服务器,具体取决于mode

TCP 输出配置选项编辑

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

设置 输入类型 是否必需

host

字符串

mode

字符串["server", "client"] 之一

port

数字

reconnect_interval

数字

ssl_cacert

有效的文系统路径

已弃用

ssl_cert

有效的文系统路径

已弃用

ssl_certificate

有效的文系统路径

ssl_certificate_authorities

数组

ssl_cipher_suites

字符串

ssl_client_authentication

字符串["none", "optional", "required"] 之一

ssl_enable

布尔值

已弃用

ssl_enabled

布尔值

ssl_key

有效的文系统路径

ssl_key_passphrase

密码

ssl_supported_protocols

字符串

ssl_verification_mode

字符串["full", "none"] 之一

ssl_verify

布尔值

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

 

host编辑

  • 这是一个必需设置。
  • 值类型为字符串
  • 此设置没有默认值。

当模式为server时,为要监听的地址。当模式为client时,为要连接的地址。

mode编辑

  • 值可以是以下任意一项:serverclient
  • 默认值为"client"

要操作的模式。server监听客户端连接,client连接到服务器。

port编辑

  • 这是一个必需设置。
  • 值类型为数字
  • 此设置没有默认值。

当模式为server时,为要监听的端口。当模式为client时,为要连接的端口。

reconnect_interval编辑

  • 值类型为数字
  • 默认值为10

连接失败时,重试间隔(以秒为单位)。

ssl_cacert编辑

在 6.2.0 中已弃用。

替换为ssl_certificate_authorities

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

SSL CA 证书、链文件或 CA 路径。系统 CA 路径会自动包含在内。

ssl_cert编辑

在 6.2.0 中已弃用。

替换为ssl_certificate

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

SSL 证书路径

ssl_certificate编辑

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

PEM 格式证书的路径。此证书将呈现给 TLS 连接的另一方。

ssl_certificate_authorities编辑

  • 值类型为数组
  • 默认值为[]

根据这些颁发机构验证客户端证书或证书链。您可以定义多个文件。所有证书都将被读取并添加到信任库中。系统 CA 路径会自动包含在内。

ssl_cipher_suites编辑

  • 值类型是字符串列表
  • 此设置没有默认值

要使用的密码套件列表,按优先级列出。支持的密码套件因 Java 和协议版本而异。

ssl_client_authentication编辑

  • 值可以是以下任意一项:noneoptionalrequired
  • 默认值为none

控制服务器在从客户端连接请求证书方面的行为:none禁用客户端身份验证。required强制客户端出示证书,而optional请求客户端证书,但不要求客户端出示证书。

启用双向 TLS(optionalrequired)时,客户端出示的证书必须由受信任的ssl_certificate_authorities(CA)签名。请注意,服务器不会验证客户端证书 CN(通用名称)或 SAN(使用者可选名称)。

仅当modeserver且设置了ssl_certificate_authorities时,才能使用此设置。

ssl_enable编辑

在 6.2.0 中已弃用。

替换为ssl_enabled

启用 SSL(必须设置才能使其他ssl_选项生效)。

ssl_enabled编辑

启用 SSL(必须设置才能使其他ssl_选项生效)。

ssl_key编辑

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

SSL 密钥路径

ssl_key_passphrase编辑

  • 值类型为密码
  • 默认值为nil

SSL 密钥密码

ssl_supported_protocols编辑

  • 值类型为字符串
  • 允许的值为:'TLSv1.1''TLSv1.2''TLSv1.3'
  • 默认值取决于所使用的 JDK。对于最新的 Logstash,默认值为['TLSv1.2', 'TLSv1.3']'TLSv1.1'不被认为是安全的,并且仅提供给旧版应用程序使用。

建立安全连接时允许使用的 SSL/TLS 版本列表。

如果在任何最新的 JVM(例如 Logstash 附带的 JVM)上将插件配置为使用'TLSv1.1',则默认情况下该协议会被禁用,并且需要通过更改$JDK_HOME/conf/security/java.security配置文件中的jdk.tls.disabledAlgorithms来手动启用。也就是说,需要从列表中删除TLSv1.1

ssl_verification_mode编辑

  • 值可以是以下任意一项:fullnone
  • 默认值为full

定义如何验证 TLS 连接中另一方出示的证书

full验证服务器证书的颁发日期是否在 not_before 和 not_after 日期之内;链接到受信任的证书颁发机构 (CA),并且具有与证书中名称匹配的主机名或 IP 地址。

none不执行证书验证。

仅当modeclient时,才能使用此设置。

ssl_verify编辑

在 6.2.0 中已弃用。

替换为ssl_client_authenticationssl_verification_mode

根据 CA 验证 SSL 连接另一端的身份。对于输入,将 sslsubject 字段设置为客户端证书的主题。

通用选项编辑

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

设置 输入类型 是否必需

enable_metric

布尔值

id

字符串

enable_metric编辑

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

id编辑

  • 值类型为 字符串
  • 此设置没有默认值。

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

output {
  tcp {
    id => "my_plugin_id"
  }
}

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