Jstack терпит неудачу после двух недель нормальной работы

Я докернизировал Tomcat 7.0.73 на основе java:7-jdk изображение докера.

У меня есть работа, которая каждые 5 минут делает дамп потока с командой jstack 1, Обычно он работает около двух недель и после этого выдает сообщение:

Unable to open socket file: target process not responding or HotSpot VM not loaded. The -F option can be used when the target process is not respondingКод выхода - 1.

Что может быть причиной такого поведения?

JVM продолжает работать нормально. Пространство тоже выглядит правильно.

java -version java version "1.7.0_111" OpenJDK Runtime Environment (IcedTea 2.6.7) (7u111-2.6.7-2~deb8u1) OpenJDK 64-Bit Server VM (build 24.111-b01, mixed mode)

Filesystem Size Used Avail Use% Mounted on /dev/mapper/docker-202:1-xxx 10G 1013M 9.1G 10% / tmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/xvda1 99G 68G 31G 69% /tmp shm 64M 0 64M 0% /dev/shm

1 ответ

Решение

Я подозреваю, что процесс может очищать старые файлы в /tmpи он принимает соответствующие /tmp/.java_pid файл сокета с ним (который требуется такими утилитами, как jstack). В следующий раз, когда это произойдет, посмотрите, есть ли соответствующий файл, если нет, то это ваша проблема.

Другие вопросы по тегам