Получите дамп "кучи" из удаленного приложения в использовании Java JVisualVM

Вы можете использовать row_number() с предложением ties:

SELECT TOP (1) WITH TIES VisitID, EventActualDateTime, Code, LocationID
FROM AdmVisitEvents
WHERE VisitID = '6012227281' AND 
      Code IN ('ENADMIN','TFRADMIN')
ORDER BY ROW_NUMBER() OVER (PARTITION BY VisitID, Code, LocationID  ORDER BY EventActualDateTime);
10
задан Philipp 7 April 2009 в 16:56
поделиться

3 ответа

Вы не можете анализировать кучу удаленно. Вы можете запустить visualvm на своем сервере и экспортировать сеанс x на свой локальный компьютер. На вашем сервере должен быть установлен x11, чего нет на многих серверах.

0
ответ дан 4 December 2019 в 00:27
поделиться

К сожалению, не существует автоматического способа сделать это. Вам нужно будет запустить jmap вручную на сервере Linux, чтобы создать дамп кучи вашей JVM, а затем скопировать результирующий дамп кучи на локальный компьютер с JVisualVM и использовать File | Load ..., чтобы загрузить дамп кучи в JVisualVM для анализа.

3
ответ дан 4 December 2019 в 00:27
поделиться

Есть способ сделать это!

  1. rmiregistry -J-Xbootclasspath / p: $ JAVA_HOME / lib / sa-jdi.jar (здесь используется порт 1099)
  2. запустите 'jsadebugd' на машине, на которой работает приложение: jsadebugd & (pid JVM)
  3. На удаленной машине используйте следующее jmap -dump: file =: 1099

  4. jhat

Вышеуказанное запустит веб-приложение на порту 7000

Все вышеперечисленные инструменты являются частью JDK 1.6

Всего наилучшего!

7
ответ дан 4 December 2019 в 00:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: