Hi,

I'm currently using the below code to get avg value for every 30min from 
current time stamp. How can I pass 2 joda DateTime in this range filter to 
query between those timestamp ? Please let me know


    public static Double searchAvgResultCPU(String esIndex, String esType,
        List<String> ipList) {
        String cpuMetricsQueryTime =
            MessageTranslator.getMessage("es.cpu_metrics.query.time");


        Iterator<String> i = ipList.iterator();
        logger.debug(GOT_THE_IP_LIST_AS + ipList);


        if (ipList.size() == 0) {
            logger.info(THE_IP_LIST_GOT_AS_EMPTY);
            return (double) 0;
        }
        else {
            logger.info("opening a es client connection to query..");
            Client client = ESClientFactory.getInstance();


            BoolQueryBuilder bqb = QueryBuilders.boolQuery();
            logger.info(MAKING_BOOL_QUERY_FOR_ALL_IP_LIST);
            while (i.hasNext()) {
                bqb.should(QueryBuilders.termQuery(ADDRESS, i.next()));
            }


            

*FilterBuilder fb =                
FilterBuilders.rangeFilter(TIMESTAMP).from(                    "now-" + 
cpuMetricsQueryTime).to("now");*


            SearchResponse response =
                client.prepareSearch(esIndex).setTypes(esType).setQuery(
                    QueryBuilders.filteredQuery(bqb, fb)).setSize(20)
                    .addAggregation(
                        AggregationBuilders.avg(CPU_AVERAGE).field(VALUE))
                    .execute().actionGet();


            Avg avg = response.getAggregations().get(CPU_AVERAGE);
            Double averageValue = avg.getValue();


            if (averageValue.isNaN()) {
                logger.debug(THE_AVERAGE_VALUE_IS_RETURNED_AS
                    + averageValue + RETURNING_0_AS_OUTPUT);
                return (double) 0;
            }


            logger.info(THE_AVERAGE_VALUE_RETURNED_IS + averageValue);
            return averageValue;
        }
    }


Thanks,
Subhadip

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/ae3ec5f5-9bb1-44e0-b913-e42657af4afc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to