如何跟踪 json 请求通过 elastic4s 客户端发送到 Elasticsearch?
How track json request sent to Elasticsearch via elastic4s client?
说我用这样的代码:
ElasticClient client = ...
client.execute{search in "places"->"cities" query "paris" start 5 limit 10}
如何查看向 Elasticsearch 发送了哪些 json 请求?
我没有找到通过 elastic4s 客户端跟踪每个请求的内置功能,但是 elastic4s 中有一个 _builder
变量,您可以在执行请求之前使用它来打印请求:
println(search in "places"->"cities" query "paris" start 5 limit 10 _builder) toString
{
"from" : 5,
"size" : 10,
"query" : {
"query_string" : {
"query" : "paris"
}
}
}
在 Elastic4s 1.6.2 中,您可以对多个请求使用 show typeclass 来获得 JSON 等价物。
这很简单。
val req = search in "index" / "type" query "kate bush"
logger.debug(s"Search request ${req.show}")
.show
方法将呈现 JSON 输出。它适用于大多数请求类型。
在Elastic4s 5.2.0+中,在客户端使用show
方法
val req = search("index" / "type").query("kate bush")
client.show(req)
说我用这样的代码:
ElasticClient client = ...
client.execute{search in "places"->"cities" query "paris" start 5 limit 10}
如何查看向 Elasticsearch 发送了哪些 json 请求?
我没有找到通过 elastic4s 客户端跟踪每个请求的内置功能,但是 elastic4s 中有一个 _builder
变量,您可以在执行请求之前使用它来打印请求:
println(search in "places"->"cities" query "paris" start 5 limit 10 _builder) toString
{
"from" : 5,
"size" : 10,
"query" : {
"query_string" : {
"query" : "paris"
}
}
}
在 Elastic4s 1.6.2 中,您可以对多个请求使用 show typeclass 来获得 JSON 等价物。
这很简单。
val req = search in "index" / "type" query "kate bush"
logger.debug(s"Search request ${req.show}")
.show
方法将呈现 JSON 输出。它适用于大多数请求类型。
在Elastic4s 5.2.0+中,在客户端使用show
方法
val req = search("index" / "type").query("kate bush")
client.show(req)