La surveillance des journaux Apache avec tail –f
tendance devient très frustrante pour les yeux après un certain temps. Existe-t-il des outils / options pour coloriser les sorties du journal? Peut-être signaler FATAL avec du rouge, etc ...
La surveillance des journaux Apache avec tail –f
tendance devient très frustrante pour les yeux après un certain temps. Existe-t-il des outils / options pour coloriser les sorties du journal? Peut-être signaler FATAL avec du rouge, etc ...
Réponses:
N'importe quelle raison pour laquelle vous ne pouvez pas utiliser quelque chose comme ça:
tail -f FILE | grep --color=always KEYWORD
source: commandlinefu.com
KEYWORD
sera ignorée.
Trouvé ceci: http://fixunix.com/unix/83044-tail-color.html
tail -f file | perl -pe 's/keyword/\e[1;31;43m$&\e[0m/g'
Cela ne fonctionne que sur les terminaux ANSI, mais tous les autres ont pratiquement disparu. \ e [... m iste la séquence d'échappement ANSI SGR "sélectionner le rendu graphique". Le "..." peut être remplacé par des entiers séparés par des points-virgules, avec la signification:
0: tous les attributs désactivés 1: gras 31: premier plan rouge 43: arrière-plan jaune
"mot-clé", bien sûr, peut être n'importe quelle expression régulière perl:
(foo | bar) mettez en surbrillance les chaînes foo et bar \ b ((foo | bar) \ b mettez en surbrillance les mots foo et bar. \ b ((foo | bar) \ b. mettez en surbrillance la ligne entière qui contient les mots foo ou bar
Ou, en toute simplicité, installez simplement colortail
Its probablement dans votre repo préféré (dag for CentOS)
http://developwithstyle.com/articles/2010/04/20/tail-your-logs-with-a-touch-of-color.html
J'utilise un petit script avec des combinaisons grep pour obtenir des couleurs:
#!/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 "***|$"
Le fait est que chaque grep chaîné ajoute une couleur différente. Le résultat est donc quelque chose comme:
Plug sans vergogne : j'ai écrit un outil appelé TxtStyle qui fait quelque chose de similaire aux options mentionnées précédemment. Vous pouvez l'exécuter comme suit:
tail -f /var/log/syslog | txts --regex '\d+'
Vous pouvez également définir des styles nommés dans le fichier de configuration ( ~/.txts.conf
) et l'utiliser comme ceci:
ifconfig | txts --name ifconfig
(le ifconfig
style est défini hors de la boîte)
Il y a une caractéristique que je n'ai pas vue dans ces coloriseurs - mettre en évidence les temps de réponse (temps plus élevé -> couleur plus alarmante). La prise en charge de 256 couleurs dans les émulateurs de terminaux modernes pourrait être utile ici.
Une autre astuce grep utile pour afficher toutes les sorties mais colorer le MOT-CLÉ sélectionné est:
tail -f FILE | grep --color=always -E "$|REGEXP"