]> git.ipfire.org Git - thirdparty/suricata-update.git/commitdiff
Add a check to apply colour if output stream on tty
authorVagisha Gupta <vagishagupta23@gmail.com>
Mon, 5 Aug 2019 09:10:51 +0000 (14:40 +0530)
committerJason Ish <jason.ish@oisf.net>
Wed, 28 Aug 2019 22:10:47 +0000 (16:10 -0600)
suricata/update/loghandler.py
suricata/update/main.py

index ed6356959fe30d752c4acb805da9f9bf19b09648..dc10504416562f56c4f0c4224793ba27c907b342 100644 (file)
@@ -16,6 +16,7 @@
 # 02110-1301, USA.
 
 import sys
+import os
 import logging
 import time
 
@@ -65,16 +66,22 @@ class SuriColourLogHandler(logging.StreamHandler):
             level_prefix = self.YELLOW
             message_prefix = ""
 
-        self.stream.write("%s%s%s - <%s%s%s> -- %s%s%s\n" % (
-            self.GREEN,
-            self.formatTime(record),
-            self.RESET,
-            level_prefix,
-            record.levelname.title(),
-            self.RESET,
-            message_prefix,
-            self.mask_secrets(record.getMessage()),
-            self.RESET))
+        if os.isatty(self.stream.fileno()):
+            self.stream.write("%s%s%s - <%s%s%s> -- %s%s%s\n" % (
+                self.GREEN,
+                self.formatTime(record),
+                self.RESET,
+                level_prefix,
+                record.levelname.title(),
+                self.RESET,
+                message_prefix,
+                self.mask_secrets(record.getMessage()),
+                self.RESET))
+        else:
+            self.stream.write("%s - <%s> -- %s\n" % (
+                self.formatTime(record),
+                record.levelname.title(),
+                self.mask_secrets(record.getMessage())))
 
     def mask_secrets(self, msg):
         for secret in secrets:
index ebce0b6d5fd1e8a61a2a7d2275005466c5e5f505..60881eed1fe3b03d63f286aaf2e2c43f6620a8d4 100644 (file)
@@ -71,7 +71,7 @@ except:
     revision = None
 
 # Initialize logging, use colour if on a tty.
-if len(logging.root.handlers) == 0 and os.isatty(sys.stderr.fileno()):
+if len(logging.root.handlers) == 0:
     logger = logging.getLogger()
     suricata.update.loghandler.configure_logging()
     logger.setLevel(level=logging.INFO)