Changed logging: LinkScope now has its own logger, and disables logging from the root logger by default.

This commit is contained in:
AccentuSoft
2022-02-17 21:03:57 +02:00
parent 83ab26c7b8
commit 4a3cabdc67
4 changed files with 22 additions and 26 deletions

View File

@@ -19,11 +19,11 @@ class MessageHandler:
"""
def debug(self, message, exc_info=True):
logging.debug(message, exc_info=exc_info)
self.linkScopeLogger.debug(message, exc_info=exc_info)
return message
def info(self, message, popUp=False, exc_info=False):
logging.info(message, exc_info=exc_info)
self.linkScopeLogger.info(message, exc_info=exc_info)
if popUp:
msgBox = QtWidgets.QMessageBox()
msgBox.setStyleSheet(Stylesheets.MAIN_WINDOW_STYLESHEET)
@@ -33,7 +33,7 @@ class MessageHandler:
return message
def warning(self, message, popUp=False, exc_info=False):
logging.warning(message, exc_info=exc_info)
self.linkScopeLogger.warning(message, exc_info=exc_info)
if popUp:
msgBox = QtWidgets.QMessageBox()
msgBox.setStyleSheet(Stylesheets.MAIN_WINDOW_STYLESHEET)
@@ -43,7 +43,7 @@ class MessageHandler:
return message
def error(self, message, popUp=True, exc_info=True):
logging.error(message, exc_info=exc_info)
self.linkScopeLogger.error(message, exc_info=exc_info)
if popUp:
msgBox = QtWidgets.QMessageBox()
msgBox.setStyleSheet(Stylesheets.MAIN_WINDOW_STYLESHEET)
@@ -53,7 +53,7 @@ class MessageHandler:
return message
def critical(self, message, popUp=True, exc_info=True):
logging.critical(message, exc_info=exc_info)
self.linkScopeLogger.critical(message, exc_info=exc_info)
if popUp:
msgBox = QtWidgets.QMessageBox()
msgBox.setStyleSheet(Stylesheets.MAIN_WINDOW_STYLESHEET)
@@ -63,29 +63,28 @@ class MessageHandler:
return message
# Set the severity level
def setSeverityLevel(self, level):
currentLogLevel = logging.root.level
def setSeverityLevel(self, level: int):
currentLogLevel = self.linkScopeLogger.level
try:
level = int(level)
logging.root.setLevel(level)
self.mainWindow.SETTINGS.setValue("Logging/Severity", logging.root.level)
self.linkScopeLogger.setLevel(level)
self.mainWindow.SETTINGS.setValue("Logging/Severity", self.linkScopeLogger.level)
except ValueError:
self.warning("Invalid Severity Level specified.")
logging.root.setLevel(currentLogLevel)
self.linkScopeLogger.setLevel(currentLogLevel)
self.mainWindow.SETTINGS.setValue("Logging/Severity", currentLogLevel)
def getSeverityLevel(self):
return logging.root.level
return self.linkScopeLogger.level
def changeLogfile(self, newLogFile):
self.mainWindow.SETTINGS.setValue("Logging/Logfile", newLogFile)
self.logFileHandler = logging.FileHandler(
self.mainWindow.SETTINGS.value("Logging/Logfile", str(Path.home() / 'LinkScope_logfile.log')), 'a')
rootLogger = logging.getLogger()
for handler in rootLogger.handlers[:]:
for handler in self.linkScopeLogger.handlers[:]:
if isinstance(handler, logging.FileHandler):
rootLogger.removeHandler(handler)
rootLogger.addHandler(self.logFileHandler)
self.linkScopeLogger.removeHandler(handler)
self.linkScopeLogger.addHandler(self.logFileHandler)
def __init__(self, parentObject):
self.mainWindow = parentObject
@@ -99,11 +98,15 @@ class MessageHandler:
self.logFormatterQueue = logging.Formatter('[%(asctime)s] - %(levelname)s: %(message)s')
self.logFileHandler.setFormatter(self.logFormatter)
self.logQueueHandler.setFormatter(self.logFormatterQueue)
# Do not handle root logger messages
rootLogger = logging.getLogger()
for handler in rootLogger.handlers[:]:
if isinstance(handler, logging.FileHandler):
if isinstance(handler, logging.Handler):
rootLogger.removeHandler(handler)
rootLogger.addHandler(self.logFileHandler)
rootLogger.addHandler(self.logQueueHandler)
self.linkScopeLogger = logging.getLogger('LinkScope_Logger')
self.linkScopeLogger.addHandler(self.logFileHandler)
self.linkScopeLogger.addHandler(self.logQueueHandler)
self.setSeverityLevel(self.mainWindow.SETTINGS.value("Logging/Severity", logging.INFO))

View File

@@ -39,7 +39,6 @@ class TwitterUser:
def resolution(self, entityJsonList, parameters):
import argparse
import logging
import requests
import pytz
import snscrape.base
@@ -49,8 +48,6 @@ class TwitterUser:
from PySide6.QtCore import QByteArray, QBuffer, QIODevice, QSize
from PySide6.QtGui import QImage
logging.getLogger().setLevel(60) # Do not allow any logging
classes = snscrape.base.Scraper.__subclasses__()
scrapers = {}
for cls in classes:

View File

@@ -30,15 +30,12 @@ class VKontakteUser:
def resolution(self, entityJsonList, parameters):
import argparse
import logging
import pytz
import snscrape.base
import snscrape.modules
import snscrape.version
from dateutil.parser import parse
logging.getLogger().setLevel(60) # Do not allow any logging
classes = snscrape.base.Scraper.__subclasses__()
scrapers = {}
for cls in classes:

View File

@@ -151,9 +151,8 @@ class Holehe_Account_Discovery:
def processFunc(process_queue: Queue):
import asyncio
import logging
from concurrent.futures import ThreadPoolExecutor
logging.getLogger().setLevel(60) # Do not allow any logging
executor = ThreadPoolExecutor(15)
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)