public AbstractAggregationBuilder getFacet() { Assert.notNull(getName(), "Facet name can't be a null !!!"); Assert.isTrue(!StringUtils.isEmpty(field), "Please select field on which to build the facet !!!"); Assert.isTrue(interval > 0, "Please provide interval as positive value greater them zero !!!"); DateHistogramAggregationBuilder dateHistogramBuilder = AggregationBuilders.dateHistogram(getName()); dateHistogramBuilder.field(field); if (timeUnit != null) { dateHistogramBuilder.dateHistogramInterval(timeUnit); } else { dateHistogramBuilder.interval(interval); } dateHistogramBuilder.subAggregation(AggregationBuilders.extendedStats(INTERNAL_STATS).field(field)); return dateHistogramBuilder; } }
DateHistogramAggregationBuilder dateHistogram = AggregationBuilders.dateHistogram(alias).format(TIME_FARMAT); String value = null; for (KVValue kv : field.getParams()) {
public LinkedHashMap<String, Long> fullDateHistogram(final String indexName, int timezoneOffset, String histogram_timefield) { // prepare request SearchRequestBuilder request = elasticsearchClient.prepareSearch(indexName) .setSearchType(SearchType.QUERY_THEN_FETCH) .setQuery(QueryBuilders.constantScoreQuery(QueryBuilders.matchAllQuery())) .setFrom(0) .setSize(0); request.clearRescorers(); request.addAggregation(AggregationBuilders.dateHistogram(histogram_timefield).field(histogram_timefield).timeZone("UTC").minDocCount(1).interval(DateHistogramInterval.DAY)); // get response SearchResponse response = request.execute().actionGet(); // evaluate date histogram: InternalHistogram<InternalHistogram.Bucket> dateCounts = response.getAggregations().get(histogram_timefield); LinkedHashMap<String, Long> list = new LinkedHashMap<>(); for (InternalHistogram.Bucket bucket : dateCounts.getBuckets()) { Calendar cal = Calendar.getInstance(DateParser.UTCtimeZone); org.joda.time.DateTime k = (org.joda.time.DateTime) bucket.getKey(); cal.setTime(k.toDate()); cal.add(Calendar.MINUTE, -timezoneOffset); long docCount = bucket.getDocCount(); list.put(DateParser.dayDateFormat.format(cal.getTime()), docCount); } return list; }
if (field.equals(histogram_timefield)) { addTimeHistogram = true; request.addAggregation(AggregationBuilders.dateHistogram(histogram_timefield).field(histogram_timefield).timeZone("UTC").minDocCount(0).interval(dateHistogrammInterval)); } else { request.addAggregation(AggregationBuilders.terms(field).field(field).minDocCount(1).size(aggregationLimit));
AggregationBuilder dateHistogram = AggregationBuilders.dateHistogram(CREATED_AT.getName()) .field(CREATED_AT.getFieldName()) .dateHistogramInterval(bucketSize)
final Terms.Order termsOrder = sorting == Sorting.Direction.DESC ? Terms.Order.count(false) : Terms.Order.count(true); final DateHistogramAggregationBuilder histogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .dateHistogramInterval(interval.toESInterval())
public HistogramResult histogram(String query, DateHistogramInterval interval, String filter, TimeRange range) { final DateHistogramAggregationBuilder histogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .dateHistogramInterval(interval.toESInterval()); final SearchSourceBuilder searchSourceBuilder = filteredSearchRequest(query, filter, range) .aggregation(histogramBuilder); final Set<String> affectedIndices = determineAffectedIndices(range, filter); if (affectedIndices.isEmpty()) { return DateHistogramResult.empty(query, searchSourceBuilder.toString(), interval); } final Search.Builder searchBuilder = new Search.Builder(searchSourceBuilder.toString()) .addType(IndexMapping.TYPE_MESSAGE) .addIndex(affectedIndices) .ignoreUnavailable(true) .allowNoIndices(true); final io.searchbox.core.SearchResult searchResult = wrapInMultiSearch(searchBuilder.build(), () -> "Unable to retrieve histogram"); recordEsMetrics(searchResult, range); final HistogramAggregation histogramAggregation = searchResult.getAggregations().getHistogramAggregation(AGG_HISTOGRAM); return new DateHistogramResult( histogramAggregation, query, searchSourceBuilder.toString(), interval, tookMsFromSearchResult(searchResult) ); }
boolean includeStats, boolean includeCardinality) { final DateHistogramAggregationBuilder dateHistogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .dateHistogramInterval(interval.toESInterval());
@JsonIgnore @Override public DateHistogramAggregationBuilder getEsAggregate() { DateHistogramAggregationBuilder ret = AggregationBuilders.dateHistogram(getId()) .field(getField()) .timeZone(DateTimeZone.getDefault());
.subAggregation(AggregationBuilders.dateHistogram("product_group_by_created_date_time").field("created_date_time") .dateHistogramInterval(DateHistogramInterval.YEAR) .subAggregation(AggregationBuilders.avg("product_avg_price").field("price")))
AggregationBuilder dateHistogram = AggregationBuilders.dateHistogram(PARAM_CREATED_AT) .field(IssueIndexDefinition.FIELD_ISSUE_FUNC_CREATED_AT) .dateHistogramInterval(bucketSize)
final DateHistogramInterval interval = getInterval(timeRange, maxHistogramIntervalSlots, histogram); requestBuilder.addAggregation(AggregationBuilders.dateHistogram("eventsCount") .interval(interval).field(Event.FIELD_TIMESTAMP).order(Order.KEY_ASC));
final Terms.Order termsOrder = sorting == Sorting.Direction.DESC ? Terms.Order.count(false) : Terms.Order.count(true); final DateHistogramBuilder histogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .interval(interval.toESInterval())
.addAggregation(AggregationBuilders.terms("flop_uris").field("request.uri") .order(Terms.Order.aggregation("_count", true)).size(10)) .addAggregation(AggregationBuilders.dateHistogram("request_histogram").field("timestamp") .interval(new DateHistogramInterval(precision)) .subAggregation(AggregationBuilders.terms("methods").field("request.method")));
DateHistogramBuilder agg = AggregationBuilders.dateHistogram(histogramQueryItem.getAggregationName()); agg.field(histogramQueryItem.getFieldName()); agg.interval(Long.parseLong(histogramQueryItem.getInterval()));
DateHistogramBuilder agg = AggregationBuilders.dateHistogram(histogramQueryItem.getAggregationName()); agg.field(histogramQueryItem.getFieldName()); agg.interval(Long.parseLong(histogramQueryItem.getInterval()));
DateHistogramBuilder agg = AggregationBuilders.dateHistogram(histogramQueryItem.getAggregationName()); agg.field(histogramQueryItem.getFieldName()); agg.interval(Long.parseLong(histogramQueryItem.getInterval()));
DateHistogramBuilder agg = AggregationBuilders.dateHistogram(histogramQueryItem.getAggregationName()); agg.field(histogramQueryItem.getFieldName()); agg.interval(Long.parseLong(histogramQueryItem.getInterval()));
public HistogramResult histogram(String query, DateHistogramInterval interval, String filter, TimeRange range) { final DateHistogramBuilder histogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .interval(interval.toESInterval()); final SearchSourceBuilder searchSourceBuilder = filteredSearchRequest(query, filter, range) .aggregation(histogramBuilder); final Set<String> affectedIndices = determineAffectedIndices(range, filter); if (affectedIndices.isEmpty()) { return DateHistogramResult.empty(query, searchSourceBuilder.toString(), interval); } final Search.Builder searchBuilder = new Search.Builder(searchSourceBuilder.toString()) .addType(IndexMapping.TYPE_MESSAGE) .addIndex(affectedIndices) .ignoreUnavailable(true) .allowNoIndices(true); final io.searchbox.core.SearchResult searchResult = wrapInMultiSearch(searchBuilder.build(), () -> "Unable to retrieve histogram"); recordEsMetrics(searchResult, range); final HistogramAggregation histogramAggregation = searchResult.getAggregations().getHistogramAggregation(AGG_HISTOGRAM); return new DateHistogramResult( histogramAggregation, query, searchSourceBuilder.toString(), interval, tookMsFromSearchResult(searchResult) ); }
boolean includeStats, boolean includeCardinality) { final DateHistogramBuilder dateHistogramBuilder = AggregationBuilders.dateHistogram(AGG_HISTOGRAM) .field(Message.FIELD_TIMESTAMP) .interval(interval.toESInterval());