
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
27.07.2007, 13:42:03
|
|||
|---|---|---|---|
JVM heap express-analysis |
|||
|
#18+
Ку. Возникла необходимость вытащить некую информацию из кучи не прибегая к помощи профиляторов/иных стандартных способов снятия heap dump (они разные и зависят от версии, самый удобный имхо в 1.4.2). Информация нужна такая: по имени класса либо интерфейса (или его части) найти все объекты этого класса (или реализующие данный интерфейс) построить деревья объектов (вообще то хватит имен классов), с inbound референсами на найденные объекты (с ограничением по уровню) Доп. условия в идеале хотелось бы без native libs, но сомневаюсь что это возможно JVM versions 1.4/1.5 Т.е. нужен минимум информации в минимально возможные сроки с минимальными усилиями. Вопрос как? спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.07.2007, 14:12:20
|
|||
|---|---|---|---|
|
|||
JVM heap express-analysis |
|||
|
#18+
Не понял почему отбрасываем все "иных стандартных способов". Нужен обязательно не стандартный? Вообще дамп памяти, кажется, можно снять с любой JVM. Я это с IBM-овской проделывал. С Sun-овской, кажется, там тоже что-то можно в консоль плюнуть, чтобы она дамп вывалила. А потом тулзами этот дамп анализировать. Для IBM там есть удобная консольная тулза. Но чтобы все дерево построить наверное свое что-то надо писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.07.2007, 14:17:24
|
|||
|---|---|---|---|
|
|||
JVM heap express-analysis |
|||
|
#18+
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6454676 В Sun только с опцией ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.07.2007, 15:31:03
|
|||
|---|---|---|---|
JVM heap express-analysis |
|||
|
#18+
BlazkowiczНе понял почему отбрасываем все "иных стандартных способов снятия heap dump ". Нужен обязательно не стандартный? Вообще дамп памяти, кажется, можно снять с любой JVM. Я это с IBM-овской проделывал. С Sun-овской, кажется, там тоже что-то можно в консоль плюнуть, чтобы она дамп вывалила. А потом тулзами этот дамп анализировать. Для IBM там есть удобная консольная тулза. Но чтобы все дерево построить наверное свое что-то надо писать. Нестандартный - потому что то чего хочеца нет в природе [для 1.4/1.5]. Почему стандартные средства снятия дампа не устраивают: 1. доп. опции => рестарт. 2. версия JVM может не позволять снимать дампы. различные орг. ограничения могут затягивать обновление. 3. jmap - ацтой. редкостный. 100МБ кучи может писаться очень долго. Больше - вообще отвалиться с OutOfMemory. 4. jhat аналогично. требует слишком много ресурсов для открытия дампа. 5. не нужен дамп всей кучи. expp Add support for backtracking reference graph. очень хочу нечто подобное хотя бы в 1.5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&tablet=1&tid=2145047]: |
0ms |
get settings: |
18ms |
get forum list: |
26ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
59ms |
get topic data: |
17ms |
get forum data: |
5ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
| others: | 319ms |
| total: | 533ms |

| 0 / 0 |
