Подсчет ошибок в логе messages.log

Сегодня понадобилось подсчитать количество ошибок по превышению температуры процессора. Данные находятся в messages.log.

Самое простое решение — это написать простенький perl скрипт, который бы брал месяц, число и считало количество появления ошибок в хеше.

Скрипт получилося такой:

 

#!/usr/bin/perl

$filename=’mess4.log’;

open FH,$filename or die $!;

while (<FH>) {

    ~/(\w+)\s*(\d+)\s+(\d+):/;

  #  print «$1 $2 $3\n»;

   if (exists($stat{«$1 $2»})) {$stat{«$1 $2»}+=1;} else { $stat{«$1 $2»}=1;}

}

while (($data,$count)=each(%stat)){

    print «$data\t$count\n»;

}

 

Результат — вывод двух из 3х колонок — МЕСЯЦ, ЧИСЛО, КОЛИЧЕСТВО ОШИБОК.

Скрипт очень прост, поэтому вывод нужно запихнуть в ексель и отсортировать по-человечески. Конечно все это можно сделать в скрипте, но на это пока нет времени.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

CAPTCHA image
*