update logging to be on a per file basis

This commit is contained in:
2025-04-28 10:43:45 +02:00
parent 98ac7377ac
commit e6bbc469b1
12 changed files with 148 additions and 15 deletions

View File

@@ -1,6 +1,16 @@
import datetime
from src import logger
from dataclasses import dataclass
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
@dataclass
@@ -14,6 +24,7 @@ class Semester:
logger.debug(
f"Initialized Semester class with values: month: {_month}, semester: {_semester}, year {_year}"
)
def __post_init__(self):
if isinstance(self._year, str):
self._year = int(self._year)

View File

@@ -1,6 +1,6 @@
import requests
from bs4 import BeautifulSoup
from src import logger
# import sleep_and_retry decorator to retry requests
from ratelimit import limits, sleep_and_retry
@@ -8,6 +8,20 @@ from ratelimit import limits, sleep_and_retry
from src.logic.dataclass import BookData
from src.transformers import ARRAYData, BibTeXData, COinSData, RDSData, RISData
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add(
f"logs/webrequest.log",
rotation="1 day",
compression="zip",
)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
API_URL = "https://rds.ibs-bw.de/phfreiburg/opac/RDSIndexrecord/{}/"

View File

@@ -2,11 +2,22 @@ import hashlib
from PyQt6 import QtCore, QtWidgets
from src import Icon, logger
from src.backend.admin_console import AdminCommands
from src.backend.database import Database
from .dialog_sources.Ui_login import Ui_Dialog
import sys
from loguru import logger as log
from src import Icon
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
class LoginDialog(Ui_Dialog):

View File

@@ -3,11 +3,26 @@ import sys
from PyQt6 import QtWidgets
from src import Icon, settings as config, logger
from src import Icon, settings as config
from .dialog_sources.Ui_mail_preview import Ui_eMailPreview as MailPreviewDialog
from .mailTemplate import MailTemplateDialog
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add(
"logs/mail.log",
rotation="1 day",
compression="zip",
enqueue=True,
)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
empty_signature = """<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

View File

@@ -5,10 +5,25 @@ from PyQt6 import QtGui, QtWidgets, QtCore
from src import Icon
from .dialog_sources import NewMailTemplateDesignerDialog
from src import logger
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add(
f"logs/mail.log",
enqueue=True,
)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
class MailTemplateDialog(QtWidgets.QDialog, NewMailTemplateDesignerDialog):
updateSignal = QtCore.pyqtSignal()
def __init__(self, parent=None) -> None:
super().__init__(parent)
self.setupUi(self)
@@ -38,6 +53,7 @@ class MailTemplateDialog(QtWidgets.QDialog, NewMailTemplateDesignerDialog):
QtWidgets.QDialogButtonBox.StandardButton.Cancel
).clicked.connect(self.closeNow)
logger.info("Mail template dialog setup complete")
def save_template(self):
# print("save triggered")
# create a dialog to ask for the name of the template

View File

@@ -4,6 +4,13 @@ from src.backend import AutoAdder
from .dialog_sources.Ui_parsed_titles import Ui_Form
import loguru
import sys
log = loguru.logger
log.remove()
log.add("application.log", rotation="1 week", retention="1 month")
log.add(sys.stdout, level="INFO")
class ParsedTitles(QtWidgets.QWidget, Ui_Form):
@@ -33,7 +40,7 @@ class ParsedTitles(QtWidgets.QWidget, Ui_Form):
self.worker = None
def start(self):
logger.info("Starting AutoAdder")
log.info("Starting AutoAdder")
self.worker = AutoAdder(
data=self.signatures,
@@ -52,8 +59,8 @@ class ParsedTitles(QtWidgets.QWidget, Ui_Form):
self.worker.start()
def on_completion(self):
logger.info("AutoAdder finished")
logger.info("Returning data")
log.info("AutoAdder finished")
log.info("Returning data")
# create a function that closes the dialog
@@ -62,7 +69,7 @@ class ParsedTitles(QtWidgets.QWidget, Ui_Form):
length = self.listWidget.count()
# print(f"Length of listWidget: {length}")
if length == 0:
logger.info("AutoAdder finished")
log.info("AutoAdder finished")
self.buttonBox.accepted.emit()
def update_lists(self, signal):

View File

@@ -1,7 +1,20 @@
from PyQt6 import QtCore, QtGui, QtWidgets
from src import Icon, settings, logger
from src import Icon, settings
from .dialog_sources.Ui_settings import Ui_Dialog as _settings
from src.ui.widgets.iconLine import IconWidget
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add(
f"logs/settings.log",
)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
base = """'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

View File

@@ -1,9 +1,18 @@
from src import logger
from PyQt6 import QtWidgets, QtCore
from PyQt6.QtCore import QDate
from PyQt6.QtGui import QColor, QPen
from src.backend import Database
import darkdetect
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
color = "#ddfb00" if darkdetect.isDark() else "#2204ff"
pen = QPen(QColor(color))

View File

@@ -1,8 +1,17 @@
from .widget_sources.Ui_admin_edit_prof import Ui_Dialog #
from PyQt6 import QtWidgets
from src import logger
from src.logic import Prof
from src.backend import Database
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
class EditProf(QtWidgets.QDialog, Ui_Dialog):

View File

@@ -4,11 +4,19 @@ from .widget_sources.Ui_elsa_maindialog import Ui_Dialog
from PyQt6 import QtCore, QtWidgets, QtGui
from PyQt6.QtGui import QRegularExpressionValidator
from PyQt6.QtCore import QDate
from src import Icon, logger
from src import Icon
from src.backend import Semester, Database
from src.logic import elsa_word_to_csv, Prof
from src.ui.dialogs import ElsaAddEntry, popus_confirm
from src.ui.widgets import FilePicker, DataGraph
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add("logs/elsa_main.log", enqueue=True)
logger.add(sys.stdout)
class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):

View File

@@ -1,6 +1,16 @@
from .widget_sources.Ui_icon_widget import Ui_Dialog
from PyQt6 import QtWidgets
from src import logger
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
class IconWidget(QtWidgets.QWidget, Ui_Dialog):

View File

@@ -2,12 +2,22 @@ from .widget_sources.Ui_search_statistic_page import Ui_Dialog
from PyQt6 import QtWidgets, QtGui, QtCore
from PyQt6.QtCore import pyqtSignal
from src.backend import Database, Semester
from src import logger
from src.logic import custom_sort, Prof, sort_semesters_list
from src.ui.dialogs import Mail_Dialog, ApparatExtendDialog, reminder_ui
from src.ui.widgets import DataGraph, StatusWidget
from natsort import natsorted
import sys
from loguru import logger as log
logger = log
logger.remove()
logger.add("logs/application.log", rotation="1 week", enqueue=True)
log.add("logs/searchPage.log", enqueue=True)
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(sys.stdout)
class MyComboBox(QtWidgets.QComboBox):