Esempio n. 1
0
        return json.dumps(log, ensure_ascii=False)


formatter = FormatterJSON(
    "[%(levelname)s]\t%(asctime)s.%(msecs)dZ\t%(levelno)s\t%(message)s\n",
    "%Y-%m-%dT%H:%M:%S")

logging.basicConfig(level=logging.INFO)
logging.getLogger().handlers[0].setFormatter(formatter)

app = Flask(__name__)

if Utils.is_gcp():
    # Use Cloud SQL for Google Cloud Platform
    config_file_path = os.getenv("CONFIG_ENV_FILE_PATH", "config.env")
    Utils.load_env_from_config_file(config_file_path)
    app.config["DATABASE"] = MySQLDatabase(
        os.environ["DB_NAME"],
        unix_socket=os.path.join("/cloudsql", os.environ["DB_INSTANCE_NAME"]),
        user=os.environ["DB_USER"],
        password=os.environ["DB_PASSWORD"],
    )
else:
    # Use MySQL official docker image for local environment
    app.config["DATABASE"] = MySQLDatabase(
        os.getenv("DB_NAME", "casval"),
        user=os.getenv("DB_USER", "root"),
        password=os.getenv("DB_PASSWORD", "Passw0rd!"),
        host=os.getenv("DB_ENDPOINT", "127.0.0.1"),
        port=int(os.getenv("DB_PORT", "3306")),
    )