Java Code Examples for org.elasticsearch.search.aggregations.bucket.range.DateRangeAggregationBuilder#addRange()
The following examples show how to use
org.elasticsearch.search.aggregations.bucket.range.DateRangeAggregationBuilder#addRange() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ParseUtils.java From anomaly-detection with Apache License 2.0 | 6 votes |
public static SearchSourceBuilder generatePreviewQuery( AnomalyDetector detector, List<Entry<Long, Long>> ranges, NamedXContentRegistry xContentRegistry ) throws IOException { DateRangeAggregationBuilder dateRangeBuilder = dateRange("date_range").field(detector.getTimeField()).format("epoch_millis"); for (Entry<Long, Long> range : ranges) { dateRangeBuilder.addRange(range.getKey(), range.getValue()); } if (detector.getFeatureAttributes() != null) { for (Feature feature : detector.getFeatureAttributes()) { AggregatorFactories.Builder internalAgg = parseAggregators( feature.getAggregation().toString(), xContentRegistry, feature.getId() ); dateRangeBuilder.subAggregation(internalAgg.getAggregatorFactories().iterator().next()); } } return new SearchSourceBuilder().query(detector.getFilterQuery()).size(0).aggregation(dateRangeBuilder); }
Example 2
Source File: DateRangeAggregationMain.java From elasticsearch-pool with Apache License 2.0 | 6 votes |
public static void main(String[] args) throws IOException { RestHighLevelClient client = HighLevelClient.getInstance(); try{ DateRangeAggregationBuilder dateRangeAggregationBuilder = AggregationBuilders.dateRange("date_range"); dateRangeAggregationBuilder.field("ctm"); dateRangeAggregationBuilder.format("yyyy-MM-dd HH:mm:ss"); dateRangeAggregationBuilder.addRange("2018-07-10 00:00:00","2018-07-11 00:00:00"); dateRangeAggregationBuilder.timeZone(DateTimeZone.forOffsetHours(0)); TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery("cmd","weather_info"); SearchRequest searchRequest = new SearchRequest("serverlog_20180710");//限定index searchRequest.types("log");//限定type SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); searchSourceBuilder.query(termQueryBuilder); searchSourceBuilder.aggregation(dateRangeAggregationBuilder); searchRequest.source(searchSourceBuilder); SearchResponse searchResponse = client.search(searchRequest); System.out.println(searchResponse); }finally{ HighLevelClient.close(); } }
Example 3
Source File: ElasticQueryBuilder.java From vind with Apache License 2.0 | 6 votes |
private static void intervalToRange(Interval.UtilDateInterval<?> interval, DateRangeAggregationBuilder rangeAggregation) { final Date start = interval.getStart(); final Date end = interval.getEnd(); if (Objects.nonNull(start) && Objects.nonNull(end)) { rangeAggregation.addRange( interval.getName(), ZonedDateTime.ofInstant(start.toInstant(), ZoneId.of("UTC")), ZonedDateTime.ofInstant(end.toInstant(), ZoneId.of("UTC"))); } else { Optional.ofNullable(start).ifPresent(n -> rangeAggregation.addUnboundedFrom( interval.getName(), ZonedDateTime.ofInstant(n.toInstant(), ZoneId.of("UTC")))); Optional.ofNullable(end).ifPresent(n -> rangeAggregation.addUnboundedTo( interval.getName(), ZonedDateTime.ofInstant(n.toInstant(), ZoneId.of("UTC")))); } }
Example 4
Source File: ElasticQueryBuilder.java From vind with Apache License 2.0 | 5 votes |
private static void intervalToRange(Interval.ZonedDateTimeInterval<?> interval, DateRangeAggregationBuilder rangeAggregation) { final ZonedDateTime start = interval.getStart(); final ZonedDateTime end = interval.getEnd(); if (Objects.nonNull(start) && Objects.nonNull(end)) { rangeAggregation.addRange(interval.getName(), start, end); } else { Optional.ofNullable(start).ifPresent(n -> rangeAggregation.addUnboundedFrom(interval.getName(), n)); Optional.ofNullable(end).ifPresent(n -> rangeAggregation.addUnboundedTo(interval.getName(), n)); } }
Example 5
Source File: ElasticQueryBuilder.java From vind with Apache License 2.0 | 5 votes |
private static void intervalToRange(Interval.DateMathInterval<?> interval, DateRangeAggregationBuilder rangeAggregation) { final DateMathExpression start = interval.getStart(); final DateMathExpression end = interval.getEnd(); if (Objects.nonNull(start) && Objects.nonNull(end)) { rangeAggregation.addRange( interval.getName(), start.toElasticString(), end.toElasticString() // ZonedDateTime.ofInstant(Instant.ofEpochSecond(start.getTimeStamp()), ZoneId.of("UTC")), // ZonedDateTime.ofInstant(Instant.ofEpochSecond(end.getTimeStamp()), ZoneId.of("UTC")) ); } else { Optional.ofNullable(start).ifPresent(n -> rangeAggregation.addUnboundedFrom( interval.getName(), n.toElasticString() //ZonedDateTime.ofInstant(Instant.ofEpochSecond(n.getTimeStamp()), ZoneId.of("UTC")) ) ); Optional.ofNullable(end).ifPresent(n -> rangeAggregation.addUnboundedTo( interval.getName(), n.toElasticString() //ZonedDateTime.ofInstant(Instant.ofEpochSecond(n.getTimeStamp()), ZoneId.of("UTC")) ) ); } }