summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2018-06-25 16:35:49 +0000
committerGerrit Code Review <review@openstack.org>2018-06-25 16:35:49 +0000
commit3b43002a3172d990cf48304dd743c97162ece1f3 (patch)
tree7b4bf83dddc5a55af83744f005e9ea616b4ef68d
parentfa01715b981a7fd4465b47feb1424cd79683b618 (diff)
parent9d5065ea327f39198d0bfffcf865fbcc1afc7d5a (diff)
downloadoslo-log-3b43002a3172d990cf48304dd743c97162ece1f3.tar.gz
Merge "Automatically append reset_color to log lines"3.39.0
-rw-r--r--oslo_log/handlers.py8
-rw-r--r--oslo_log/tests/unit/test_log.py3
2 files changed, 5 insertions, 6 deletions
diff --git a/oslo_log/handlers.py b/oslo_log/handlers.py
index d1240de..e8bc594 100644
--- a/oslo_log/handlers.py
+++ b/oslo_log/handlers.py
@@ -148,9 +148,9 @@ class OSJournalHandler(logging.Handler):
class ColorHandler(logging.StreamHandler):
"""Log handler that sets the 'color' key based on the level
- To use, include a '%(color)s' entry in the logging_context_format_string
- and a '%(reset_color)s' entry at the end of the format string so that the
- color setting does not persist between log lines.
+ To use, include a '%(color)s' entry in the logging_context_format_string.
+ There is also a '%(reset_color)s' key that can be used to manually reset
+ the color within a log line.
"""
LEVEL_COLORS = {
_TRACE: '\033[00;35m', # MAGENTA
@@ -165,4 +165,4 @@ class ColorHandler(logging.StreamHandler):
def format(self, record):
record.color = self.LEVEL_COLORS[record.levelno]
record.reset_color = '\033[00m'
- return logging.StreamHandler.format(self, record)
+ return logging.StreamHandler.format(self, record) + record.reset_color
diff --git a/oslo_log/tests/unit/test_log.py b/oslo_log/tests/unit/test_log.py
index 39b1cfc..7878525 100644
--- a/oslo_log/tests/unit/test_log.py
+++ b/oslo_log/tests/unit/test_log.py
@@ -987,8 +987,7 @@ class FancyRecordTestCase(LogTestBase):
"[%(request_id)s]: "
"%(instance)s"
"%(resource)s"
- "%(message)s"
- "%(reset_color)s",
+ "%(message)s",
logging_default_format_string="%(missing)s: %(message)s")
self.colorlog = log.getLogger()
self._add_handler_with_cleanup(self.colorlog, handlers.ColorHandler)