Встречается на собеседованиях • сегодня
Учавствовал ли в обнаружении причин перезагрузки контейнера в Docker
В Java приложениях можно обнаружить перезагрузку контейнера через:
1. **Анализ логов**
```java
// Логирование shutdown hook
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
System.out.println("Контейнер завершает работу");
}));
```
2. **Мониторинг состояния**
Использование health checks в `Dockerfile`:
```dockerfile
HEALTHCHECK --interval=30s --timeout=3s \
CMD curl -f http://localhost:8080/health || exit 1
```
3. **Использование JMX или Prometheus**
Например, через Micrometer:
```java
@Bean
MeterRegistryCustomizer metricsCommonTags() {
return registry -> registry.config().commonTags("application", "my-app");
}
```
4. **Анализ OOM Killer**
Проверка `dmesg` или логов Docker на наличие `Killed` процесса из-за нехватки памяти.
Для точного определения причины нужны логи приложения, метрики и события Docker (`docker events`).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы