From 577b096eb1774257f475d3f1a2ea5e717c540631 Mon Sep 17 00:00:00 2001 From: CMDR furrycat Date: Sun, 2 Oct 2016 22:20:52 +0100 Subject: [PATCH] Separate bot logging from Discord logging. --- bot.py | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/bot.py b/bot.py index 593ea7d..d66683d 100755 --- a/bot.py +++ b/bot.py @@ -19,6 +19,7 @@ import time from PIL import Image dryrun = os.getenv('DRYRUN') is not None +debug = os.getenv('DEBUG') is not None if sys.version_info >= (3, 0): import urllib.request @@ -40,8 +41,10 @@ fd.close() fd = open(token_file, 'r') token = fd.readline().strip() fd.close() -logging.basicConfig(level = logging.DEBUG if os.getenv('DEBUG') is not None else logging.WARN) -log = logging.getLogger('discord') +logging.basicConfig(level = logging.DEBUG if debug else logging.WARN) +discordlog = logging.getLogger('discord') +log = logging.getLogger('catbot') +log.setLevel(logging.DEBUG if debug else logging.INFO) idletime = multiprocessing.Value('i', 900) rsstime = multiprocessing.Value('i', 600) @@ -115,7 +118,7 @@ def wait_for_prompt(p): # Get my idle status. def status(): for server in client.servers: - #print('status {} now {} last_spoke {} diff {} cutoff {}'.format(server.me.status, int(time.time()), int(last_spoke.value), int(time.time() - last_spoke.value), idletime.value)) + log.debug('status {} now {} last_spoke {} diff {} cutoff {}'.format(server.me.status, int(time.time()), int(last_spoke.value), int(time.time() - last_spoke.value), idletime.value)) return server.me.status return None @@ -334,9 +337,11 @@ def do_commands(message, command, raw, non_admin): arg = m.group(1) if arg == 'on': + discordlog.setLevel(logging.DEBUG) log.setLevel(logging.DEBUG) elif arg == 'off': - log.setLevel(logging.WARN) + discordlog.setLevel(logging.WARN) + log.setLevel(logging.INFO) elif command == 'delete': # delete @@ -362,10 +367,10 @@ def do_commands(message, command, raw, non_admin): arg = m.group(1) if arg == 'on': - print('DRYRUN mode') + log.info('DRYRUN mode') dryrun = True elif arg == 'off': - print('Live mode') + log.info('Live mode') dryrun = False elif command == 'idle': @@ -746,16 +751,16 @@ def play_greeting(greeting): @client.event @asyncio.coroutine def on_ready(): - print('Logged in as {}#{}'.format(client.user.name, client.user.id)) + log.info('Logged in as {}#{}'.format(client.user.name, client.user.id)) bot = bots.get(str(client.user.id), []) if bot is not None: feeds = bot.get('feeds', []) greetings = bot.get('greetings', []) orders = bot.get('orders', []) - print('Admins are: {}'.format(admins)) + log.info('Admins are: {}'.format(admins)) yield from wake_up(True) channels = yield from channels_to_greet() - print('Greeting in {}'.format([channel.name for channel in channels])) + log.info('Greeting in {}'.format([channel.name for channel in channels])) for channel in channels: log.debug('Greeting in {}'.format(channel.name)) sound = True @@ -768,9 +773,9 @@ def on_ready(): for member in client.get_all_members(): log.debug('Maybe unassigning {}'.format(member.name)) yield from set_unassigned(member) - print('RSS feeds: {}'.format([feed['description'] for feed in feeds if 'description' in feed])) + log.info('RSS feeds: {}'.format([feed['description'] for feed in feeds if 'description' in feed])) asyncio.async(do_feeds(feeds)) - print('Orders in {}'.format([channel.name for channel in filter(None, [client.get_channel(str(order['channel'])) for order in orders])])) + log.info('Orders in {}'.format([channel.name for channel in filter(None, [client.get_channel(str(order['channel'])) for order in orders])])) asyncio.async(do_orders(orders)) asyncio.async(maybe_sleep()) -- 2.7.4