【问题标题】:elastic stack twitter sample tweets弹性堆栈 twitter 示例推文
【发布时间】:2017-11-03 05:20:54
【问题描述】:

我是弹性堆栈的新手,不知道如何解决这个问题。我已经设法使用用于弹性的 Twitter 输入插件获得具有特定关键字的推文的实时流,但是我想获得一个没有特定关键字的示例实时推文,只是所有实时推文的百分比。我试图搜索如何做到这一点,但找不到好的文档,我相信我需要使用 GET statuses/sample API 但没有文档。这就是我现在所拥有的:

input {
  twitter {
      consumer_key => " cosumer_key"
      consumer_secret => "consumer_secret"
      oauth_token => "token"
      oauth_token_secret => "secret"
      keywords => ["something"]
      languages => ["en"]
      full_tweet => true
  }
}
output {
    elasticsearch {}
}

如何在不使用关键字的情况下搜索所有示例推文?

提前非常感谢您。

【问题讨论】:

  • 我是否理解正确,您只是想要一些您已经索引的结果?获取推特/_search
  • 现在我得到的推文都包含关键字“某物”,我想要的是一个实时随机样本推文的数据集,没有任何特定的关键字。

标签: elasticsearch twitter twitter-oauth elastic-stack


【解决方案1】:

这是一个随机分数查询示例,这应该可以解决您的问题:

GET /twitter/_search
{
"query": {
"function_score": {
      "query": {
        "match_all": {}
      },
      "functions": [
        {
        "random_score": {}
        }
      ]
    }
  }
}

编辑 - 添加一个同样采用随机条目的 logstash 配置:

input {
  twitter {
      consumer_key => " cosumer_key"
      consumer_secret => "consumer_secret"
      oauth_token => "token"
      oauth_token_secret => "secret"
      keywords => ["something"]
      languages => ["en"]
      full_tweet => true,
      use_samples => true
  }
}
output {
    elasticsearch {}
}

use_samples:

返回所有公共状态的一小部分随机样本。默认访问级别返回的推文是相同的,因此如果两个不同的客户端连接到此端点,他们将看到相同的推文。如果设置为 true,关键字、关注、位置和语言选项将被忽略。默认⇒假

【讨论】:

  • 我是否需要更改我在上面附加的 twitter.conf 文件(用于 logstash)?还是我只是以某种方式将此查询添加到弹性搜索?如果这是一个愚蠢的问题,我很抱歉,我对此很陌生,我发现很难找到关于如何做到这一点的明确文档。非常感谢您的帮助。
  • logstash 配置和这个完全不相关。您只需要针对 logstash 正在向其发送数据的弹性实例运行此查询。我提供的答案是我在 Kibana 的开发人员选项卡中执行的代码的 sn-p,但是您可以通过任何可以向您的弹性实例发出请求的东西来做类似的事情。请查看此处的 curl 或控制台示例,了解您将在何处使用此请求的示例:elastic.co/guide/en/elasticsearch/reference/current/…“Postman”是我选择的不带 Kibana 的弹性 API 工具。
  • 我已经在 kibana 控制台中尝试了代码,但是我仍然只能使用我在配置文件中设置的关键字获得结果(我的关键字是“伦敦”),请参见下面的屏幕截图。 i.stack.imgur.com/ERhTr.png
  • 我明白你在说什么,你使用的 logstash 配置肯定会限制你可以摄取的范围。查看此文档,您似乎无法对关键字进行通配符,但您可以使用“use_samples”选项对所有推文进行采样。 elastic.co/guide/en/logstash/current/…
  • 我认为这行得通!实际上我之前已经尝试过,但我猜的方式不正确。现在我也收到了不同语言的推文,但我不介意。再次感谢i.stack.imgur.com/3Jbmn.png
猜你喜欢
  • 2023-03-07
  • 2018-08-11
  • 2019-07-27
  • 2014-10-02
  • 2020-12-19
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
  • 2018-06-14
相关资源
最近更新 更多