{
i=0
while IFS= read -r line; do
case "$line" in
ssh*|'##'*)
;;
SERVER*)
((++i))
;;
*)
if ((i>0)); then echo $i;i=0; fi
echo "$line"
;;
esac
done
if ((i>0)); then echo $i;i=0; fi
} <inputfile >outputfile
То же в остроте жемчуга
perl -nle '
BEGIN{$i=0}
next if/^(ssh|##)/;
if(/^SERVER/){++$i;next}
print$i if$i>0;
$i=0;
print;
END{print$i if$i>0}' inputfile >outputfile
и играл в гольф
perl -nle's/^(ssh|##|(SERVER))/$2&&$i++/e&&next;$i&&print$i;$i=!print}{$i&&print$i' inputfile >outputfile
Как обсуждено в комментариях к вопросу, Вы хотите, чтобы что-то контролировало NginX и было уведомлено относительно перегрузки сервера.
Для более сложного подхода можно Попробовать Nagios. Можно найти некоторые инструкции по быстрому запуску здесь. Это может предоставить Вам различную статистику, также веб-интерфейс, и т.д.
Иначе должен был бы читать из nginx журнала ошибок.
Найдите файл регистрации ошибок Nginx.
Запишите сценарий Python для чтения журнала ошибок каждая 1 минута или около этого.
Если это встречается с новой ошибкой или ошибкой с определенным кодом ошибки (например,>. 500), это может уведомить Вас.
Как быть Уведомленным?
Здесь можно стать творческими и реализовать несколько опций:
Используйте программный интерфейс Твиттера, сделайте аккаунт в Твиттере для своего Контрольного сервиса с частной временной шкалой. Используйте вызовы API для писания в Твиттере об упоминании Вас с кодом ошибки и время.
Можно использовать Gmail API, для отправки почты, когда ошибка происходит.
Надежда, которая помогает.