Мониторинг журналов Apache с tail –f
тенденцией становится очень неприятным для глаз через некоторое время. Существуют ли какие-либо инструменты / опции для раскрашивания выходов журнала? Может быть, сигнал FATAL с красным, и т.д ...
Мониторинг журналов Apache с tail –f
тенденцией становится очень неприятным для глаз через некоторое время. Существуют ли какие-либо инструменты / опции для раскрашивания выходов журнала? Может быть, сигнал FATAL с красным, и т.д ...
Ответы:
Я использую многозадачный режим для мониторинга журналов, он включает в себя раскраску, а также мониторинг нескольких журналов, объединенных или в окнах. Попробуйте.
Любая причина, почему вы не можете использовать что-то вроде этого:
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 escape-последовательность ANSI SGR "выбрать графическое представление". "..." может быть заменено некоторыми целыми числами, разделенными точкой с запятой, со значением:
0: все атрибуты выключены 1: полужирный 31: красный цвет переднего плана 43: желтый цвет фона
«Ключевое слово», конечно, может быть любым регулярным выражением perl:
(foo | bar) выделите строки foo и bar \ b ((foo | bar) \ b выделите слова foo и bar. \ b ((foo | bar) \ b. выделите всю строку, содержащую слова foo или bar
Или, простой способ, просто установите colortail
его, вероятно, в вашем любимом репо (dag для 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 "***|$"
Дело в том, что каждый цепочечный grep добавляет свой цвет. Так что результат примерно такой:
Бесстыдный плагин: я написал инструмент под названием TxtStyle, который делает нечто похожее на опции, упомянутые ранее. Вы можете запустить его следующим образом:
tail -f /var/log/syslog | txts --regex '\d+'
Вы также можете определить именованные стили в файле конфигурации ( ~/.txts.conf
) и использовать его следующим образом:
ifconfig | txts --name ifconfig
( ifconfig
стиль определяется из коробки)
Есть одна особенность, которую я не видел в этих колоризаторах - выделение времени отклика (большее время -> более тревожный цвет). Поддержка 256 цветов в современных терминальных эмуляторах может быть полезна здесь.
Еще один полезный трюк с grep, чтобы показать все выходные данные, но раскрасить выбранный KEYWORD:
tail -f FILE | grep --color=always -E "$|REGEXP"