Привет, друзья! Сегодня я расскажу о простой, но критически важной теме — логирование ошибок. Часто вижу, как разработчики либо совсем не логируют исключения, либо делают это неправильно. В итоге: баг есть, а откуда он взялся — непонятно.
Вот пара реальных примеров:
❌ Плохо:
try {
doSomething();
} catch (Exception e) {
System.out.println("Error happened");
}
✅ Хорошо:
private static final Logger logger = LoggerFactory.getLogger(MyClass.class);
try {
doSomething();
} catch (Exception e) {
logger.error("Failed to do something", e);
}
💡 Почему это важно:
-
logger.error позволяет видеть стек исключения, а это ключ к диагностике.- Можно использовать
logger.warn или logger.info в зависимости от уровня важности.- Хороший лог помогает быстро локализовать проблему на проде без дебага.
🎯 Совет:
Используйте Slf4j в связке с Logback или Log4j2. И обязательно следите за форматом логов — например, логируйте
traceId, userId, requestId и другие полезные метаданные.А вы как логируете ошибки у себя в проекте? Делаете свою обёртку? Используете AOP?
📲 Мы в MAX
👉@BookJava