def get_list_time_ranges()

in source/ecs/metrics_helper.py [0:0]


    def get_list_time_ranges(self, start_time, end_time):
        """
        This method returns list of time ranges for the given start and end time. Each time range if of 5 days.
        :param start_time:
        :param end_time:
        :return: list of time ranges
        """
        log.debug("Getting time ranges for start time {} and end time {}".format(start_time, end_time))
        list_time_ranges = []
        start_time_new_format = datetime.strptime(start_time, TIME_FORMAT)
        end_time_new_format = datetime.strptime(end_time, TIME_FORMAT)
        time_diff = end_time_new_format - start_time_new_format
        number_of_time_ranges = math.ceil(
            time_diff / timedelta(days=NUMBER_OF_DAYS))  # Round the number to the next integer

        for item in range(number_of_time_ranges):
            start_time = start_time_new_format + item * timedelta(days=NUMBER_OF_DAYS)
            end_time = start_time + timedelta(days=NUMBER_OF_DAYS)
            time_range = {
                START_TIME: start_time.strftime(TIME_FORMAT),
                END_TIME: end_time.strftime(TIME_FORMAT)
            }
            list_time_ranges.append(time_range)
        log.debug("List of time ranges for start time {} and end time {} is {}".
                  format(start_time, end_time, list_time_ranges))
        return list_time_ranges