def main(): logging.basicConfig(**{ 'format': '[%(asctime)s] %(message)s', 'datefmt': '%m/%d/%Y %H:%M:%S', 'level': logging.DEBUG if settings.DEBUG else logging.INFO, 'stream': sys.stdout, }) try: b = bot.Bot() b.run() except KeyboardInterrupt: pass
from yaml import Loader parser = ArgumentParser(description="This is here mostly for Docker :)") parser.add_argument('--loglevel', metavar='l', type=str, help='Log Level [INFO, DEBUG, WARNING]') parser.add_argument('--verbose', action='store_true', help='Log to stdout') args = parser.parse_args() with open('./config/config.yml', 'r') as f: data = load(f, Loader=Loader) if args.loglevel: levels = {'INFO': INFO, 'DEBUG': DEBUG, 'WARNING': WARNING} logger.setLevel(levels[args.loglevel]) logger.debug('Config loaded') mmpy_bot_settings = data.get('mmpy_bot') for k in mmpy_bot_settings.keys(): setattr(settings, k, mmpy_bot_settings.get(k)) logger.debug('Setting {} to {}'.format(k, getattr(settings, k))) logger.debug('Initialising bot...') bot.settings = settings pybot = bot.Bot() pybot.run() logger.info('Bot running... happy chatting!')