Назад | Перейти на главную страницу

команда для отслеживания наибольшего количества входов smtp в mailexim

Может ли кто-нибудь помочь мне написать команду для отслеживания максимального количества входов в систему в exim? Дополнительно Как я могу получить верхний авторизованный вход по smtp в mail exim?

На самом деле вы не дали подробностей, поэтому вот один лайнер, который делает именно то, о чем вы просили (ни больше, ни меньше):

perl -e '
  while(<>){if(/ A=(?:login|plain):(\S+) /){$found->{$1}++;}}
  @sorted=(sort {$found->{$a} <=> $found->{$b}} keys %$found);
  printf "%s: %d\n", $sorted[-1], $found->{$sorted[-1]}."\n";
' < /var/log/exim/main.log

Это одна длинная строка, я просто разделил ее для удобства чтения (и чтобы блок кода не отображался с помощью огромной горизонтальной полосы прокрутки).

Альтернативный вариант, если вы хотите увидеть все почтовые ящики и счетчики, превышающие некоторый минимальный порог (установите его на ноль, если вы хотите видеть все):

perl -e '
  $limit = 10; 
  while(<>){if(/ A=(?:login|plain):(\S+) /){$found->{$1}++;}}
  @sorted=(sort {$found->{$a} <=> $found->{$b}} keys %$found);
  foreach my $loop (@sorted) {
    printf "%s: %d\n", $loop, $found->{$loop}."\n"
      if ($found->{$loop} > $limit);
  }
' < /var/log/exim/main.log