1
+ import logging
1
2
import os
3
+
2
4
from disnake import Intents
3
5
from disnake .ext .commands import Bot
4
-
5
6
from dotenv import load_dotenv
6
7
7
8
load_dotenv (dotenv_path = "./.env" )
8
9
TOKEN = os .getenv ("TOKEN" )
9
10
11
+ # Logger config
12
+ logger = logging .getLogger ("disnake" )
13
+ logger .setLevel (logging .DEBUG )
14
+
15
+ # Handler config
16
+ handler = logging .FileHandler (filename = "bot.log" , encoding = "utf-8" , mode = "w" )
17
+ handler .setFormatter (
18
+ logging .Formatter (
19
+ "%(asctime)s || %(levelname)s || %(name)s || %(message)s" ,
20
+ "%b %d %Y %I:%M:%S %p" ,
21
+ )
22
+ )
23
+ logger .addHandler (handler )
24
+
10
25
11
26
class Glykon (Bot ):
12
27
"""Bots class"""
@@ -20,6 +35,7 @@ def __init__(self):
20
35
)
21
36
22
37
def load_cogs (self ) -> None :
38
+ """Load cogs from the src/cogs directory"""
23
39
for file in os .listdir ("./src/cogs" ):
24
40
if file .startswith ("_" ):
25
41
continue
@@ -28,19 +44,20 @@ def load_cogs(self) -> None:
28
44
self .load_extension (f"src.cogs.{ file [:- 3 ]} " )
29
45
30
46
async def on_ready (self ) -> None :
31
- print (
47
+ """On bot ready"""
48
+ logger .info (
32
49
f"""
33
50
───── ⋆⋅☆⋅⋆ ─────
34
51
WELCOME TO { self .user .display_name }
35
- ⤷ Servers 💿: { len (self .guilds )}
36
- ⤷ Users 👥: { len (self .users )}
37
- ⤷ Cogs ⚙️: { len (self .cogs )}
52
+ ⤷ Servers 💿: { len (self .guilds )}
53
+ ⤷ Users 👥: { len (self .users )}
54
+ ⤷ Cogs ⚙️: { len (self .cogs )}
38
55
───── ⋆⋅☆⋅⋆ ─────
39
- 🟢 Ready 🟢
56
+ Status: Ready 🟢
40
57
"""
41
58
)
42
59
43
60
def run (self ) -> None :
61
+ """Run the bot"""
44
62
self .load_cogs ()
45
63
super ().run (TOKEN , reconnect = True )
46
-
0 commit comments