Google Cloud Pub/Sub 输出插件
编辑Google Cloud Pub/Sub 输出插件编辑
- 插件版本:v1.2.0
- 发布时间:2023-08-22
- 更新日志
有关其他版本,请参阅版本化插件文档。
安装编辑
对于默认情况下未捆绑的插件,可以通过运行 bin/logstash-plugin install logstash-output-google_pubsub
轻松安装。有关更多详细信息,请参阅使用插件。
获取帮助编辑
如果您对插件有任何疑问,请在论坛中打开一个主题。对于错误或功能请求,请在Github中打开一个问题。有关 Elastic 支持的插件列表,请参阅Elastic 支持矩阵。
描述编辑
一个 Logstash 插件,用于将日志事件上传到Google Cloud Pubsub。为了提高效率,事件会进行批处理并在后台上传。消息负载是事件的序列化 JSON 表示形式。
用例示例
- 通过 Pub/Sub 将事件流式传输到 Dataproc 以进行实时分析。
- 将事件从本地数据中心转发到云中的 Logstash。
- 使用 Pub/Sub 作为可扩展的缓冲区,以平衡处理步骤之间的事件流。
注意:虽然此项目由 Google 部分维护,但它不是官方的 Google 产品。
示例配置编辑
基本编辑
一个仅包含项目、主题和 JSON 密钥文件的基本配置
output { google_pubsub { # Required attributes project_id => "my_project" topic => "my_topic" # Optional if you're using app default credentials json_key_file => "service_account_key.json" } }
高容量编辑
如果您发现上传速度太慢,可以增加消息批处理量
output { google_pubsub { project_id => "my_project" topic => "my_topic" json_key_file => "service_account_key.json" # Options for configuring the upload message_count_threshold => 1000 delay_threshold_secs => 10 request_byte_threshold => 5000000 } }
属性编辑
您可以为每个请求附加其他属性。例如,您可以将数据中心标签附加到日志消息以帮助调试
output { google_pubsub { project_id => "my_project" topic => "my_topic" json_key_file => "service_account_key.json" attributes => {"origin" => "pacific-datacenter"} } }
不同的编解码器编辑
您可以将编解码器与此插件一起使用以更改事件的主体
output { google_pubsub { project_id => "my_project" topic => "my_topic" json_key_file => "service_account_key.json" codec => plain {format => "%{[time]}: %{[message]}"} } }
Google Cloud Pub/Sub 输出配置选项编辑
此插件支持以下配置选项以及稍后描述的通用选项。
设置 | 输入类型 | 必需 |
---|---|---|
是 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
另请参阅通用选项,以获取所有输入插件支持的选项列表。
json_key_file
编辑
- 值类型为路径
- 此设置没有默认值。
用于向存储桶验证您的用户身份的密钥的路径。此服务用户*必须*具有 pubsub.topics.publish
权限,以便它可以发布到主题。
如果 Logstash 在 Google Compute Engine 中运行并且未定义 json_key_file
,则插件将使用 GCE 的应用程序默认凭据。在 GCE 之外,您必须指定服务帐户 JSON 密钥文件。
message_count_threshold
编辑
- 值类型为数字
- 默认值为:
100
一旦排队了这么多消息,即使延迟阈值尚未过,也会在一次调用中发送所有消息。必须小于 1000。值为 0 将导致立即发送消息,但会因开销而降低总吞吐量。
通用选项编辑
所有输出插件都支持以下配置选项