pamhyr: Start switch to logging for program logs.

This commit is contained in:
Pierre-Antoine Rouby committed 2023-07-05 16:14:44 +02:00
1 parent 9b9ef8ee4b
commit 2f78432005
6 files changed
+55 -14

No files matched your search

+5 -2
View File
@@ -2,12 +2,15 @@
import os
import sqlite3
import logging
from pathlib import Path
from tools import SQL
from Model.Except import NotImplementedMethodeError
logger = logging.getLogger()
# Top level model class
class SQLModel(SQL):
_sub_classes = []
@@ -22,11 +25,11 @@ class SQLModel(SQL):
self._cur = self._db.cursor()
if is_new:
print("CREATE")
logger.info("Create database")
self._create() # Create db
# self._save() # Save
else:
print("UPDATE")
logger.info("Update database")
self._update() # Update db scheme if necessary
# self._load() # Load data
+6 -1
View File
@@ -1,6 +1,9 @@
# -*- coding: utf-8 -*-
import logging
from copy import deepcopy
from config import Config
from View.ASubWindow import ASubWindow
from View.ListedSubWindow import ListedSubWindow
@@ -27,6 +30,8 @@ from PyQt5.QtWidgets import (
from Solver.Solvers import solver_long_name
logger = logging.getLogger()
class SolverTableModel(QAbstractTableModel):
def __init__(self, headers=[], rows=[]):
super(QAbstractTableModel, self).__init__()
@@ -215,7 +220,7 @@ class ConfigureWindow(ASubWindow, ListedSubWindow):
# Debug
def set_debug(self):
self.conf.debug = not self.conf.debug
print(f"[DEBUG] Debug mode set : {self.conf.debug}")
logger.info(f"Debug mode set : {self.conf.debug}")
self.parent.setup_debug_mode()
# Solvers
+17 -2
View File
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import os
import logging
from queue import Queue
from PyQt5 import QtGui
@@ -39,6 +40,8 @@ from View.Debug.Window import ReplWindow
from Model.Study import Study
logger = logging.getLogger()
no_model_action = [
"action_menu_new", "action_menu_open", "action_menu_import_mage",
"action_menu_import_rubarbe", "action_toolBar_open",
@@ -206,6 +209,15 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
# Maximise window
self.showMaximized()
def set_debug_lvl(self, debug = True):
if debug:
logger.setLevel(logging.DEBUG)
logger.info("Set logging level to DEBUG")
else:
logger.setLevel(logging.INFO)
logger.info("Set logging level to INFO")
def setup_debug_mode(self, init = False):
menu = self.findChild(QMenu, "menu_help")
@@ -216,11 +228,14 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
if self.conf.debug:
menu.addAction(self.debug_action)
self.set_debug_lvl(debug = True)
else:
if self.conf.debug:
menu.addAction(self.debug_action)
self.set_debug_lvl(debug = True)
else:
menu.removeAction(self.debug_action)
self.set_debug_lvl(debug = False)
#########
# MODEL #
@@ -283,7 +298,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
else:
self.model.filename = file_name + ".pamhyr"
print("[INFO] Save...")
logger.info("Save...")
self.model.save()
def save_as_study(self):
@@ -380,7 +395,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
if dialog.exec_():
file_name = dialog.selectedFiles()
self.set_model(Study.open(file_name[0]))
print(f"[MainWindow] Open Study : {self.model.name}")
logger.info(f"Open Study - {self.model.name}")
def open_new_study(self):
"""Open dialog to set new study
+6 -3
View File
@@ -2,6 +2,7 @@
import os
import pickle
import logging
from tools import SQL
@@ -13,13 +14,15 @@ from Solver.Solvers import solver_type_list
config_dir = "/.cache/pamhyr/"
config_file = "config.sqlite3"
logger = logging.getLogger()
class Config(SQL):
def __init__(self):
self._version = '0.0.1'
self.filename = Config.filename()
self.set_default_value()
print(self.filename)
logging.info(f"Configuration file : {self.filename}")
super(Config, self).__init__(filename = self.filename)
@@ -61,10 +64,10 @@ class Config(SQL):
self.commit()
def _update(self):
version = self.execute(f"SELECT value FROM info WHERE key='version'")
version = self.execute(f"SELECT value FROM info WHERE key='version'")[0]
if version != self._version:
print("update")
logger.info(f"Configuration file update from {version} to {self._version}...")
def _load_solver(self):
self._solvers = []
+9 -1
View File
@@ -3,6 +3,7 @@
import sys, os
import locale
import logging
from PyQt5.QtCore import QTranslator
from PyQt5.QtWidgets import QApplication
@@ -15,6 +16,13 @@ from tools import (
from View.MainWindow import ApplicationWindow
from Model.Study import Study
logging.basicConfig(
level=logging.DEBUG,
format='[PAMHYR][%(levelname)s] %(message)s'
)
logger = logging.getLogger()
logger.setLevel(logging.INFO)
def main():
conf = Config.load()
app = QApplication(sys.argv)
@@ -37,7 +45,7 @@ def main():
if lang_file != "":
ok = translator.load(lang_file)
if not ok:
print("failed")
logger.error("Failed to load translate file")
app.installTranslator(translator)
+12 -5
View File
@@ -3,6 +3,7 @@
import os
import time
import sqlite3
import logging
import traceback
from datetime import datetime
@@ -16,6 +17,12 @@ from functools import (
reduce, partial, wraps
)
###########
# LOGGING #
###########
logger = logging.getLogger()
##########
# TIMERS #
##########
@@ -242,7 +249,7 @@ class SQL(object):
@timer
def execute(self, cmd, fetch_one = True, commit = False):
# print(f"[SQL] {cmd}")
logger.debug(f"SQL - {cmd}")
res = self._cur.execute(cmd)
if commit:
@@ -252,13 +259,13 @@ class SQL(object):
return value
def _create(self):
print("TODO: Create")
logger.warning("TODO: Create")
def _update(self):
print("TODO: Update")
logger.warning("TODO: Update")
def _save(self):
print("TODO: Save")
logger.warning("TODO: Save")
def _load(self):
print("TODO: Load")
logger.warning("TODO: LOAD")