GNU/Linux >> Znalost Linux >  >> Linux

Barevný ocas protokolů Apache

Řešení 1:

Ke sledování protokolů používám multitail, zahrnuje barvení a sledování více souborů protokolů buď sloučených nebo ve Windows. Zkuste to.

Řešení 2:

Nějaký důvod, proč nemůžete použít něco takového:

tail -f FILE | grep --color=always KEYWORD

zdroj: commandlinefu.com

Řešení 3:

Našel jsem toto:http://fixunix.com/unix/83044-tail-color.html

tail -f file | perl -pe 's/keyword/\e[1;31;43m$&\e[0m/g'

To funguje pouze na terminálech ANSI, ale všechny ostatní prakticky vyhynuly. \e[...m je ANSI escape sekvence SGR "select graphicrendition". "..." lze nahradit některými celými čísly oddělenými středníkem s významem:

0 :všechny atributy vypnuty1 :tučné31 :červené popředí43 :žluté pozadí

"klíčové slovo" samozřejmě může být jakýkoli regulární výraz perlu:

(foo|bar) zvýraznit řetězce foo a bar\b((foo|bar)\b zvýraznit slova foo a bar.\b((foo|bar)\b. zvýrazněte celý řádek, který obsahuje slova foo nebo bar

Nebo jednoduše nainstalujte colortail Pravděpodobně je ve vašem oblíbeném repo (dag pro CentOS)

http://developwithstyle.com/articles/2010/04/20/tail-your-logs-with-a-touch-of-color.html

http://joakimandersson.se/projects/colortail/

Řešení 4:

K získání některých barev používám malý skript s kombinacemi grep:

#!/bin/bash
shopt -s expand_aliases

alias grey-grep="GREP_COLOR='1;30' grep -E --color=always --line-buffered"
alias red-grep="GREP_COLOR='1;31' grep -E --color=always --line-buffered"
alias green-grep="GREP_COLOR='1;32' grep -E --color=always --line-buffered"
alias yellow-grep="GREP_COLOR='1;33' grep -E --color=always --line-buffered"
alias cyan-grep="GREP_COLOR='1;36' grep -E --color=always --line-buffered"

tail -1000f /var/log/apache2/error.log | grey-grep ".*PerformanceLogger.*|$" | cyan-grep "INFO|$" | yellow-grep "WARN|$" | red-grep "[ERROR].*|[FATAL].*|$" | green-grep "***|$"

Jde o to, že každý zřetězený grep přidá jinou barvu. Takže výsledek je něco jako:


Linux
  1. Jak používat příkaz tail k zobrazení protokolů v reálném čase

  2. Grep -v Neočekávané chování?

  3. Řez / Grep A Df -h?

  1. Grep And Tail -f?

  2. Restartujte Apache

  3. Jak mohu grep rekurzivně?

  1. Jak grep \nv souboru

  2. Načíst protokoly posledních 100 řádků

  3. Proč není `tail -f … | grep -q …` ukončí se, když najde shodu?