30 lines
693 B
Python
30 lines
693 B
Python
from PySide6.QtCore import QObject, Signal
|
|
from loguru import logger
|
|
import sys
|
|
|
|
class Logger(QObject):
|
|
log_signal = Signal(str)
|
|
|
|
def __init__(self):
|
|
super().__init__()
|
|
logger.remove() # Remove default logger
|
|
logger.add(self.emit_log, level="INFO")
|
|
logger.add(sys.stderr, level="ERROR")
|
|
|
|
def emit_log(self, message):
|
|
self.log_signal.emit(message)
|
|
|
|
def info(self, message):
|
|
logger.info(message)
|
|
|
|
def warning(self, message):
|
|
logger.warning(message)
|
|
|
|
def error(self, message):
|
|
logger.error(message)
|
|
|
|
def debug(self, message):
|
|
logger.debug(message)
|
|
|
|
# Global logger instance
|
|
app_logger = Logger() |