[ https://issues.apache.org/jira/browse/SENSSOFT-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michelle Beard resolved SENSSOFT-120. ------------------------------------- Resolution: Fixed Fixed bug in logging. Should not interfere with other applications logging handler. > Python logging module interferes with other applications logging > ---------------------------------------------------------------- > > Key: SENSSOFT-120 > URL: https://issues.apache.org/jira/browse/SENSSOFT-120 > Project: SensSoft > Issue Type: Bug > Components: UserALE.PyQt5 > Affects Versions: UserALE.PyQt5 0.1.5 > Reporter: Michelle Beard > Assignee: Michelle Beard > Fix For: UserALE.PyQt5 0.1.6, UserALE.PyQt5 0.1.5 > > Original Estimate: 1h > Remaining Estimate: 1h > > We found a bug in UserALE logging that seems to be a very simple fix. In > fact, I have attached a modified version of ale.py which I believe addresses > the issue. > > The issue arises when UserALE is used to instrument a program which also > utilizes the python logging module. Since UserALE leverages the > logging.baseConfig() functionality, it shares the root logger in that module > with any other part of the program which performs logging. Therefore any > modifications to the root logger affect output everywhere it is utilized. > This cropped up in ImageMagickGUI. The real issue is with > logging.baseConfig(): if any handlers are set up for the root logger prior to > a call to baseConfig(), the subsequent call is ignored. To prevent this > overlap, I created a new logger object in ale.py and gave it all the > attributes of the original logger. I additionally set it to ignore the logger > hierarchy in the logging module, so that the UserALE output doesn’t propagate > to other loggers. Preliminary testing suggests that this has rectified the > issue without removing functionality or introducing features. > -- This message was sent by Atlassian JIRA (v6.3.4#6332)