46 lines
1.2 KiB
Python
Executable File
46 lines
1.2 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
import asyncio
|
|
import discord
|
|
from discord.ext import commands
|
|
from dotenv import load_dotenv
|
|
import logging
|
|
import os
|
|
import sys
|
|
|
|
import database
|
|
|
|
# Create custom logging handler
|
|
console_handler = logging.StreamHandler(sys.stdout)
|
|
console_formatter = logging.Formatter(
|
|
"[%(asctime)s] [%(levelname)s] [%(name)s] %(message)s")
|
|
console_handler.setFormatter(console_formatter)
|
|
|
|
# Make sure all loggers use this handler
|
|
root_logger = logging.getLogger()
|
|
root_logger.setLevel(logging.INFO)
|
|
root_logger.addHandler(console_handler)
|
|
|
|
# Get bot logger
|
|
logger = logging.getLogger("[REDACTED]-bot")
|
|
|
|
# Load credentials
|
|
load_dotenv()
|
|
TOKEN = os.getenv('DISCORD_TOKEN')
|
|
|
|
# client = discord.Client()
|
|
client = commands.Bot(
|
|
command_prefix = '!', intents=discord.Intents.all(), log_hander=False)
|
|
|
|
# You need to import os for this method
|
|
@client.event
|
|
async def on_ready():
|
|
logger.info(f'{client.user} is now running')
|
|
# Load cogs
|
|
for filename in os.listdir('./cogs'):
|
|
if filename.endswith('.py'):
|
|
await client.load_extension(f'cogs.{filename[:-3]}')
|
|
logger.info(f'Loaded {filename} cog')
|
|
|
|
client.run(TOKEN, log_handler=None)
|