Commit 803cb7f0 by 陈健智

原发溯源-发布节点调整

parent b691c753
......@@ -1011,7 +1011,8 @@ public class MarkDataServiceImpl implements MarkDataService {
map.merge(title, jsonObject, (v1, v2) -> {
v1.put("num", v1.getLongValue("num") + v2.getLongValue("num"));
v1.put("sourceCount", v1.getIntValue("sourceCount") + v2.getIntValue("sourceCount"));
v1.put("sources", v1.getJSONArray("sources").addAll(v2.getJSONArray("sources")));
v1.getJSONArray("sources").addAll(v2.getJSONArray("sources"));
v1.put("sources", v1.getJSONArray("sources"));
return v1;
});
}
......@@ -3857,8 +3858,26 @@ public class MarkDataServiceImpl implements MarkDataService {
AggregationBuilders.dateHistogram("timeAgg").field("time").calendarInterval(DateHistogramInterval.DAY).offset("16h");
TermsAggregationBuilder sourceAggregationBuilder = AggregationBuilders.terms("sourceAgg").field("source").size(10000);
// response
SearchResponse searchResponse = esClientDao.searchResponse(indexes, null, query,
daysAggregationBuilder.subAggregation(sourceAggregationBuilder), null, null, 0, 0, null);
SearchResponse searchResponse;
try {
searchResponse = esClientDao.searchResponse(indexes, null, query,
daysAggregationBuilder.subAggregation(sourceAggregationBuilder), null, null, 0, 0, null);
}catch (ElasticsearchStatusException e){
Long startTime = dto.getStartTime();
Long endTime = dto.getEndTime();
Long midTime = startTime + (endTime - startTime) / 2;
if (midTime - startTime < Constant.ONE_DAY || endTime - midTime < Constant.ONE_DAY){
log.info("{}-getWholeSearchArticlePoint分割时间至一天bucket仍超出上限", JSONObject.toJSONString(dto));
return jsonObjects;
}
dto.setStartTime(startTime);
dto.setEndTime(midTime);
jsonObjects.addAll(getWholeSearchArticlePoint(dto));
dto.setStartTime(midTime);
dto.setEndTime(endTime);
jsonObjects.addAll(getWholeSearchArticlePoint(dto));
return jsonObjects;
}
Map<String, Aggregation> aggMap = searchResponse.getAggregations().asMap();
ParsedDateHistogram teamAgg = (ParsedDateHistogram) aggMap.get("timeAgg");
List<? extends Histogram.Bucket> buckets = teamAgg.getBuckets();
......@@ -4331,7 +4350,12 @@ public class MarkDataServiceImpl implements MarkDataService {
}
query.must(keywordQuery);
// platform
BoolQueryBuilder platformQuery = EsQueryTools.assemblePlatformQuery(GlobalPojo.PLATFORMS);
BoolQueryBuilder platformQuery;
if (CollectionUtils.isEmpty(dto.getPlatforms())) {
platformQuery = EsQueryTools.assemblePlatformQuery(GlobalPojo.PLATFORMS);
}else {
platformQuery = EsQueryTools.assemblePlatformQuery(Tools.getPlatformByIds(dto.getPlatforms()));
}
query.must(platformQuery);
return query;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment