记录 elastic4s 客户端
Logging elastic4s client
看这个例子
client.execute{search in "places"->"cities" query "paris" start 5 limit 10}
是否有一个选项可以将日志记录挂接到 client.execute 以记录客户端所做的所有操作(索引、搜索等)?
我看到了这个 但我不想做类似的事情 :
val req = search in "index" / "type" query "kate bush"
logger.debug(s"Search request ${req.show}")
我希望客户端根据日志记录级别记录所有日志
您可以定义自己的 ElasticClient,具有覆盖执行功能
object MyElasticClientFactory {
def fromClient(client: Client): ElasticClient = new ElasticClient {
def close(): Unit = client.close()
def java: Client = client
override def execute[T, R, Q](request: T)(implicit executable: Executable[T, R, Q]): Future[Q] = {
// TODO your logging here
super.execute(request)
}
}
看这个例子
client.execute{search in "places"->"cities" query "paris" start 5 limit 10}
是否有一个选项可以将日志记录挂接到 client.execute 以记录客户端所做的所有操作(索引、搜索等)?
我看到了这个
val req = search in "index" / "type" query "kate bush"
logger.debug(s"Search request ${req.show}")
我希望客户端根据日志记录级别记录所有日志
您可以定义自己的 ElasticClient,具有覆盖执行功能
object MyElasticClientFactory {
def fromClient(client: Client): ElasticClient = new ElasticClient {
def close(): Unit = client.close()
def java: Client = client
override def execute[T, R, Q](request: T)(implicit executable: Executable[T, R, Q]): Future[Q] = {
// TODO your logging here
super.execute(request)
}
}