Skip to content

Instantly share code, notes, and snippets.

@Mifody
Created March 17, 2021 15:01
Show Gist options
  • Save Mifody/99a870a7cf3141d191ee5ed01cb5ce5b to your computer and use it in GitHub Desktop.
Save Mifody/99a870a7cf3141d191ee5ed01cb5ce5b to your computer and use it in GitHub Desktop.
import os
import logging
from scrapy.utils.project import get_project_settings
from scrapy.utils.log import configure_logging
from notifiers.logging import NotificationHandler
from os import getenv
from dotenv import load_dotenv
from datetime import datetime
load_dotenv()
loggers = {}
file_name = 'scrapy'
def get_logger():
global loggers
if loggers.get(file_name):
return loggers.get(file_name)
else:
settings = get_project_settings()
configure_logging(settings)
logger = logging.getLogger(file_name)
handler2 = logging.StreamHandler()
formatter = logging.Formatter(
fmt=settings.get('LOG_FORMAT'),
datefmt=settings.get('LOG_DATEFORMAT')
)
handler2.setFormatter(formatter)
handler2.setLevel(logging.DEBUG)
logger.addHandler(handler2)
defaults = {
'token': '****',
'chat_id': ****
}
hdlr = NotificationHandler('telegram', defaults=defaults)
hdlr.setLevel(logging.ERROR)
logger.addHandler(hdlr)
loggers[file_name] = logger
return logger
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment