Доработка. Парсинг в логах

This commit is contained in:
Maxim
2026-06-09 11:19:32 +03:00
parent 354156e557
commit 676a674794
3 changed files with 151 additions and 33 deletions

45
scripts/view_logs.sh Normal file
View File

@@ -0,0 +1,45 @@
#!/bin/bash
cd /home/user/temp/golang
echo "=== СТАТИСТИКА ЛОГОВ ==="
echo ""
if [ -d logs ]; then
echo "Общая статистика:"
echo " Событий (JSON): $(wc -l < logs/events.log 2>/dev/null || echo 0)"
echo " Событий (Human): $(wc -l < logs/events_human.log 2>/dev/null || echo 0)"
echo " Записей GPIO: $(wc -l < logs/gpio_human.log 2>/dev/null || echo 0)"
echo ""
echo "Последние 5 предупреждений:"
grep "ВНИМАНИЕ" logs/gpio_human.log 2>/dev/null | tail -5 || echo " Нет предупреждений"
echo ""
echo "Топ-10 по количеству обнаруженных объектов:"
grep "Обнаружение:" logs/gpio_human.log 2>/dev/null | \
sed -n 's/.* \([0-9]\+\) объектов.*/\1/p' | \
sort | uniq -c | sort -rn | head -10 | \
awk '{print " " $2 " объектов: " $1 " раз"}'
echo ""
echo "Распределение по силе сигнала:"
grep "Обнаружение:" logs/gpio_human.log 2>/dev/null | \
grep -o "Сила: [А-Яа-я]*" | \
sort | uniq -c | \
awk '{print " " $2 " " $3 ": " $1 " раз"}'
echo ""
echo "💾 Использование диска:"
du -sh logs/ 2>/dev/null
echo ""
if ls logs/data/*.bin 1> /dev/null 2>&1; then
echo "Файлы данных:"
ls -lh logs/data/*.bin 2>/dev/null | awk '{print " " $9 ": " $5}'
else
echo "Нет файлов данных"
fi
else
echo "Директория logs/ не найдена"
fi