def api_call_service(): if request.method == "POST": SimpleLogger.get_logger().info("---------- called callapi ----------") req = request.get_json(force=True) protocol = str(req.get("protocol")) ip = str(req.get("ip")) api_url = str(req.get("api_url")) data = str(req.get("data")) method = str(req.get("method")) if data is None or data == 'None': data = {} res = service_request.call_api(protocol, ip, api_url, method, data=data) res_data = { "data": jsonpickle.decode(res.content), "status_code": res.status_code } return response_builder.build_raw_response(data=res_data, status_code=res.status_code)
app.register_blueprint(collection_api) app.register_blueprint(misc_api) app.register_blueprint(service_api) app.register_blueprint(version_api) @app.route(ROOT_API, methods=['GET']) def api_discovery(): api_list = [] for rule in app.url_map.iter_rules(): methods = rule.methods if "HEAD" in methods: methods.remove("HEAD") if "OPTIONS" in methods: methods.remove("OPTIONS") api_model = ApiModel(str(rule.rule), list(methods)) api_list.append(api_model) api_list.sort(key=lambda api_model: api_model.url, reverse=False) i = 0 for a in api_list: api_list[i] = a.__dict__ i += 1 return response_builder.build_raw_response(data=api_list) if __name__ == "__main__": logger = SimpleLogger.setup(file_path="/preserve/logs/snowflake/snowflake.log", process_name="SNOWFLAKE") MongoService.init(logger) app.config["SECRET_KEY"] = "ITSASECRET" app.run(debug=False, host='0.0.0.0', port=4000, threaded=True)
def setUpClass(cls): SimpleLogger.setup()
def init_logger(): global logger logger = SimpleLogger(LOGS_DIR)
for d in data: d["created_at"] = datetime.datetime.utcnow().isoformat()[0:16] + "Z" cls.insert(table, d) cls.logger.info("done") # @classmethod # def sad(cls): # cls.db.foo.drop() # cls.db.foo.ensureIndex( {txt: "text"} ) # cls.db.foo.insert( {txt: "Robots are superior to humans"} ) # cls.db.foo.insert( {txt: "Humans are weak"} ) # cls.db.foo.insert( {txt: "I, Robot - by Isaac Asimov"} ) def import_data(): # MongoService.import_from_json(RESOURCE + "/system_stats.json", DB_SYSTEM_STATS) MongoService.import_from_json(RESOURCE + "/mock_collections.json", DB_COLLECTIONS) def reset(): MongoService.delete_all_collections() def main(logger): MongoService.init(logger) reset() import_data() if __name__ == "__main__": logger = SimpleLogger.setup(file_path="/preserve/logs/snowflake/mongo_service.log", process_name="DB_INIT") main(logger)