Apache日志的彩色尾部


Answers:


10

我正在使用multitail监视日志,它包括着色以及合并或在Windows中的多个日志文件监视。试试看。


9

不能使用此类原因的任何原因:

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

资料来源: commandlinefu.com


你测试了吗?IT没有为我输出任何东西。
SabreWolfy

这也会过滤输出,因此没有的任何行都KEYWORD将被忽略。
Michal Mau

OP似乎暗示他正在寻找关键字或单词。除非文件本质上是多行的(通常不是apache日志),否则此答案就足够了。
加勒特(Garrett)

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 [...包含ANSI转义序列SGR“选择图形再现”。可以用分号分隔的整数代替“ ...”,其含义是:

0:关闭所有属性1:粗体31:前景红43:背景黄

当然,“关键字”可以是任何perl正则表达式:

(foo | bar)高亮显示字符串foo和bar \ b((foo | bar)\ b高亮显示单词foo和bar。\ b((foo | bar)\ b。高亮显示包含foo或bar的整行

或者,以简单的方式,只需将colortail其安装在您喜欢的存储库中(对于CentOS,为dag)

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日志


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"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.