Colorize Мониторинг Логов
Иногда я отслеживаю журналы ошибок apache и php, используя tail
под FreeBSD. Есть ли способ получить цветной вывод, используя tail
или какое-то другое приложение командной строки?
В качестве альтернативы, какой ваш любимый способ отслеживать различные веб-журналы в режиме реального времени?
8 ответов
Общий колоризатор (grc):
Работает со многими различными форматами файлов.
Пример:
grc tail -f /var/log/apache/access.log /var/log/apache/error.log
Работает с еще большим количеством форматов файлов:) И это более полноценный "хвост" с несколькими окнами, выводами различий и т. Д. Очень полезно.
Примеры:
Объединить 2 файла журнала в одном окне:
multitail /var/log/apache/access.log -I /var/log/apache/error.log
В одном окне показать все новые TCP-соединения и их изменения состояния с помощью netstat, а в другом окне отобразить объединенные файлы доступа и журналы ошибок apache.
multitail -R 2 -l "netstat -t" /var/log/apache/access.log -I /var/log/apache/error.log
Проверьте CCZE, это делает работу за меня. У вас есть выбор curses, ANSI и HTML вывода.
Мониторинг "/ приложений" выделен;
tail -f /var/log/system.log | grep /Applications --color
Проверьте glTail ( http://www.fudgie.org/). Делает намного больше, чем вы просите, но, возможно, это нормально
Colorize - очень хороший инструмент для простой передачи текста через другой фильтр, чтобы получить причудливые цвета ANSI. На самом деле, это один простой 4-килобайтный Perl-скрипт (почти половина всего лишь документация), основанный на регулярных выражениях.
Вы можете выделить целую строку, содержащую заданный шаблон (хорошо для скрытия нежелательных журналов отладки или выделения исключений), или просто выделить шаблон в неокрашенной строке (выделив коды ответов http).
У меня есть несколько предустановок для различных типов файлов в отдельных исполняемых файлах. Тогда я просто бегу mvn clear install | colorbuild
, tail -f *.log* | colorlog
или же svn diff | colordif
иметь действительно причудливый вывод.
На FreeBSD использовать colorize
, и добавить в .tailrc
:
#!/bin/sh
/usr/bin/tail "$@" | /usr/local/bin/colorize
Возможно, вы захотите попробовать историю, позволяя раскрасить большинство выходных данных простыми кодами ANSI http://www.freebsdsoftware.org/misc/histring.html
Я написал TxtStyle, небольшую утилиту для раскрашивания логов. Вы определяете регулярные выражения для выделения~/.txts.conf
файл:
[Style="example"]
!red: regex("error")
green: regex("\d{4}-\d\d-\d\d")
# ...
А затем примените стили:
txts -n example example.log
или вы также можете передать вывод
tail -f example.log | txts -n example