~~META:
user = nikolay_carbonsoft
~~
**Ошибка**: скрипт постоянно находит трейсбеки в логах, даже исправленные.
**Как не надо делать**: Был написан скрипт, который грепает трейсбеки из последних 2к строк логах:
if grep -q "Traceback" <<< "$(tail -n 2000 $LOGS_DIR/$logfile)"; then
traceback_count="$(tail -n 1500 "$DIG_DIR/$logfile" | grep Traceback | wc -l)"
fi
**Как надо делать**: скрипт должен сохранять последную проверенную строчку в файл, чтобы при повторной проверке сбрасывать счетчик трейсбеков, если дойдёт до предыдущей проверенной строки:\\
if [ -f "$last_job_filename" ]; then
last_job="$(cat "$last_job_filename")"
fi
while read -r row; do
if grep -q "Traceback" <<< "$row"; then
traceback_count=$((traceback_count+1))
fi
if [ "$last_job" = "$row" ]; then
traceback_count=0
fi\\
done < <(tail -n 2000 "$LOGS_DIR/$logfile")
tail -n 1 "$LOGS_DIR/$logfile" > "$last_job_filename"
~~OWNERAPPROVE~~ /*Не удаляйте эту строку и ниже!*/
{(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2020-06-16_не_правильное_использование_tail_и_grep|type=vote|trace=user|tracedetails=1)}