69 lines
1.8 KiB
Python
69 lines
1.8 KiB
Python
try:
|
|
from gevent import monkey
|
|
|
|
monkey.patch_all()
|
|
print("[MAIN] gevent mokey patch!!")
|
|
except Exception as e:
|
|
print(f"[MAIN] gevent not installed or failed to load: {e}")
|
|
# import traceback; traceback.print_exc()
|
|
import os
|
|
import sys
|
|
import traceback
|
|
|
|
import flask
|
|
import markupsafe
|
|
flask.Markup = markupsafe.Markup
|
|
sys.modules['flask.Markup'] = markupsafe.Markup # Backup for some import styles
|
|
# Injecting into flask module members for 'from flask import Markup'
|
|
if not hasattr(flask, 'Markup'):
|
|
setattr(flask, 'Markup', markupsafe.Markup)
|
|
|
|
try:
|
|
import platform
|
|
|
|
cmd = "export"
|
|
if platform.system() == "Windows":
|
|
cmd = "set"
|
|
os.system(f"{cmd} CELERYD_HIJACK_ROOT_LOGGER=false")
|
|
os.system(f"{cmd} C_FORCE_ROOT=true")
|
|
except Exception:
|
|
pass
|
|
|
|
try:
|
|
if platform.system() == "Windows":
|
|
del os.environ["SSLKEYLOGFILE"]
|
|
except Exception:
|
|
pass
|
|
|
|
sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), "lib"))
|
|
|
|
try:
|
|
import importlib.metadata
|
|
|
|
package_name = "python-socketio"
|
|
version = importlib.metadata.version(package_name)
|
|
# 개선 (비동기 + 로깅)
|
|
if int(version.replace(".", "")) < 580:
|
|
import subprocess
|
|
subprocess.Popen(["pip", "install", "--upgrade", package_name],
|
|
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
|
|
except Exception:
|
|
pass
|
|
|
|
|
|
try:
|
|
# 2024.06.13
|
|
from framework import initiaize
|
|
|
|
frame = initiaize()
|
|
|
|
# flaskfarm.main : 패키지로 실행. 패키지로 celry 실행 체크
|
|
if __name__ in ["__main__", "flaskfarm.main"] and sys.argv[0].endswith("celery") == False:
|
|
frame.start()
|
|
else:
|
|
app = frame.app
|
|
celery = frame.celery
|
|
except Exception as exception:
|
|
print(str(exception))
|
|
print(traceback.format_exc())
|