Sindbad~EG File Manager
from flask import Flask, url_for, request ,redirect
# from flask_socketio import SocketIO, emit
from flask_cors import CORS
import os, time
import datetime
from datetime import datetime as dt
import traceback
import logging
app = Flask(__name__)
CORS(app)
CORS(app, support_credentials=True)
cors = CORS(app, resources= {r"/*" : { "origins": "*"} })
app.config.from_object('core.config.SECRET_KEY')
app.config.from_object('core.config.ProductionConfig')
# app.config.from_object('core.config.CORS_HEADERS')
os.environ['TZ'] ='Asia/Calcutta'
time.tzset()
config = app.config
# from core.library.cryptography import Cryptography
from core.model.Log import Log
# from core.model.APIModel import APIModel
#from core import routes
from core.controller.ApiController import app as api
from core.controller.RazorpayController import app as razorpay
from core.controller.InstamojoController import app as instamojo
from core.controller.PayumoneyController import app as payumoney
#payumoney
from core.controller.PaypalController import app as paypal
from core.controller.BOController import app as bo
app.register_blueprint(api, url_prefix='')
app.register_blueprint(razorpay, url_prefix ='/payment_api')
app.register_blueprint(instamojo, url_prefix ='/payment_api')
app.register_blueprint(payumoney, url_prefix ='/payment_api')
app.register_blueprint(paypal, url_prefix ='/payment_api')
app.register_blueprint(bo, url_prefix ='/bo')
class SQLAlchemyHandler(logging.Handler):
def emit(self, record):
trace = None
exc = record.__dict__['exc_info']
if exc:
trace = traceback.format_exc()
path = request.path
method = request.method
ip = request.remote_addr
data = {
'url':path,
'logger_name':record.__dict__['name'],
'level':record.__dict__['levelname'],
'context':trace,
'message':record.__dict__['msg'],
'created_at':dt.now(),
'ip_address':ip
}
Log().insert(data)
# log = Log(
# logger=record.__dict__['name'],
# level=record.__dict__['levelname'],
# trace=trace,
# msg=record.__dict__['msg'],)
# DB.session.add(log)
# DB.session.commit()
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
ch = SQLAlchemyHandler()
ch.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
loggers = [logger, logging.getLogger('sqlalchemy'), logging.getLogger('flask.app')]
for l in loggers:
l.addHandler(ch)
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists