コード例 #1
0
ファイル: datasets.py プロジェクト: hysds/pele
    def post(self, type_name, dataset_name, ret_fields):
        start_time = request.args.get('start_time', None)
        end_time = request.args.get('end_time', None)
        polygon = request.args.get('polygon', None)

        terms = {
            'dataset_type.keyword': type_name,
            'dataset.keyword': dataset_name,
        }
        try:
            index = current_app.config["ES_INDEX"]
            index = "{}_*_{}".format(index, dataset_name.lower())
            page_size, offset = get_page_size_and_offset(request)
            total, docs = current_app.es_util.query_fields(index, terms, ret_fields, offset, page_size,
                                                           start_time=start_time, end_time=end_time,
                                                           polygon=polygon)
            return {
                'success': True,
                'total': total,
                'count': len(docs),
                'page_size': page_size,
                'offset': offset,
                'results': docs
            }
        except Exception as e:
            current_app.logger.error(traceback.format_exc())
            return {
                'success': False,
                'message': str(e),
            }, 500
コード例 #2
0
ファイル: datasets.py プロジェクト: hysds/pele
    def post(self, type_name):
        request_json = request.get_json()
        start_time = request_json.get('start_time', None)
        end_time = request_json.get('end_time', None)
        polygon = request_json.get('polygon', None)

        try:
            index = current_app.config["ES_INDEX"]
            page_size, offset = get_page_size_and_offset(request)
            total, ids = current_app.es_util.query_ids_by_type(index, type_name, offset, page_size,
                                                               start_time=start_time, end_time=end_time,
                                                               polygon=polygon)
            return {
                'success': True,
                'total': total,
                'count': len(ids),
                'page_size': page_size,
                'offset': offset,
                'dataset_ids': ids
            }
        except Exception as e:
            current_app.logger.error(traceback.format_exc())
            return {
                'success': False,
                'message': str(e),
            }, 500
コード例 #3
0
ファイル: datasets.py プロジェクト: hysds/pele
 def get(self):
     try:
         index = current_app.config["ES_INDEX"]
         page_size, offset = get_page_size_and_offset(request)
         total, datasets = current_app.es_util.query_datasets(index, offset, page_size)
         return {
             'success': True,
             'total': total,
             'count': len(datasets),
             'page_size': page_size,
             'offset': offset,
             'datasets': datasets
         }
     except Exception as e:
         current_app.logger.error(traceback.format_exc())
         return {
             'success': False,
             'message': str(e),
         }, 500
コード例 #4
0
ファイル: datasets.py プロジェクト: hysds/pele
 def get(self, dataset_id, ret_fields):
     try:
         index = current_app.config["ES_INDEX"]
         page_size, offset = get_page_size_and_offset(request)
         total, docs = current_app.es_util.overlaps(index, dataset_id, {}, ret_fields, offset, page_size)
         return {
             'success': True,
             'total': total,
             'count': len(docs),
             'page_size': page_size,
             'offset': offset,
             'results': docs
         }
     except Exception as e:
         current_app.logger.error(traceback.format_exc())
         return {
             'success': False,
             'message': str(e),
         }, 500