logging: Simple impl of multline pretty printing
This commit is contained in:
parent
fa8a658458
commit
31dfbb4668
|
@ -41,6 +41,21 @@ class ColoredLevelFormatter(logging.Formatter):
|
||||||
if six.PY2:
|
if six.PY2:
|
||||||
self._original_fmt = self._fmt
|
self._original_fmt = self._fmt
|
||||||
else:
|
else:
|
||||||
|
|
||||||
|
class PercentStyleMultiline(logging.PercentStyle):
|
||||||
|
def format(self, record):
|
||||||
|
if "\n" in record.message:
|
||||||
|
fmt = self._fmt
|
||||||
|
dct = record.__dict__
|
||||||
|
data_seq = [
|
||||||
|
fmt % {**dct, "message": line}
|
||||||
|
for line in record.message.splitlines()
|
||||||
|
]
|
||||||
|
return "\n".join(data_seq)
|
||||||
|
else:
|
||||||
|
return self._fmt % record.__dict__
|
||||||
|
|
||||||
|
self._style = PercentStyleMultiline(self._style._fmt)
|
||||||
self._original_fmt = self._style._fmt
|
self._original_fmt = self._style._fmt
|
||||||
self._level_to_fmt_mapping = {}
|
self._level_to_fmt_mapping = {}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue