ops-api/app.py

48 lines
1.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import sys
import os.path
from logging.config import dictConfig
from flask import Flask
from flask.logging import default_handler
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'src'))
from database.mongodb import initialize_db
from routes import blueprint_api
from settings.dev import LOGGING
from settings.common import INSTANCE, VERSION
from common.utils import make_response
# 日志配置
dictConfig(LOGGING)
# app 实例,移除默认日志,加载配置文件
app = Flask(__name__)
app.logger.removeHandler(default_handler)
app.config.from_pyfile("settings/dev.py")
# 初始化数据库连接
initialize_db(app)
# 注册蓝图
app.register_blueprint(blueprint_api)
@app.after_request
def mark_global_header(resp):
"""全局 header """
# 标记当前提供服务的实例
resp.headers["Instance"] = INSTANCE
return resp
@app.route('/info')
def app_info():
"""返回实例信息实例版本、实例ID"""
return make_response(200, 1000, "success", version=VERSION, instance=INSTANCE)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5001, debug=True)