diff options
author | Feng, Bob C <bob.c.feng@intel.com> | 2019-07-31 13:33:31 +0800 |
---|---|---|
committer | Feng, Bob C <bob.c.feng@intel.com> | 2019-08-09 23:15:55 +0800 |
commit | 1a624dd7cf0db5783b27e18e6c790178d14a1e6a (patch) | |
tree | 449e014c6c69d1c5a26f65b3c9880fee0fa33f77 /BaseTools/Source/Python/Common/EdkLogger.py | |
parent | 4acae2b38edf28bc038799cee4c25744244f6167 (diff) | |
download | edk2-1a624dd7cf0db5783b27e18e6c790178d14a1e6a.tar.gz edk2-1a624dd7cf0db5783b27e18e6c790178d14a1e6a.tar.bz2 edk2-1a624dd7cf0db5783b27e18e6c790178d14a1e6a.zip |
BaseTools: Enable block queue log agent.
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1875
To support Ctrl+S and Ctrl+Q, we enable block queue
for log.
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Acked-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Common/EdkLogger.py')
-rw-r--r-- | BaseTools/Source/Python/Common/EdkLogger.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/BaseTools/Source/Python/Common/EdkLogger.py b/BaseTools/Source/Python/Common/EdkLogger.py index 15fd1458a9..06da4a9d0a 100644 --- a/BaseTools/Source/Python/Common/EdkLogger.py +++ b/BaseTools/Source/Python/Common/EdkLogger.py @@ -95,7 +95,9 @@ except: self.enqueue(self.prepare(record))
except Exception:
self.handleError(record)
-
+class BlockQueueHandler(QueueHandler):
+ def enqueue(self, record):
+ self.queue.put(record,True)
## Log level constants
DEBUG_0 = 1
DEBUG_1 = 2
@@ -292,19 +294,19 @@ def LogClientInitialize(log_q): #
# For DEBUG level (All DEBUG_0~9 are applicable)
_DebugLogger.setLevel(INFO)
- _DebugChannel = QueueHandler(log_q)
+ _DebugChannel = BlockQueueHandler(log_q)
_DebugChannel.setFormatter(_DebugFormatter)
_DebugLogger.addHandler(_DebugChannel)
# For VERBOSE, INFO, WARN level
_InfoLogger.setLevel(INFO)
- _InfoChannel = QueueHandler(log_q)
+ _InfoChannel = BlockQueueHandler(log_q)
_InfoChannel.setFormatter(_InfoFormatter)
_InfoLogger.addHandler(_InfoChannel)
# For ERROR level
_ErrorLogger.setLevel(INFO)
- _ErrorCh = QueueHandler(log_q)
+ _ErrorCh = BlockQueueHandler(log_q)
_ErrorCh.setFormatter(_ErrorFormatter)
_ErrorLogger.addHandler(_ErrorCh)
|