diff --git a/config.py b/config.py index 32c24962f..b7b7c3397 100644 --- a/config.py +++ b/config.py @@ -32,7 +32,16 @@ gameDB = None # TODO: move back to pyfa.py main loop # We moved it here just to avoid rebuilding windows skeleton for now (any change to pyfa.py needs it) import logging -logging.basicConfig() +import logging.handlers + +format = '%(asctime)s %(name)-24s %(levelname)-8s %(message)s' +logging.basicConfig(format=format, level=logging.DEBUG) +handler = logging.handlers.RotatingFileHandler("log.txt", maxBytes=10000, backupCount=3) +formatter = logging.Formatter(format) +handler.setFormatter(formatter) +logging.getLogger('').addHandler(handler) + +logging.info("Starting pyfa") def defPaths(): global pyfaPath diff --git a/eos/effectHandlerHelpers.py b/eos/effectHandlerHelpers.py index a417fa041..c658cf0a9 100644 --- a/eos/effectHandlerHelpers.py +++ b/eos/effectHandlerHelpers.py @@ -20,6 +20,9 @@ from sqlalchemy.orm.attributes import flag_modified import eos.db import eos.types +import logging + +logger = logging.getLogger(__name__) class HandledList(list): def filteredItemPreAssign(self, filter, *args, **kwargs): @@ -180,10 +183,12 @@ class HandledImplantBoosterList(HandledList): if thing.isInvalid: HandledList.append(self, thing) self.remove(thing) + return # if needed, remove booster that was occupying slot oldObj = next((m for m in self if m.slot == thing.slot), None) if oldObj: + logging.info("Slot %d occupied with %s, replacing with %s", thing.slot, oldObj.item.name, thing.item.name) self.remove(oldObj) HandledList.append(self, thing) @@ -195,6 +200,7 @@ class HandledProjectedModList(HandledList): # rows and relationships in database are removed as well HandledList.append(self, proj) self.remove(proj) + return proj.projected = True isSystemEffect = proj.item.group.name == "Effect Beacon" @@ -204,6 +210,7 @@ class HandledProjectedModList(HandledList): oldEffect = next((m for m in self if m.item.group.name == "Effect Beacon"), None) if oldEffect: + logging.info("System effect occupied with %s, replacing with %s", oldEffect.item.name, proj.item.name) self.remove(oldEffect) HandledList.append(self, proj)