diff options
Diffstat (limited to 'src/avp/__init__.py')
| -rw-r--r-- | src/avp/__init__.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/avp/__init__.py b/src/avp/__init__.py new file mode 100644 index 0000000..ee9bebb --- /dev/null +++ b/src/avp/__init__.py @@ -0,0 +1,39 @@ +import sys +import os +import logging + + +__version__ = "2.1.0" + + +class Logger(logging.getLoggerClass()): + """ + Custom Logger class to handle custom VERBOSE log level. + Levels used in this program are as follows: + VERBOSE Annoyingly frequent debug messages (e.g, in loops) + DEBUG Ordinary debug information + INFO Expected events that are expensive or irreversible + WARNING A non-fatal error or suspicious behaviour + ERROR Any error that would interrupt the user + CRITICAL Things that really shouldn't happen at all + """ + + def __init__(self, name, level=logging.NOTSET): + super().__init__(name, level) + logging.addLevelName(5, "VERBOSE") + + def verbose(self, msg, *args, **kwargs): + if self.isEnabledFor(5): + self._log(5, msg, args, **kwargs) + + +logging.setLoggerClass(Logger) +logging.VERBOSE = 5 + + +if getattr(sys, "frozen", False): + # frozen + wd = os.path.dirname(sys.executable) +else: + # unfrozen + wd = os.path.dirname(os.path.realpath(__file__)) |
