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

9

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

Cherian
источник

Ответы:

10

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

Оник
источник
9

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

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

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

JamesBarnett
источник
Вы проверяли это? Это ничего не выводит для меня.
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/

Grizly
источник
Да,
мультитейл
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 с некоторыми цветами

DavidEG
источник
0

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

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

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

ifconfig | txts --name ifconfig

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

armandino
источник
0

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

sendmoreinfo
источник
0

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

tail -f FILE | grep --color=always -E "$|REGEXP"
Фелипе Альварес
источник