Add simple log colorization script: ./contrib/nglog.sh master
authorAlexander Barton <alex@barton.de>
Sun, 10 Nov 2019 21:07:26 +0000 (22:07 +0100)
committerAlexander Barton <alex@barton.de>
Sun, 10 Nov 2019 21:07:26 +0000 (22:07 +0100)
This script parses the log output of ngircd(8), and colorizes the
messages accoring to their log level. Example usage:

ngircd -f $PWD/doc/sample-ngircd.conf -np | ./contrib/nglog.sh

contrib/MacOSX/ngIRCd.xcodeproj/project.pbxproj
contrib/Makefile.am
contrib/nglog.sh [new file with mode: 0755]

index 1534e41..c44c21b 100644 (file)
                FAA3D28B0F139D2E00B2447E /* preinstall.sh */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text.script.sh; path = preinstall.sh; sourceTree = "<group>"; };
                FAA97C55124A271400D5BBA9 /* sighandlers.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sighandlers.c; sourceTree = "<group>"; };
                FAA97C56124A271400D5BBA9 /* sighandlers.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sighandlers.h; sourceTree = "<group>"; };
+               FAA9C8162377186900A04296 /* nglog.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = nglog.sh; sourceTree = "<group>"; };
                FAACD5F314A6099C006ED74F /* class.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = class.c; sourceTree = "<group>"; };
                FAACD5F414A6099C006ED74F /* class.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = class.h; sourceTree = "<group>"; };
                FAD5852F15271A7800328741 /* Capabilities.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = Capabilities.txt; sourceTree = "<group>"; };
                                FA322D940CEF7523001761B3 /* ngircd.spec */,
                                FA4B08E813E7F91C00765BA3 /* platformtest.sh */,
                                FA322D960CEF7523001761B3 /* systrace.policy */,
+                               FAA9C8162377186900A04296 /* nglog.sh */,
                        );
                        name = contrib;
                        path = ..;
index 29819a1..3c0b26e 100644 (file)
@@ -1,6 +1,6 @@
 #
 # ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001-2017 Alexander Barton (alex@barton.de) and Contributors
+# Copyright (c)2001-2019 Alexander Barton (alex@barton.de) and Contributors
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -20,6 +20,7 @@ EXTRA_DIST = README \
        ngircd.service \
        ngircd.socket \
        ngircd.spec \
+       nglog.sh \
        platformtest.sh \
        systrace.policy
 
diff --git a/contrib/nglog.sh b/contrib/nglog.sh
new file mode 100755 (executable)
index 0000000..001570a
--- /dev/null
@@ -0,0 +1,26 @@
+#!/bin/sh
+#
+# ngIRCd -- The Next Generation IRC Daemon
+# Copyright (c)2001-2019 Alexander Barton (alex@barton.de) and Contributors
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# Please read the file COPYING, README and AUTHORS for more information.
+#
+# This script parses the log output of ngircd(8), and colorizes the messages
+# accoring to their log level. Example usage:
+# ./src/ngircd/ngircd -f $PWD/doc/sample-ngircd.conf -np | ./contrib/nglog.sh
+#
+
+awk '
+  /^\[[[:digit:]]+:0 / {print "\033[95m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:1 / {print "\033[35m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:2 / {print "\033[91m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:3 / {print "\033[31m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:4 / {print "\033[33m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:5 / {print "\033[1m" $0 "\033[0m"}
+  /^\[[[:digit:]]+:6 / {print $0}
+  /^\[[[:digit:]]+:7 / {print "\033[90m" $0 "\033[0m"}
+'