Цветной хвост бревен Apache


9

Мониторинг журналов Apache с tail –fтенденцией становится очень неприятным для глаз через некоторое время. Существуют ли какие-либо инструменты / опции для раскрашивания выходов журнала? Может быть, сигнал FATAL с красным, и т.д ...


Ответы:


10

Я использую многозадачный режим для мониторинга журналов, он включает в себя раскраску, а также мониторинг нескольких журналов, объединенных или в окнах. Попробуйте.


9

Любая причина, почему вы не можете использовать что-то вроде этого:

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

Источник: commandlinefu.com


Вы проверяли это? Это ничего не выводит для меня.
— SabreWolfy

Это также фильтрует вывод, поэтому любая строка без KEYWORDбудет игнорироваться.
— Михал Мау

ОП, кажется, подразумевает, что он ищет ключевое слово или слова. Если файл не является многострочным по своему характеру (чего, как правило, нет в журналах apache), то этого ответа достаточно.
— Гаррет

4

Нашел это: 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

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




3

Я использую небольшой скрипт с комбинациями 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 добавляет свой цвет. Так что результат примерно такой: Логи Apache с некоторыми цветами


0

Бесстыдный плагин: я написал инструмент под названием TxtStyle, который делает нечто похожее на опции, упомянутые ранее. Вы можете запустить его следующим образом:

tail -f /var/log/syslog | txts --regex '\d+'

Вы также можете определить именованные стили в файле конфигурации ( ~/.txts.conf) и использовать его следующим образом:

ifconfig | txts --name ifconfig

( ifconfigстиль определяется из коробки)


0

Есть одна особенность, которую я не видел в этих колоризаторах - выделение времени отклика (большее время -> более тревожный цвет). Поддержка 256 цветов в современных терминальных эмуляторах может быть полезна здесь.


0

Еще один полезный трюк с grep, чтобы показать все выходные данные, но раскрасить выбранный KEYWORD:

tail -f FILE | grep --color=always -E "$|REGEXP"
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.