vernedeng commented on code in PR #9057:
URL: https://github.com/apache/inlong/pull/9057#discussion_r1360465445


##########
inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/core/impl/AuditServiceImpl.java:
##########
@@ -365,27 +362,36 @@ private List<String> getAuditIds(String groupId, String 
streamId, String sourceN
     }
 
     /**
-     * Convert to elasticsearch search request
+     * Convert to elasticsearch search request json
      *
-     * @param index The index of elasticsearch
      * @param groupId The groupId of inlong
      * @param streamId The streamId of inlong
-     * @return The search request of elasticsearch
+     * @return The search request of elasticsearch json
      */
-    private SearchRequest toAuditSearchRequest(String index, String groupId, 
String streamId) {
-        TermsAggregationBuilder builder = 
AggregationBuilders.terms("log_ts").field("log_ts")
-                
.size(Integer.MAX_VALUE).subAggregation(AggregationBuilders.sum("count").field("count"))
-                
.subAggregation(AggregationBuilders.sum("delay").field("delay"));
-        BoolQueryBuilder filterBuilder = new BoolQueryBuilder();
-        filterBuilder.must(termQuery("inlong_group_id", groupId));
-        filterBuilder.must(termQuery("inlong_stream_id", streamId));
-        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
-        sourceBuilder.aggregation(builder);
-        sourceBuilder.query(filterBuilder);
-        sourceBuilder.from(0);
-        sourceBuilder.size(0);
-        sourceBuilder.sort("log_ts", SortOrder.ASC);
-        return new SearchRequest(new String[]{index}, sourceBuilder);
+    public static JsonObject toAuditSearchRequestJson(String groupId, String 
streamId) {
+        JsonObject result = new JsonObject();
+        result.addProperty("from", 0);
+        result.addProperty("size", 0);
+        JsonObject query = new JsonObject();
+        final String termGroupId = 
"{\"term\":{\"inlong_group_id\":{\"value\":\"" + groupId + "\",\"boost\":1.0 
}}}";
+        final String termStreamId = 
"{\"term\":{\"inlong_stream_id\":{\"value\":\"" + streamId + 
"\",\"boost\":1.0}}}";
+        JsonArray mustArray = new JsonArray();
+        mustArray.add(GSON.fromJson(termGroupId, JsonElement.class));
+        mustArray.add(GSON.fromJson(termStreamId, JsonElement.class));
+        JsonObject bool = new JsonObject();
+        bool.add("must", mustArray);
+        bool.addProperty("adjust_pure_negative", true);
+        bool.addProperty("boost", 1.0);
+        query.add("bool", bool);
+        result.add("query", query);
+        final String sortStr = "[{\"log_ts\": {\"order\": \"asc\"}}]";
+        result.add("sort", GSON.fromJson(sortStr, JsonArray.class));
+        final String aggregationsStr = "{\"log_ts\": {\"terms\": {\"field\": 
\"log_ts\",\"size\": 2147483647, "
+                + "\"min_doc_count\": 1,\"shard_min_doc_count\": 0, 
\"show_term_doc_count_error\": false,"
+                + "\"order\":[{\"_count\": \"desc\" },{\"_key\": \"asc\" 
}]},\"aggregations\": "
+                + "{\"count\":{\"sum\":{\"field\":\"count\" }},\"delay\": 
{\"sum\":{\"field\":\"delay\"}}}}}";
+        result.add("aggregations", GSON.fromJson(aggregationsStr, 
JsonElement.class));
+        return result;

Review Comment:
   Why so many magic numbers



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to