Заменить уровень логирования
- имя
sed-replace- образ
python:3.12-slim- таймаут
- 30с
Задание
Заменить уровень логирования
Лог приложения написан на слишком подробном уровне DEBUG. Нужен лог уровня
INFO: возьми /app/log.txt, замени каждое вхождение [DEBUG] на [INFO]
и запиши результат в /app/output.txt.
Симптомы
Файл /app/log.txt состоит из строк вида:
[DEBUG] some message 1
[DEBUG] some message 2
[DEBUG] some message 3
[DEBUG] some message 4
[DEBUG] some message 5
Файла /app/output.txt ещё не существует.
Требуемое состояние
В /app/output.txt должно быть столько же строк, сколько в /app/log.txt,
причём каждое [DEBUG] заменено на [INFO]. Ни одного [DEBUG] в выводе
остаться не должно. Исходный /app/log.txt можно не трогать.
Почему
sed — стандартный потоковый редактор для массовой правки текста. Умение
сделать замену по шаблону и перенаправить поток в новый файл — базовый навык
для чистки и нормализации логов в pipeline'ах.
Подсказки
Подсказки: заменить уровень логирования
cat /app/log.txt— посмотреть исходный лог.sed 's/\[DEBUG\]/[INFO]/g' /app/log.txt > /app/output.txt— глобальная
замена с перенаправлением в новый файл.- Флажок
gнужен, чтобы заменить все вхождения в строке, а не только первое. - Квадратные скобки
[...]— спецсимволы в regexsed, их надо экранировать
через\[и\]. - Проверь результат:
grep -c DEBUG /app/output.txtдолжно вывести0.
Терминал
Закрывается при остановке сессии.
Последние попытки
- Загрузка…
Разовый запуск (smoke-тест)
Атомарный цикл up → check → down. Полезно для CI; без предварительной подготовки состояния проверка завершится с ошибкой.