Skip to content

Commit 97c7faf

Browse files
committed
update logs for scroll and search
1 parent 081027a commit 97c7faf

File tree

3 files changed

+36
-22
lines changed

3 files changed

+36
-22
lines changed

core/src/main/scala/app/softnetwork/elastic/client/ScrollApi.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ trait ScrollApi extends ElasticClientHelpers {
347347
val strategy = determineScrollStrategy(elasticQuery, aggregations)
348348

349349
logger.info(
350-
s"Using scroll strategy: $strategy for query on ${elasticQuery.indices.mkString(", ")}"
350+
s"Using scroll strategy: $strategy for query \n$elasticQuery"
351351
)
352352

353353
strategy match {

core/src/main/scala/app/softnetwork/elastic/client/SearchApi.scala

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -132,19 +132,19 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
132132
val indices = elasticQuery.indices.mkString(",")
133133

134134
logger.debug(
135-
s"🔍 Searching with query \n${sql.getOrElse(query)}\nin indices '$indices'"
135+
s"🔍 Searching with query \n$elasticQuery\nin indices '$indices'"
136136
)
137137

138138
executeSingleSearch(elasticQuery) match {
139139
case ElasticSuccess(Some(response)) =>
140140
logger.info(
141-
s"✅ Successfully executed search for query \n${sql.getOrElse(query)}\nin indices '$indices'"
141+
s"✅ Successfully executed search for query \n$elasticQuery\nin indices '$indices'"
142142
)
143143
val aggs = aggregations.map(kv => kv._1 -> implicitly[ClientAggregation](kv._2))
144144
ElasticResult.fromTry(parseResponse(response, fieldAliases, aggs)) match {
145145
case success @ ElasticSuccess(_) =>
146146
logger.info(
147-
s"✅ Successfully parsed search results for query \n${sql.getOrElse(query)}\nin indices '$indices'"
147+
s"✅ Successfully parsed search results for query \n$elasticQuery\nin indices '$indices'"
148148
)
149149
ElasticResult.success(
150150
ElasticResponse(
@@ -170,8 +170,7 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
170170
case ElasticSuccess(_) =>
171171
val error =
172172
ElasticError(
173-
message =
174-
s"Failed to execute search for query \n${sql.getOrElse(query)}\nin indices '$indices'",
173+
message = s"Failed to execute search for query \n$elasticQuery\nin indices '$indices'",
175174
index = Some(indices),
176175
operation = Some("search")
177176
)
@@ -231,19 +230,19 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
231230
)
232231

233232
logger.debug(
234-
s"🔍 Multi-searching with query \n${sql.getOrElse(query)}"
233+
s"🔍 Multi-searching with query \n$elasticQueries"
235234
)
236235

237236
executeMultiSearch(elasticQueries) match {
238237
case ElasticSuccess(Some(response)) =>
239238
logger.info(
240-
s"✅ Successfully executed multi-search for query \n${sql.getOrElse(query)}"
239+
s"✅ Successfully executed multi-search for query \n$elasticQueries"
241240
)
242241
val aggs = aggregations.map(kv => kv._1 -> implicitly[ClientAggregation](kv._2))
243242
ElasticResult.fromTry(parseResponse(response, fieldAliases, aggs)) match {
244243
case success @ ElasticSuccess(_) =>
245244
logger.info(
246-
s"✅ Successfully parsed multi-search results for query '${sql.getOrElse(query)}'"
245+
s"✅ Successfully parsed multi-search results for query '$elasticQueries'"
247246
)
248247
ElasticResult.success(
249248
ElasticResponse(
@@ -256,7 +255,7 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
256255
)
257256
case ElasticFailure(error) =>
258257
logger.error(
259-
s"❌ Failed to parse multi-search results for query \n${sql.getOrElse(query)}\n -> ${error.message}"
258+
s"❌ Failed to parse multi-search results for query \n$elasticQueries\n -> ${error.message}"
260259
)
261260
ElasticResult.failure(
262261
error.copy(
@@ -267,14 +266,14 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
267266
case ElasticSuccess(_) =>
268267
val error =
269268
ElasticError(
270-
message = s"Failed to execute multi-search for query \n${sql.getOrElse(query)}",
269+
message = s"Failed to execute multi-search for query \n$elasticQueries",
271270
operation = Some("multiSearch")
272271
)
273272
logger.error(s"${error.message}")
274273
ElasticResult.failure(error)
275274
case ElasticFailure(error) =>
276275
logger.error(
277-
s"❌ Failed to execute multi-search for query \n${sql.getOrElse(query)}\n -> ${error.message}"
276+
s"❌ Failed to execute multi-search for query \n$elasticQueries\n -> ${error.message}"
278277
)
279278
ElasticResult.failure(
280279
error.copy(
@@ -358,13 +357,13 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
358357
executeSingleSearchAsync(elasticQuery).flatMap {
359358
case ElasticSuccess(Some(response)) =>
360359
logger.info(
361-
s"✅ Successfully executed asynchronous search for query \n${sql.getOrElse(query)}\nin indices '$indices'"
360+
s"✅ Successfully executed asynchronous search for query \n$elasticQuery\nin indices '$indices'"
362361
)
363362
val aggs = aggregations.map(kv => kv._1 -> implicitly[ClientAggregation](kv._2))
364363
ElasticResult.fromTry(parseResponse(response, fieldAliases, aggs)) match {
365364
case success @ ElasticSuccess(_) =>
366365
logger.info(
367-
s"✅ Successfully parsed search results for query \n${sql.getOrElse(query)}\nin indices '$indices'"
366+
s"✅ Successfully parsed search results for query \n$elasticQuery\nin indices '$indices'"
368367
)
369368
Future.successful(
370369
ElasticResult.success(
@@ -395,7 +394,7 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
395394
val error =
396395
ElasticError(
397396
message =
398-
s"Failed to execute asynchronous search for query \n${sql.getOrElse(query)}\nin indices '$indices'",
397+
s"Failed to execute asynchronous search for query \n$elasticQuery\nin indices '$indices'",
399398
index = Some(elasticQuery.indices.mkString(",")),
400399
operation = Some("searchAsync")
401400
)
@@ -443,13 +442,13 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
443442
executeMultiSearchAsync(elasticQueries).flatMap {
444443
case ElasticSuccess(Some(response)) =>
445444
logger.info(
446-
s"✅ Successfully executed asynchronous multi-search for query \n${sql.getOrElse(query)}"
445+
s"✅ Successfully executed asynchronous multi-search for query \n$elasticQueries"
447446
)
448447
val aggs = aggregations.map(kv => kv._1 -> implicitly[ClientAggregation](kv._2))
449448
ElasticResult.fromTry(parseResponse(response, fieldAliases, aggs)) match {
450449
case success @ ElasticSuccess(_) =>
451450
logger.info(
452-
s"✅ Successfully parsed multi-search results for query '${sql.getOrElse(query)}'"
451+
s"✅ Successfully parsed multi-search results for query '$elasticQueries'"
453452
)
454453
Future.successful(
455454
ElasticResult.success(
@@ -464,7 +463,7 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
464463
)
465464
case ElasticFailure(error) =>
466465
logger.error(
467-
s"❌ Failed to parse multi-search results for query \n${sql.getOrElse(query)}\n -> ${error.message}"
466+
s"❌ Failed to parse multi-search results for query \n$elasticQueries\n -> ${error.message}"
468467
)
469468
Future.successful(
470469
ElasticResult.failure(
@@ -477,15 +476,14 @@ trait SearchApi extends ElasticConversion with ElasticClientHelpers {
477476
case ElasticSuccess(_) =>
478477
val error =
479478
ElasticError(
480-
message =
481-
s"Failed to execute asynchronous multi-search for query \n${sql.getOrElse(query)}",
479+
message = s"Failed to execute asynchronous multi-search for query \n$elasticQueries",
482480
operation = Some("multiSearchAsync")
483481
)
484482
logger.error(s"${error.message}")
485483
Future.successful(ElasticResult.failure(error))
486484
case ElasticFailure(error) =>
487485
logger.error(
488-
s"❌ Failed to execute asynchronous multi-search for query \n${sql.getOrElse(query)}\n -> ${error.message}"
486+
s"❌ Failed to execute asynchronous multi-search for query \n$elasticQueries\n -> ${error.message}"
489487
)
490488
Future.successful(
491489
ElasticResult.failure(

core/src/main/scala/app/softnetwork/elastic/client/package.scala

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,23 @@ package object client extends SerializationApi {
7373
indices: Seq[String],
7474
types: Seq[String] = Seq.empty,
7575
sql: Option[String] = None
76-
)
76+
) {
77+
override def toString: String = s"""ElasticQuery:
78+
| Indices: ${indices.mkString(",")}
79+
| Types: ${types.mkString(",")}
80+
| SQL: ${sql.getOrElse("")}
81+
| Query: $query
82+
|""".stripMargin
83+
}
84+
85+
case class ElasticQueries(queries: List[ElasticQuery], sql: Option[String] = None) {
86+
val multiQuery: String = queries.map(_.query).mkString("\n")
87+
88+
val sqlQuery: String = sql
89+
.orElse(
90+
Option(queries.flatMap(_.sql).mkString("\nUNION ALL\n"))
91+
)
92+
.getOrElse("")
7793

7894
case class ElasticQueries(queries: List[ElasticQuery], sql: Option[String] = None)
7995

0 commit comments

Comments
 (0)