Моніторинг журналів апашей із tail –f
тенденцією стає дуже неприємним для очей через деякий час. Чи є якийсь інструмент / параметри для забарвлення результатів журналу? Можливо, сигнал FATAL з червоним тощо ...
Моніторинг журналів апашей із tail –f
тенденцією стає дуже неприємним для очей через деякий час. Чи є якийсь інструмент / параметри для забарвлення результатів журналу? Можливо, сигнал FATAL з червоним тощо ...
Відповіді:
Я використовую мультирейл для моніторингу журналів, він включає забарвлення, а також багаторазовий моніторинг файлів або об'єднаних, або у Windows. Спробувати.
Будь-яка причина, чому ви не можете використовувати щось подібне:
tail -f FILE | grep --color=always KEYWORD
джерело: commandlinefu.com
KEYWORD
буде ігноруватися.
Виявив це: http://fixunix.com/unix/83044-tail-color.html
tail -f file | perl -pe 's/keyword/\e[1;31;43m$&\e[0m/g'
Це працює лише на терміналах ANSI, але всі інші практично вимерли. \ e [... m ist послідовність аварійної послідовності ANSI SGR "вибрати графічне відтворення". Значення "..." можна замінити деякими цілими колами, розділеними крапкою з комою, зі значенням:
0: усі атрибути вимкнено 1: жирний 31: передній план червоний 43: фон жовтий
Звичайно, "ключове слово" може бути будь-яким регулярним виразом perl:
(foo | bar) виділити рядки foo і bar \ b ((foo | bar) \ b виділити слова foo та bar. \ b ((foo | bar) \ b. виділити весь рядок, що містить слова foo або bar
Або найпростіший спосіб - просто встановити colortail
його, ймовірно, у вашому улюбленому репо (даг для CentOS)
http://developwithstyle.com/articles/2010/04/20/tail-your-logs-with-a-touch-of-color.html
Я використовую невеликий сценарій із поєднаннями 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 "***|$"
Справа в тому, що кожен прикутий грейп додає різного кольору. Таким чином, результат виглядає приблизно так:
Безсоромний штекер: я написав інструмент під назвою TxtStyle, який робить щось подібне до варіантів, згаданих раніше. Ви можете запустити його наступним чином:
tail -f /var/log/syslog | txts --regex '\d+'
Ви також можете визначити названі стилі у файлі config ( ~/.txts.conf
) та використовувати його так:
ifconfig | txts --name ifconfig
( ifconfig
стиль визначений поза полем)
Є одна особливість, яку я не бачив у цих колоризаторах - виділити час реакції (більший час -> більш тривожний колір). Тут може бути корисна 256-кольорова підтримка в сучасних термінальних емуляторах.
Ще один корисний трюк для відображення всіх результатів, окрім кольорів, вибраного KEYWORD:
tail -f FILE | grep --color=always -E "$|REGEXP"