Giriş
Açıklaması şöyle
As per the manual, jcmd is a utility which sends diagnostic command requests to a running Java Virtual Machine i.e. JVM.This utility gets various runtime information from a jvm. And, thing to note is, it must be used on the same machine on which jvm is running.
Bu komutun çıktısı şöyle. İlk sütun PID numarası, ikinci sütun uygulamanın ana sınıfı
$ jcmd15308 jdk.jcmd/sun.tools.jcmd.JCmd1836 se.hirt.jmc.tutorial.donothing.DoNothing
Örnek
Bir java uygulamasının ana sınıfını görmek için şöyle yaparız. find /i ile case sensitive olmadığını belirtiriz. find /n ile satır numarasını alırız.
Bir java uygulamasının ana sınıfını görmek için şöyle yaparız. find /i ile case sensitive olmadığını belirtiriz. find /n ile satır numarasını alırız.
jcmd | find /I /N "sun.tools.jconsole.JConsole"
IF "%ERRORLEVEL%" GTR "0" (
jconsole.exe
)
IF %ERRORLEVEL% EQU 0 (
echo Programm is running
)
FJR.start seçeneği
"Flight Recorder" aracını başlatmak için kullanılır. PID numarası 1836 olan uygulamak için şöyle yaparız
jcmd 1836 FJR.start duration=33s filename=start.recorder.fjr
Bu dosya "Mission Control" ile görüntülenebilir.
GC.class_histogram seçeneği
Metaspace bilgisini yazar
Örnek
Şöyle yaparız
# Ekrana jcmd {pid} GC.class_histogram # Dosyaya jcmd {pid} GC.class_histogram filename={file-path}
GC.heap_dump seçeneği
Çalışmakta olan uygulamanın heap dump çıktısını oluşturur
Örnek
Şöyle yaparız
jcmd 37320 GC.heap_dump /opt/tmp/heapdump.bin
5. VM seçenekleri
jcmd komutu VM Seçenekleri yazısına taşıdım
Off-Heap Seçenekleri
Off-Heap yerine bazen "Direct Memory" de deniliyor. Uygulamayı bazı seçenekler ile çalıştırmış olmak gerekir. Şöyle yaparız
-XX:NativeMemoryTracking=detail-XX:+UnlockDiagnosticVMOptions -XX:+PrintNMTStatistics
Hiç yorum yok:
Yorum Gönder