Twitter 输入插件
编辑Twitter 输入插件编辑
- 插件版本:v4.1.1
- 发布日期:2023-11-16
- 变更日志
有关其他版本,请参阅 版本化插件文档。
获取帮助编辑
如果您对插件有任何疑问,请在 Discuss 论坛中发布主题。对于错误或功能请求,请在 Github 中创建问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述编辑
从 Twitter 流式 API 中提取事件。
示例
input { twitter { consumer_key => '...' consumer_secret => '...' oauth_token => '...' oauth_token_secret => '...' keywords => [ 'logstash' ] } }
生成的示例事件字段
{ "@timestamp" => 2019-09-23T16:41:53.000Z, "message" => "I forgot how fun it is to write @logstash configs !!! Thank you @jordansissel and @elastic !!!" "user" => "missnebun", "in-reply-to" => nil, "retweeted" => false, "source" => "http://twitter.com/missnebun/status/1176174859833004037", "user_mentions" => [ { "screen_name"=>"logstash", "name"=>"logstash", "id"=>217155915 }, { "screen_name"=>"jordansissel", "name"=>"@jordansissel", "id"=>15782607 }, { "screen_name"=>"elastic", "name"=>"Elastic", "id"=>84512601 }], "symbols" => [], "hashtags" => [], "client" => "<a href=\"http://twitter.com/download/iphone\" rel=\"nofollow\">Twitter for iPhone</a>" }
与 Elastic Common Schema (ECS) 的兼容性编辑
Twitter 流非常特定,不容易映射到 Elastic Common Schema (ECS)。我们建议在启用 ECS 兼容模式 时设置 target
。当未设置 target
时,插件会在日志中发出警告。
Twitter 输入配置选项编辑
此插件支持以下配置选项,以及后面描述的 通用选项。
设置 | 输入类型 | 必需 |
---|---|---|
是 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
是 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
另请参阅 通用选项,了解所有输入插件支持的选项列表。
consumer_key
编辑
- 这是一个必需的设置。
- 值类型为 字符串
- 此设置没有默认值。
您的 Twitter 应用程序的消费者密钥
不知道这是什么?您需要在 Twitter 上创建一个“应用程序”,请参阅此 URL:https://dev.twitter.com/apps/new
consumer_secret
编辑
- 这是一个必需的设置。
- 值类型为 密码
- 此设置没有默认值。
您的 Twitter 应用程序的消费者密钥
如果您没有这些,可以通过向 Twitter 注册新应用程序来创建一个:https://dev.twitter.com/apps/new
ecs_compatibility
编辑
- 值类型为 字符串
-
支持的值为
-
disabled
:不使用与 ECS 兼容的字段名称(字段可能在事件的根目录中设置) -
v1
,v8
:避免可能与 Elastic Common Schema 冲突的字段名称(例如,Twitter 特定属性)
-
-
默认值取决于运行 Logstash 的版本
- 当 Logstash 提供
pipeline.ecs_compatibility
设置时,其值将用作默认值 - 否则,默认值为
disabled
。
- 当 Logstash 提供
控制此插件与 Elastic Common Schema (ECS) 的兼容性。
follows
编辑
- 值类型为 数组
- 此设置没有默认值。
以逗号分隔的用户 ID 列表,指示要返回 Twitter 流中状态的用户。有关更多详细信息,请参阅 https://developer.twitter.com/en/docs/tweets/filter-realtime/guides/basic-stream-parameters。
keywords
编辑
- 值类型为 数组
- 此设置没有默认值。
在 Twitter 流中跟踪的任何关键字。对于多个关键字,请使用语法 ["foo", "bar"]。每个关键字字符串之间存在逻辑 OR,每个关键字字符串中由空格分隔的单词之间存在逻辑 AND。有关更多详细信息,请参阅 https://dev.twitter.com/streaming/overview/request-parameters#track。
不支持通配符 "*" 选项。要提取所有推文的样本流,建议使用 use_samples 选项。
locations
编辑
- 值类型为 字符串
- 此设置没有默认值。
以逗号分隔的经度、纬度对列表,指定一组用于按推文过滤的边界框。有关更多详细信息,请参阅 https://dev.twitter.com/streaming/overview/request-parameters#locations。
oauth_token
编辑
- 这是一个必需的设置。
- 值类型为 字符串
- 此设置没有默认值。
您的 oauth 令牌。
要获取此令牌,请使用您想要的任何帐户登录 Twitter,然后访问 https://dev.twitter.com/apps
单击您的应用程序(与 consumer_key 和 consumer_secret 设置一起使用)。然后在页面底部,单击创建我的访问令牌,这将创建一个与您的帐户和该应用程序绑定的 oauth 令牌和密钥。
oauth_token_secret
编辑
- 这是一个必需的设置。
- 值类型为 密码
- 此设置没有默认值。
您的 oauth 令牌密钥。
要获取此令牌,请使用您想要的任何帐户登录 Twitter,然后访问 https://dev.twitter.com/apps
单击您的应用程序(与 consumer_key 和 consumer_secret 设置一起使用)。然后在页面底部,单击创建我的访问令牌,这将创建一个与您的帐户和该应用程序绑定的 oauth 令牌和密钥。
rate_limit_reset_in
编辑
- 值类型为 数字
- 默认值为
300
当 Twitter 返回 429 TooManyRequests 时,在重试连接之前等待的持续时间(以秒为单位)。在某些情况下,x-rate-limit-reset 标头未在响应中设置,<error>.rate_limit.reset_in 为 nil。如果发生这种情况,我们将使用此处指定的整数。默认值为 5 分钟。
通用选项编辑
所有输入插件都支持以下配置选项