Apache günlüklerinin renk kuyruğu


Yanıtlar:


10

Günlükleri izlemek için multitail kullanıyorum , renklendirmenin yanı sıra birleştirilmiş veya pencerelerde birden fazla günlük dosyası izleme içerir. Bir şans ver.


9

Bunun gibi bir şey kullanamamanızın herhangi bir nedeni:

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

Kaynak: commandlinefu.com


Test ettin mi? Benim için hiçbir şey çıkarmıyor.
SabreWolfy

Bu, çıktıyı da filtreler, böylece içermeyen herhangi bir satır KEYWORDgöz ardı edilir.
Michal Mau

OP bir anahtar kelime veya kelime aradığını ima ediyor gibi görünüyor. Dosya doğası gereği çok satırlı değilse (bu genellikle apache günlükleri değildir), o zaman bu cevap yeterlidir.
Garrett

4

Bunu buldum : http://fixunix.com/unix/83044-tail-color.html

tail -f file | perl -pe 's/keyword/\e[1;31;43m$&\e[0m/g'

Bu sadece ANSI terminallerinde çalışır, ancak diğerlerinin hepsi neredeyse yok olmuştur. ANSI kaçış dizisi SGR "grafik yorumlama seç". "..." ifadesinin yerine noktalı virgülle ayrılmış tamsayılar kullanılabilir:

0: tüm özellikler kapalı 1: kalın 31: ön plan kırmızı 43: arka plan sarı

"anahtar kelime", elbette, herhangi bir perl normal ifadesi olabilir:

(foo | bar) foo ve bar dizelerini vurgulayın \ b ((foo | bar) \ b foo ve bar kelimelerini vurgulayın. \ b ((foo | bar) \ b. foo veya bar kelimelerini içeren tüm satırı vurgulayın

Ya da, kolay yol, sadece colortailen sevdiğiniz repoya yükleyin (CentOS için dag)

http://developwithstyle.com/articles/2010/04/20/tail-your-logs-with-a-touch-of-color.html

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



Evet, multitail en iyisi
Grizly

3

Bazı renkler elde etmek için grep kombinasyonları ile küçük bir komut dosyası kullanın :

#!/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 "***|$"

Mesele şu ki, her zincirleme grep farklı bir renk katıyor. Sonuç şöyle bir şey: Bazı renklerle Apache günlüğü


0

Utanmaz fiş: Daha önce belirtilen seçeneklere benzer bir şey yapan TxtStyle adlı bir araç yazdım . Aşağıdaki gibi çalıştırabilirsiniz:

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

Ayrıca, config dosyasında ( ~/.txts.conf) adlandırılmış stilleri tanımlayabilir ve şöyle kullanabilirsiniz:

ifconfig | txts --name ifconfig

( ifconfigstil kutunun dışında tanımlanır)


0

Bu renklendiricilerde görmediğim bir özellik var - tepki sürelerini vurgulayın (daha yüksek zaman -> daha endişe verici renk). Modern terminal emülatörlerinde 256 renk desteği burada yararlı olabilir.


0

Seçilen ANAHTAR KELİME renk hariç tüm çıktıları göstermek için başka bir kullanışlı hile:

tail -f FILE | grep --color=always -E "$|REGEXP"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.