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
编辑- 这是必需的设置。
- 值类型为string
- 此设置没有默认值。
你的 Twitter 应用程序的 consumer key
不知道这是什么?你需要在 Twitter 上创建一个“应用程序”,请参阅此网址:https://dev.twitter.com/apps/new
consumer_secret
编辑- 这是必需的设置。
- 值类型为password
- 此设置没有默认值。
你的 Twitter 应用程序的 consumer secret
如果你没有这些,你可以通过在 Twitter 上注册一个新应用程序来创建一个:https://dev.twitter.com/apps/new
ecs_compatibility
编辑- 值类型为string
-
支持的值有
-
disabled
:不使用 ECS 兼容的字段名称(字段可能设置在事件的根级别) -
v1
,v8
:避免可能与 Elastic Common Schema 冲突的字段名称(例如,Twitter 特定的属性)
-
-
默认值取决于正在运行的 Logstash 版本
- 当 Logstash 提供
pipeline.ecs_compatibility
设置时,其值用作默认值 - 否则,默认值为
disabled
。
- 当 Logstash 提供
控制此插件与Elastic Common Schema (ECS)的兼容性。
follows
编辑- 值类型为array
- 此设置没有默认值。
一个以逗号分隔的用户 ID 列表,指示要返回 Twitter 流中状态的用户。有关更多详细信息,请参阅https://developer.twitter.com/en/docs/tweets/filter-realtime/guides/basic-stream-parameters。
keywords
编辑- 值类型为array
- 此设置没有默认值。
在 Twitter 流中跟踪的任何关键字。对于多个关键字,请使用语法 ["foo", "bar"]。每个列出的关键字字符串之间存在逻辑 OR,并且每个关键字字符串中以空格分隔的单词之间存在逻辑 AND。有关更多详细信息,请参阅https://dev.twitter.com/streaming/overview/request-parameters#track。
不支持通配符“*”选项。要提取所有推文的示例流,建议使用 use_samples 选项。
locations
编辑- 值类型为string
- 此设置没有默认值。
一个以逗号分隔的经度、纬度对列表,指定一组用于过滤推文的边界框。有关更多详细信息,请参阅https://dev.twitter.com/streaming/overview/request-parameters#locations。
oauth_token
编辑- 这是必需的设置。
- 值类型为string
- 此设置没有默认值。
你的 oauth 令牌。
要获取此令牌,请使用你想要的任何帐户登录 Twitter,然后访问https://dev.twitter.com/apps
单击你的应用程序(与 consumer_key 和 consumer_secret 设置一起使用)然后在页面底部,单击“创建我的访问令牌”,这将创建一个绑定到你的帐户和该应用程序的 oauth 令牌和密钥。
oauth_token_secret
编辑- 这是必需的设置。
- 值类型为password
- 此设置没有默认值。
你的 oauth 令牌密钥。
要获取此令牌,请使用你想要的任何帐户登录 Twitter,然后访问https://dev.twitter.com/apps
单击你的应用程序(与 consumer_key 和 consumer_secret 设置一起使用)然后在页面底部,单击“创建我的访问令牌”,这将创建一个绑定到你的帐户和该应用程序的 oauth 令牌和密钥。
rate_limit_reset_in
编辑- 值类型为number
- 默认值为
300
当 Twitter 响应 429 TooManyRequests 时,在重试连接之前等待的秒数。在某些情况下,x-rate-limit-reset 标头未在响应中设置,并且 <error>.rate_limit.reset_in 为 nil。如果发生这种情况,我们将使用此处指定的整数。默认值为 5 分钟。