Kolorowanie logów

Nasza praca wiąże się z przeglądaniem logów. Często podglądamy je na bieżąco poleceniem tail -f, czarno-biała treść loga jest często nieczytelna. Poniższe rozwiązanie szybko pokoloruje nam nasze logi.

Poniższy skrypt wykorzystuje właściwie dwa polecenia z konsoli: sed oraz tput.  Używam go do kolorowania logów z jboss’a. Można go szybko dostosować modyfikując wyrażenia regularne i definicje kolorów, warto też sprawdzić możliwości sed’a, tutaj użyte to zaledwie ułamek jego możliwości.

Tworzymy skrypt jb.logColorizer o zawartości:

#!/bin/bash
red=`tput setaf 1`
green=`tput setaf 2`
white=`tput setaf 7`
yellow=`tput setaf 3`
bold=`tput bold`

reset=`tput sgr0`

sed \
-e "s|^\(.*INFO.*\)|$reset$white\1|" \
-e "s|^\(.*WARNING.*\)|$reset$yellow\1|" \
-e "s|^\(.*ERROR.*\)|$reset$red\1|" \
-e "s|^\(.*SEVERE.*\)|$reset$bold$red\1|" \
-e "s|^\(.*DEBUG.*\)|$reset$green\1|"

Wywołujemy przekazując strumień z tail -f:

$ tail -f /path_to_my_log/server.log | /path_to_my_scripts/jb.logColorizer

Linki:

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>