Elastic Workplace Search 输出插件

编辑

Elastic Workplace Search 输出插件

编辑

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

获取帮助

编辑

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

描述

编辑

此输出允许您将事件发送到Elastic Workplace Search解决方案。在从 Logstash 管道接收一批事件时,该插件会将事件转换为文档,并使用 Workplace Search 批量 API 在一个请求中索引多个事件。

Workplace Search 不允许字段以 @timestamp 开头。默认情况下,@timestamp@version 字段将在发送到 Workplace Search 之前从每个事件中删除。如果您想保留 @timestamp 字段,可以使用 timestamp_destination 选项将时间戳存储在不同的字段中。

此 gem 不支持编解码器自定义。

Workplace Search 输出配置选项

编辑

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

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

 

access_token

编辑
  • 值类型是密码
  • 没有默认值

源访问令牌。请访问 Workplace Search 仪表板中的源概述页面,查找与您的源关联的令牌。

document_id

编辑

Workplace Search 文档的 ID。这可以是一个插值,例如 myapp-%{sequence_id}。重用 ID 将导致文档被重写。

source

编辑

您在 Workplace Search 中创建的源的 ID。source 字段支持 sprintf 格式,允许源 ID 从每个事件的字段值派生,例如 %{source_id}

无效的源 ID 会导致摄取停止,直到字段值可以解析为有效的源 ID。如果插值的字段值解析为没有匹配源的值,或者,如果事件中缺少该字段并且根本无法解析,则可能会发生这种情况。

考虑在配置中添加“默认”源类型,以捕获事件中缺少该字段时出现的错误。

示例

input {
  stdin {
    codec => json
  }
}

filter {
  if ![source_id] {
    mutate {
      add_field => {"source_id" => "default"}
    }
  }
}

output {
  elastic_workplace_search {
    source => "%{[source_id]}"
    access_token => "abracadabra"
    url => "http://workplace.search.com:3002"
  }
}

ssl_certificate_authorities

编辑
  • 值类型是路径列表
  • 此设置没有默认值

用于验证服务器证书的 .cer 或 .pem 文件。

您不能同时使用此设置和 ssl_truststore_path

ssl_cipher_suites

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

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

ssl_supported_protocols

编辑
  • 值类型是字符串
  • 允许的值为:'TLSv1.1''TLSv1.2''TLSv1.3'
  • 默认值取决于正在使用的 JDK。对于最新的 Logstash,默认值是 ['TLSv1.2', 'TLSv1.3']'TLSv1.1' 被认为是不安全的,仅为遗留应用程序提供。

建立与 Elasticsearch 集群的连接时,要使用的允许的 SSL/TLS 版本列表。

对于 Java 8,仅从 8u262 (AdoptOpenJDK) 开始支持 'TLSv1.3',但这要求您在 Logstash 中设置 LS_JAVA_OPTS="-Djdk.tls.client.protocols=TLSv1.3" 系统属性。

如果您配置插件在任何最新的 JVM(例如 Logstash 打包的 JVM)上使用 'TLSv1.1',则该协议默认处于禁用状态,需要通过更改 $JDK_HOME/conf/security/java.security 配置文件中的 jdk.tls.disabledAlgorithms 来手动启用。也就是说,需要从列表中删除 TLSv1.1

ssl_truststore_password

编辑
  • 值类型是密码
  • 此设置没有默认值。

设置信任存储密码

ssl_truststore_path

编辑
  • 值类型是路径
  • 此设置没有默认值。

用于验证服务器证书的信任存储。它可以是 .jks.p12

您不能同时使用此设置和 ssl_certificate_authorities

ssl_truststore_type

编辑
  • 值可以是以下任何一个:jkspkcs12
  • 如果未提供,将从信任存储文件名推断值。

信任存储文件的格式。它必须是 jkspkcs12

ssl_verification_mode

编辑
  • 值可以是以下任何一个:fullnone
  • 默认值是 full

定义如何验证 TLS 连接中另一方提供的证书

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

none 不执行证书验证。

将证书验证设置为 none 会禁用 SSL/TLS 的许多安全优势,这非常危险。有关禁用证书验证的更多信息,请阅读 https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf

timestamp_destination

编辑

@timestamp 字段移动值的位置。

所有 Logstash 事件都包含一个 @timestamp 字段。Workplace Search 不支持以 @timestamp 开头的字段,默认情况下,将删除 @timestamp 字段。

要保留时间戳字段,请将此值设置为要复制 @timestamp 的字段的名称。

  • 值类型是字符串
  • 默认值是 https://127.0.0.1:3002

API 端点的值,采用 URL 格式。

示例

本地实例

http://workplace.company.com:3002

Elastic Cloud 实例

https://7c455f508468426cb53912be65548117.ent-search.eu-west-1.aws.cloud.es.io

通用选项

编辑

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

设置 输入类型 必填

enable_metric

布尔值

id

字符串

enable_metric

编辑

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

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

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

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

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