Цветной хвост бревен 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.