mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2026-01-20 15:12:59 -05:00
First commit
This commit is contained in:
60
main.py
Normal file
60
main.py
Normal file
@@ -0,0 +1,60 @@
|
||||
from core.bot import Red
|
||||
from core.global_checks import init_global_checks
|
||||
from core.events import init_events
|
||||
from core.json_flusher import init_flusher
|
||||
from core.settings import parse_cli_flags
|
||||
import logging.handlers
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
|
||||
#
|
||||
# Red - Discord Bot v3
|
||||
#
|
||||
# Made by Twentysix, improved by many
|
||||
#
|
||||
|
||||
|
||||
def init_loggers(cli_flags):
|
||||
dpy_logger = logging.getLogger("discord")
|
||||
dpy_logger.setLevel(logging.WARNING)
|
||||
console = logging.StreamHandler()
|
||||
console.setLevel(logging.WARNING)
|
||||
dpy_logger.addHandler(console)
|
||||
|
||||
logger = logging.getLogger("red")
|
||||
|
||||
red_format = logging.Formatter(
|
||||
'%(asctime)s %(levelname)s %(module)s %(funcName)s %(lineno)d: '
|
||||
'%(message)s',
|
||||
datefmt="[%d/%m/%Y %H:%M]")
|
||||
|
||||
stdout_handler = logging.StreamHandler(sys.stdout)
|
||||
stdout_handler.setFormatter(red_format)
|
||||
|
||||
if cli_flags.debug:
|
||||
os.environ['PYTHONASYNCIODEBUG'] = '1'
|
||||
logger.setLevel(logging.DEBUG)
|
||||
else:
|
||||
logger.setLevel(logging.WARNING)
|
||||
|
||||
fhandler = logging.handlers.RotatingFileHandler(
|
||||
filename='red.log', encoding='utf-8', mode='a',
|
||||
maxBytes=10**7, backupCount=5)
|
||||
fhandler.setFormatter(red_format)
|
||||
|
||||
logger.addHandler(fhandler)
|
||||
logger.addHandler(stdout_handler)
|
||||
|
||||
if __name__ == '__main__':
|
||||
cli_flags = parse_cli_flags()
|
||||
init_loggers(cli_flags)
|
||||
init_flusher()
|
||||
description = "Red v3 - Alpha"
|
||||
red = Red(cli_flags, description=description, pm_help=None)
|
||||
init_global_checks(red)
|
||||
init_events(red)
|
||||
red.load_extension('core')
|
||||
if cli_flags.dev:
|
||||
pass # load dev cog here?
|
||||
red.run(os.environ['RED_TOKEN'], bot=not cli_flags.not_bot)
|
||||
Reference in New Issue
Block a user