Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Commit
·
535f98f
1
Parent(s):
69d683b
added stuff
Browse files- images/FireBirdTech (1).png +2 -2
- src/utils/logger.py +32 -12
images/FireBirdTech (1).png
CHANGED
![]() |
Git LFS Details
|
![]() |
Git LFS Details
|
src/utils/logger.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1 |
import os
|
2 |
import time
|
3 |
import logging
|
|
|
4 |
from dotenv import load_dotenv
|
5 |
|
6 |
load_dotenv()
|
@@ -21,28 +22,47 @@ class Logger:
|
|
21 |
"%(asctime)s - %(name)s - %(levelname)s - %(message)s" if see_time else "%(message)s,"
|
22 |
)
|
23 |
|
24 |
-
|
|
|
25 |
file_handler.setFormatter(formatter)
|
26 |
self.logger.addHandler(file_handler)
|
27 |
|
28 |
if console_log:
|
29 |
-
|
|
|
30 |
console_handler.setFormatter(formatter)
|
|
|
|
|
|
|
31 |
self.logger.addHandler(console_handler)
|
32 |
|
33 |
def log_message(self, message: str, level: int = logging.INFO):
|
34 |
if not self.is_dev:
|
35 |
return
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
|
47 |
def disable_logging(self):
|
48 |
self.logger.disabled = True
|
|
|
1 |
import os
|
2 |
import time
|
3 |
import logging
|
4 |
+
import sys
|
5 |
from dotenv import load_dotenv
|
6 |
|
7 |
load_dotenv()
|
|
|
22 |
"%(asctime)s - %(name)s - %(levelname)s - %(message)s" if see_time else "%(message)s,"
|
23 |
)
|
24 |
|
25 |
+
# File handler with UTF-8 encoding
|
26 |
+
file_handler = logging.FileHandler(f"./logs/{name}.log", encoding='utf-8')
|
27 |
file_handler.setFormatter(formatter)
|
28 |
self.logger.addHandler(file_handler)
|
29 |
|
30 |
if console_log:
|
31 |
+
# Console handler with UTF-8 encoding
|
32 |
+
console_handler = logging.StreamHandler(sys.stdout)
|
33 |
console_handler.setFormatter(formatter)
|
34 |
+
# Force UTF-8 encoding for console output
|
35 |
+
if hasattr(console_handler.stream, 'reconfigure'):
|
36 |
+
console_handler.stream.reconfigure(encoding='utf-8')
|
37 |
self.logger.addHandler(console_handler)
|
38 |
|
39 |
def log_message(self, message: str, level: int = logging.INFO):
|
40 |
if not self.is_dev:
|
41 |
return
|
42 |
+
try:
|
43 |
+
if level == logging.INFO:
|
44 |
+
self.logger.info(message)
|
45 |
+
elif level == logging.ERROR:
|
46 |
+
self.logger.error(message)
|
47 |
+
elif level == logging.WARNING:
|
48 |
+
self.logger.warning(message)
|
49 |
+
elif level == logging.DEBUG:
|
50 |
+
self.logger.debug(message)
|
51 |
+
else:
|
52 |
+
self.logger.info(message)
|
53 |
+
except UnicodeEncodeError:
|
54 |
+
# Fallback: remove emoji characters if encoding fails
|
55 |
+
safe_message = message.encode('ascii', 'ignore').decode('ascii')
|
56 |
+
if level == logging.INFO:
|
57 |
+
self.logger.info(safe_message)
|
58 |
+
elif level == logging.ERROR:
|
59 |
+
self.logger.error(safe_message)
|
60 |
+
elif level == logging.WARNING:
|
61 |
+
self.logger.warning(safe_message)
|
62 |
+
elif level == logging.DEBUG:
|
63 |
+
self.logger.debug(safe_message)
|
64 |
+
else:
|
65 |
+
self.logger.info(safe_message)
|
66 |
|
67 |
def disable_logging(self):
|
68 |
self.logger.disabled = True
|