Logstash 输出设置
编辑Logstash 输出设置
编辑指定这些设置以通过安全连接将数据发送到 Logstash。您还必须配置一个 Logstash pipeline,它读取来自 Elastic Agent 的加密数据并将数据发送到 Elasticsearch。请按照产品中的步骤配置 Logstash pipeline。
在 Fleet 输出设置 中,确保已选择 Logstash 输出类型。
在使用 Logstash 输出之前,您需要确保已添加到 Elastic Agent 策略的任何集成,其集成资源都已安装在目标集群上。有关添加集成资源的步骤,请参阅安装和卸载 Elastic Agent 集成资源。
要了解如何生成证书,请参阅为 Logstash 输出配置 SSL/TLS。
要在 Logstash 中接收事件,您还需要创建一个 Logstash 配置 pipeline。Logstash 配置 pipeline 侦听传入的 Elastic Agent 连接,处理接收到的事件,然后将事件发送到 Elasticsearch。
以下示例配置了一个 Logstash pipeline,它在端口5044
上侦听传入的 Elastic Agent 连接并将接收到的事件路由到 Elasticsearch。
以下 Logstash pipeline 定义只是一个示例。在 Fleet 输出页面中创建 Logstash 输出时,请参考所需的附加 Logstash 配置
步骤。
input { elastic_agent { port => 5044 enrich => none # don't modify the events' schema at all ssl => true ssl_certificate_authorities => ["<ca_path>"] ssl_certificate => "<server_cert_path>" ssl_key => "<server_cert_key_in_pkcs8>" ssl_verify_mode => "force_peer" } } output { elasticsearch { hosts => ["https://127.0.0.1:9200"] # cloud_id => "..." data_stream => "true" api_key => "<api_key>" data_stream => true ssl => true # cacert => "<elasticsearch_ca_path>" } }
您的 Elastic Agent 将用于连接到 Logstash 的地址。使用 示例
有关默认端口和其他配置详细信息,请参阅Fleet Server文档。 |
|
用于连接到 Logstash 的 CA 证书。这是用于生成 Logstash 证书和密钥的 CA。粘贴 CA 证书的完整内容。 此设置是可选的。 |
|
为客户端生成的证书。粘贴证书的完整内容。这是所有代理都将用于连接到 Logstash 的证书。 在每个客户端都有唯一证书的情况下,可以将该证书的本地路径放置在此处。代理将在与 Logstash 建立连接时选择该位置中的证书。 |
|
为客户端生成的私钥。这必须是 PKCS 8 密钥。粘贴证书密钥的完整内容。这是所有代理都将用于连接到 Logstash 的证书密钥。 在每个客户端都有唯一证书密钥的情况下,可以将该证书密钥的本地路径放置在此处。代理将在与 Logstash 建立连接时选择该位置中的证书密钥。 为防止未经授权的访问,证书密钥存储为秘密值。虽然建议使用秘密存储,但您可以选择覆盖此设置并将密钥作为纯文本存储在代理策略定义中。秘密存储需要 Fleet Server 版本 8.12 或更高版本。 请注意,此设置也可以作为秘密值或纯文本存储在预配置输出中。请参阅 Kibana 指南中的预配置设置了解更多信息。 |
|
选择 Elastic Agent 用于连接到 Logstash 的代理 URL。要了解有关代理配置的信息,请参阅将代理服务器与 Elastic Agent 和 Fleet 一起使用。 |
|
将添加到使用此输出的每个策略的 Logstash 输出部分的 YAML 设置。确保您指定有效的 YAML。UI 目前不提供验证。 请参阅高级 YAML 配置,了解可用设置的说明。 |
|
启用此设置后,如果在代理策略中未设置其他输出,则 Elastic Agent 将使用此输出发送数据。 Fleet Server 或 APM 使用的策略中,不支持将输出发送到 Logstash 代理集成。 |
|
启用此设置后,如果在代理策略中未设置其他输出,则 Elastic Agent 将使用此输出发送代理监控数据。 Fleet Server 或 APM 使用的策略中,不支持将输出发送到 Logstash 代理监控。 |
高级 YAML 配置
编辑设置 | 描述 |
---|---|
(字符串) 网络错误后等待重新连接到 Logstash 的秒数。等待 默认值: |
|
(字符串) 网络错误后等待尝试连接到 Elasticsearch 的最大秒数。 默认值: |
|
(整数) 在单个 Logstash 请求中批量发送的事件的最大数量。 事件可以收集到批次中。Elastic Agent 将把大于 指定更大的批次大小可以通过降低发送事件的开销来提高性能。但是,大的批次大小也会增加处理时间,这可能会导致 API 错误、连接中断、发布请求超时,最终导致吞吐量降低。 将此值设置为 默认值: |
|
(整数) gzip 压缩级别。将此值设置为 提高压缩级别会减少网络使用量,但会增加 CPU 使用量。 |
|
(布尔值) 配置字符串中 HTML 的转义。设置为 默认值: |
|
(字符串) 要写入事件的索引根名称。 |
|
如果为 启用
未启用
默认值: 示例 outputs: default: type: logstash hosts: ["localhost:5044", "localhost:5045"] loadbalance: true |
|
(整数) 发布失败后重试发布事件的次数。在指定的重试次数后,事件通常会被丢弃。 将 默认值: |
|
(整数) 在等待来自 Logstash 的 ACK 时,异步发送到 Logstash 的批次数量。写入指定的批次数量后,输出将变为阻塞。指定 默认值: |
|
(布尔值) 确定使用代理时是否在本地解析 Logstash 主机名。如果为 默认值: |
|
队列可以存储的事件数量。此值应被 默认值: |
|
默认值: |
|
(int) 默认值: |
|
(boolean) 如果设置为 默认值: |
|
(string) 在超时之前等待来自 Logstash 服务器的响应的秒数。 默认值: |
|
(string) 与 Logstash 的连接的生存时间,在此时间之后将重新建立连接。当 Logstash 主机代表负载均衡器时,此设置非常有用。由于与 Logstash 主机的连接是粘性的,因此在负载均衡器后运行会导致跨实例的负载分配不均匀。在连接上指定 TTL 以实现跨实例的均衡连接分配。 默认值: 异步 Logstash 客户端(已设置 |
|
(int) 每个已配置的主机发布事件的工作程序数量。例如:如果您有两个主机和三个工作程序,则总共启动六个工作程序(每个主机三个)。 默认值: |