I'm trying to make an Elasticsearch query with Aggragation with Spring Data Elasticsearch 5.x.
Before updating elasticSearch and spring boot version i had the java code below that was working well :
TermsQueryBuilder termsQueryBuilder1 = new TermsQueryBuilder("my_request","path1","path2");
TermsQueryBuilder termsQueryBuilder2 = new TermsQueryBuilder("my_request","path2","path3");
TermsQueryBuilder termsQueryBuilder3 = new TermsQueryBuilder("code","400","500");
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery()
.filter(termsQueryBuilder2)
.filter(termsQueryBuilder3);
TermsAggregationBuilder aggregationByDate = AggregationBuilders
.terms("byDate")
.script(new Script("doc['"@timestamp"'].value.withZoneSameInstant(ZoneId.of('"America/Phoenix"')).toLocalDate()"))
.order(BucketOrder.key(true))
.size(30);
TermsAggregationBuilder aggregationById = AggregationBuilders
.terms("byId")
.field(ID_FIELD)
.order(BucketOrder.key(true))
.subAggregation(aggregationByDate)
.size(200);
// Aggregation
FiltersAggregationBuilder aggregation = AggregationBuilders
.filters("attempts_by_date_and_id",
new FiltersAggregator.KeyedFilter("success_try", termsQueryBuilder1),
new FiltersAggregator.KeyedFilter("failed_try", boolQueryBuilder))
.subAggregation(aggregationById);
how can i create a the terms and filters now that most of the classes are deprecated.