2013-12-03 3 views
-1

Я хочу отслеживать файл журнала приложения для определенных шаблонов ошибок в содержимом, добавленном за последние 10 минут (или с момента последнего запуска скрипта), пожалуйста, не нужно отслеживать весь файл журнала, но только строки, которые добавляются в последние 10 минут, когда patern соответствует, я хочу, чтобы он отображался на экране. Я смущен, как достичь этого сценария.Соответствует шаблону файла журнала

ТИА рассматривает tnt5273

+0

Необходим пример файла журнала, о котором идет речь (или, по крайней мере, некоторые строки из него - разные приложения регистрируются по-разному). –

+0

Может ли ['tail'] (http://lowfatlinux.com/linux-head-tail.html) оказать какую-либо помощь? – usr2564301

+0

hi oliver log содержит различные коды ошибок и различные ошибки исключения в его текстовом формате – tnt5273

ответ

0

То, что вы, как представляется, описывать обычно достигается в консоли с помощью:

tail -F /path/to/my/file | grep "pattern" 

Эта идиома используется многими системных администраторов.


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

Simple Event Correllator - это скрипт perl, предназначенный для просмотра журналов, корреляции событий и выполнения действий.

+0

hi matt thx, но tail -F не ​​может использоваться, поскольку я буду вызывать скрипт каждые 10 минут через инструмент мониторинга (не может постоянно запускать хвост) – tnt5273

+0

Кроме того, tail -f будет терпеть неудачу, когда журналы будут свернуты. он будет указывать на резервный файл журнала. –

1
FILE=logfile 
lines=$(wc -l < "$FILE") 
while sleep 600; do 
    clines=$(wc -l < "$FILE") 
    diff=$(($clines - $lines)) 
    tail -$diff $FILE | grep PATTERN 
    lines=$clines 
done 
+0

thx perreal, это ближе к моему требованию, мне нужен скрипт, который будет запускаться и выходить после проверки шаблона в недавно добавленных строках, я думаю, что сон будет продолжать работать ... – tnt5273

Смежные вопросы