Інструмент командного рядка для моніторингу Java Heap


14

Чи є інструмент командного рядка для моніторингу використання Java розміру в CentOS?

Відповіді:


6

Використовуйте jpsта jstackдізнайтеся більше про процеси Java. jstatтакож може бути корисним для моніторингу статистики Java.


6
cd /opt/www/java/jdk/bin/

# jmap -heap <JAVA_PID>

сталася помилка при його використанні: "Неможливо підключитися до основного дампа або віддаленого сервера налагодження. Замість цього використовуйте jhsdb jmap." jhsdb jmap --heap --pid xxxxзробив трюк
Том

4

jvmtop - це інструмент командного рядка, який забезпечує перегляд у реальному часі за кількома показниками, включаючи купу.

Приклад виведення режиму огляду VM:

 JvmTop 0.3 alpha (expect bugs)  amd64  8 cpus, Linux 2.6.32-27, load avg 0.12
 http://code.google.com/p/jvmtop

  PID MAIN-CLASS      HPCUR HPMAX NHCUR NHMAX    CPU     GC    VM USERNAME   #T DL
 3370 rapperSimpleApp  165m  455m  109m  176m  0.12%  0.00% S6U37 web        21
11272 ver.resin.Resin [ERROR: Could not attach to VM]
27338 WatchdogManager   11m   28m   23m  130m  0.00%  0.00% S6U37 web        31
19187 m.jvmtop.JvmTop   20m 3544m   13m  130m  0.93%  0.47% S6U37 web        20
16733 artup.Bootstrap  159m  455m  166m  304m  0.12%  0.00% S6U37 web        46

чому виникає помилка для процесу 11272?
akirekadu

@akirekadu Причин багато. Найпоширеніші з них - несумісні JDK, що перебувають між jvmtop та цільовим jvm, або недостатньо / відхилено дозволи. Детальні відомості див. У розділі FAQ .
MRalwasser

1

Можливо, ви хочете проаналізувати використання пам'яті.

GCView може допомогти вам візуалізувати показ GC-журналу.

Якщо ви вже ввімкнули gc-log, ви можете просто використовувати його tail -f.


1

Спробуйте це працювало в ubuntu та redhat:

java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize'

Для вікон:

java -XX:+PrintFlagsFinal -version | findstr /i "HeapSize PermSize ThreadStackSize"

Для мак

java -XX:+PrintFlagsFinal -version | grep -iE 'heapsize|permsize|threadstacksize'

Вихід усіх цих команд нагадує вихідний нижче:

uintx InitialHeapSize                          := 20655360        {product}
uintx MaxHeapSize                              := 331350016       {product}
uintx PermSize                                  = 21757952        {pd product}
uintx MaxPermSize                               = 85983232        {pd product}
 intx ThreadStackSize                           = 1024            {pd product}

java версія "1.7.0_05" Java (TM) SE Runtime Environment (збірка 1.7.0_05-b05) Java HotSpot (TM) 64-бітний сервер VM (збірка 23.1-b03, змішаний режим)

Щоб знайти розмір в Мб, розділіть значення на (1024 * 1024)

Для моніторингу використання пам'яті в реальній купі використовуйте jconsole.

Скріншот Jconsole


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.