breaking up after abusive relationship with logger
This commit is contained in:
@ -18,7 +18,7 @@ from flask import current_app
|
||||
from apscheduler.schedulers.background import BackgroundScheduler
|
||||
|
||||
|
||||
from capsulflask.shared import my_exec_info_message
|
||||
from capsulflask.shared import *
|
||||
from capsulflask import hub_model, spoke_model, cli
|
||||
from capsulflask.btcpay import client as btcpay
|
||||
from capsulflask.http_client import MyHTTPClient
|
||||
@ -50,7 +50,7 @@ def create_app():
|
||||
app = Flask(__name__)
|
||||
|
||||
app.config.from_mapping(
|
||||
TESTING=config.get("TESTING", False),
|
||||
TESTING=config.get("TESTING", "False").lower() in ['true', '1', 't', 'y', 'yes'],
|
||||
BASE_URL=config.get("BASE_URL", "http://localhost:5000"),
|
||||
SECRET_KEY=config.get("SECRET_KEY", "dev"),
|
||||
HUB_MODE_ENABLED=config.get("HUB_MODE_ENABLED", "True").lower() in ['true', '1', 't', 'y', 'yes'],
|
||||
@ -96,28 +96,21 @@ def create_app():
|
||||
|
||||
app.config['HUB_URL'] = config.get("HUB_URL", app.config['BASE_URL'])
|
||||
|
||||
log_filters = {
|
||||
'setLogLevelToDebugForHeartbeatRelatedMessages': {
|
||||
'()': SetLogLevelToDebugForHeartbeatRelatedMessagesFilter,
|
||||
}
|
||||
}
|
||||
if app.config['TESTING'] != False:
|
||||
log_filters['captureLogOutputDuringTests'] = {
|
||||
'()': CaptureLogOutputDuringTestsFilter,
|
||||
}
|
||||
|
||||
|
||||
logging_dict_config({
|
||||
'version': 1,
|
||||
'formatters': {'default': {
|
||||
'format': '[%(asctime)s] %(levelname)s in %(module)s: %(message)s',
|
||||
}},
|
||||
'filters': log_filters,
|
||||
'filters': {
|
||||
'setLogLevelToDebugForHeartbeatRelatedMessages': {
|
||||
'()': SetLogLevelToDebugForHeartbeatRelatedMessagesFilter,
|
||||
}
|
||||
},
|
||||
'handlers': {'wsgi': {
|
||||
'class': 'logging.StreamHandler',
|
||||
'stream': 'ext://flask.logging.wsgi_errors_stream',
|
||||
'formatter': 'default',
|
||||
'filters': list(log_filters.keys())
|
||||
'filters': ['setLogLevelToDebugForHeartbeatRelatedMessages']
|
||||
}},
|
||||
'root': {
|
||||
'level': app.config['LOG_LEVEL'],
|
||||
@ -125,11 +118,11 @@ def create_app():
|
||||
}
|
||||
})
|
||||
|
||||
# app.logger.critical("critical")
|
||||
# app.logger.error("error")
|
||||
# app.logger.warning("warning")
|
||||
# app.logger.info("info")
|
||||
# app.logger.debug("debug")
|
||||
# mylog_critical(app, "critical")
|
||||
# mylog_error(app, "error")
|
||||
# mylog_warning(app, "warning")
|
||||
# mylog_info(app, "info")
|
||||
# mylog_debug(app, "debug")
|
||||
|
||||
stripe.api_key = app.config['STRIPE_SECRET_KEY']
|
||||
stripe.api_version = app.config['STRIPE_API_VERSION']
|
||||
@ -137,7 +130,7 @@ def create_app():
|
||||
if app.config['MAIL_SERVER'] != "":
|
||||
app.config['FLASK_MAIL_INSTANCE'] = Mail(app)
|
||||
else:
|
||||
app.logger.warning("No MAIL_SERVER configured. capsul will simply print emails to stdout.")
|
||||
mylog_warning(app, "No MAIL_SERVER configured. capsul will simply print emails to stdout.")
|
||||
app.config['FLASK_MAIL_INSTANCE'] = StdoutMockFlaskMail()
|
||||
|
||||
app.config['HTTP_CLIENT'] = MyHTTPClient(timeout_seconds=int(app.config['INTERNAL_HTTP_TIMEOUT_SECONDS']))
|
||||
@ -148,7 +141,7 @@ def create_app():
|
||||
app.config['BTCPAY_CLIENT'] = btcpay.Client(api_uri=app.config['BTCPAY_URL'], pem=app.config['BTCPAY_PRIVATE_KEY'])
|
||||
app.config['BTCPAY_ENABLED'] = True
|
||||
except:
|
||||
app.logger.warning("unable to create btcpay client. Capsul will work fine except cryptocurrency payments will not work. The error was: " + my_exec_info_message(sys.exc_info()))
|
||||
mylog_warning(app, "unable to create btcpay client. Capsul will work fine except cryptocurrency payments will not work. The error was: " + my_exec_info_message(sys.exc_info()))
|
||||
|
||||
# only start the scheduler and attempt to migrate the database if we are running the app.
|
||||
# otherwise we are running a CLI command.
|
||||
@ -159,7 +152,7 @@ def create_app():
|
||||
('test' in command_line)
|
||||
)
|
||||
|
||||
app.logger.info(f"is_running_server: {is_running_server}")
|
||||
mylog_info(app, f"is_running_server: {is_running_server}")
|
||||
|
||||
if app.config['HUB_MODE_ENABLED']:
|
||||
if app.config['HUB_MODEL'] == "capsul-flask":
|
||||
@ -252,7 +245,7 @@ def url_for_with_cache_bust(endpoint, **values):
|
||||
|
||||
class StdoutMockFlaskMail:
|
||||
def send(self, message: Message):
|
||||
current_app.logger.info(f"Email would have been sent if configured:\n\nto: {','.join(message.recipients)}\nsubject: {message.subject}\nbody:\n\n{message.body}\n\n")
|
||||
mylog_info(current_app, f"Email would have been sent if configured:\n\nto: {','.join(message.recipients)}\nsubject: {message.subject}\nbody:\n\n{message.body}\n\n")
|
||||
|
||||
class SetLogLevelToDebugForHeartbeatRelatedMessagesFilter(logging.Filter):
|
||||
def isHeartbeatRelatedString(self, thing):
|
||||
@ -279,13 +272,4 @@ class SetLogLevelToDebugForHeartbeatRelatedMessagesFilter(logging.Filter):
|
||||
return True
|
||||
|
||||
|
||||
class CaptureLogOutputDuringTestsFilter(logging.Filter):
|
||||
def filter(self, record):
|
||||
file_object = open('unittest-output.log', 'a')
|
||||
file_object.write("%s" % record.msg)
|
||||
for arg in record.args:
|
||||
file_object.write("%s" % arg)
|
||||
|
||||
file_object.write("\n")
|
||||
file_object.close()
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user