Утилита jcmd используется для отправки запросов диагностических команд на работающую виртуальную машину Java (JVM). Например, когда вам нужна трассировка стека, дамп кучи, аргументы vm, системные свойства и т. Д.
2 ответа

jcmd VM.set_flag, какие флаги доступны для записи?

Я пытался поэкспериментировать с опцией jcmd VM.set_flag. Но наткнулся на одну ошибку, говорящую "можно установить только" доступные для записи "флаги". Что такое записываемые флаги? Получение моего pid: XXX@XXX-Air:~/javacode$ jcmd -l 6294 Test 629…
17 окт '17 в 08:01
1 ответ

Причал не появляется в JCMD

Когда я запускаю jcmd, он показывает мне все процессы Java, кроме Jetty, почему? JCmd: [root@test_app_bm 2015_06_01_18_19_47_13098]# /usr/java/latest/bin/jcmd 15152 sun.tools.jcmd.JCmd 21785 DummyTrkPartner.jar Ps aux: [root@test_app_bm 2015_06_01_1…
01 июн '15 в 15:54
0 ответов

Почему существует разница в размере дампа кучи, сгенерированного jmap и jcmd?

Я пытаюсь взять дамп кучи, используя ниже 2 команды jcmd $ pid GC.heap_dump /tmp/filename.dump jmap -dump: format = b, file = / tmp / filename.dump $ pid jcmd создает размер файла ~300M, а jmap - размер файла ~1.4G. почему это разные размеры, есть л…
28 авг '18 в 08:33
3 ответа

jcmd - Для чего используется команда ManagementAgent.start?

Когда используешь jcmd для мониторинга процесса Java, есть команда ManagementAgent.start, Проверка справочной страницы / документа оракула / Google, не нашла описания. Вопрос в том: Для чего его используют?
25 фев '16 в 10:53
1 ответ

jcmd - значение последнего столбца для `jcmd VM.flags -all`

Выполните следующую команду, чтобы получить список всех доступных флагов jvm: jcmd 24468 VM.flags -all | less -N Затем в последнем столбце были найдены следующие значения (с использованием JDK1.8 в Linux): * product default value is the same on all …
29 фев '16 в 04:19
1 ответ

Что содержится в коде / внутренних разделах JCMD?

Измерение Docker-контейнера для службы на основе JVM довольно сложно (как мы все знаем). Я почти уверен, что у нас немного занижен размер контейнера, и я хочу прояснить несколько вопросов, касающихся конкретных выводов jcmd (Native Memory Tracker), …
15 ноя '17 в 14:22
0 ответов

Как уменьшить размер gc(использование данных GC, например, карточным столом)

Я запускаю программу на Java 8. Аргументы VM ниже: -Xms9g -Xmx9g -Xss512K -XX:MaxMetaspaceSize=256m -XX:CompressedClassSpaceSize=64m Через некоторое время я запускаю jcmd VM.native_memory, чтобы получить информацию ниже. Total: reserved=10526823KB +…
16 апр '18 в 06:28
0 ответов

JVM зависает, не может распечатать информацию о стеке

Один из моих сервисов заблокирован, я не могу распечатать информацию о стеке. Есть ли способ устранить проблему? ht tps://stackru.com/images/82db7142866e86cfee3bc4b18dcd3f4abf869979.png ht tps://stackru.com/images/0f8debe1cb984cf9f171f2fd5334bc04c3b…
15 янв '19 в 03:40
0 ответов

Решение проблемы утечки в MetaSpace (Недостаточно памяти)

Я работаю над приложением некоторое время. Недавно на моем рабочем месте были внесены некоторые изменения в приложение (веб-приложение Java Enterprise, реализованное с использованием Jersey REST и Spring Framework). Мы замечаем, что приложение начал…
08 янв '18 в 08:03
1 ответ

jcmd - обрабатывает пользовательские команды при запуске JVM

jcmd Утилита предлагает несколько диагностических команд: https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/tooldescr006.html Можно ли иметь собственные команды и обрабатывать их в работающей JVM? Что-то вроде: jcmd $PID myCmd
10 апр '18 в 07:49
1 ответ

Дамп Java-потока с помощью JCMD

Я использую Java1.8 на машине с Ubuntu Linux. Создал дамп потока с помощью следующей команды: jcmd 1670 Thread.print > Thread.jfr Скопировал файл на локальный компьютер MAC и дважды щелкнул, чтобы открыть его в JMC. Не удалось открыть. Как открыт…
02 авг '18 в 22:32
0 ответов

Отклонение использования памяти процессом Java от выделенной памяти jcmd

Я вижу большие различия в использовании памяти для процесса Java (выполняющегося в Docker), по сравнению с использованием памяти, как сообщает jcmd, который отслеживает процесс JVM. Использование памяти JVM в соответствии с jcmd довольно стабильно, …
01 дек '17 в 10:26
1 ответ

JCMD для другого пользователя

Мне нужно получить параметры из jcmd для процесса, который запущен другим пользователем на том же ПК. Но я не могу сделать это, используя учетную запись администратора. Я также пытался использовать функцию "runas", но результат тот же. Есть ли спосо…
04 фев '16 в 14:26
0 ответов

Как читать дамп Jave 8 metaspace

В последнее время мы страдаем из-за мета-пространства OOM для нашего приложения из-за нестабильности, однако мне удалось кэшировать скомпилированный скрипт, чтобы он не происходил прямо сейчас. Ранее процесс зависал как минимум раз в день. Он работа…
30 мар '19 в 14:52
4 ответа

Мониторинг нативной памяти Java

Мы следим за метриками jvm, такими как куча, мета-пространство, потоки и счетчик gc, и мы можем отправить эти метрики на сервер мониторинга, например, через prometheus. Точно так же мы хотели отслеживать метрики собственной памяти Java (вывод jcmd V…
12 авг '19 в 06:10
2 ответа

Запуск jcmd с использованием JDK-11 в java-процессе JDK-8 не выполняется успешно

Я пытаюсь контролировать внутреннюю память tomcat с помощью jcmd, но получаю следующее исключение: Команда: jcmd 14533<pid of tomcat> VM.native_memory summary Я установил 2 jdk's jdk-11 А ТАКЖЕ jdk-8. Tomcat работает под управлением jdk-8 и jc…
13 фев '20 в 10:22
0 ответов

Как использовать JCMD для доступа к данным NMT

Я пытаюсь получить доступ к NMT с помощью jcmd через этот ниже код: jcmd 4348 VM.native_memory [summary] [scale=10 GB] Но получаю эту ошибку ниже: com.sun.tools.attach.AttachNotSupportedException: Unable to attach to 32-bit pro cess running under WO…
01 окт '19 в 07:54
1 ответ

Может ли вызвать STW при выполнении jcmd GC.class_stats?

Я собираюсь казнить jcmd $PID GC.class_stats -csv=true в моем процессе tomcat, чтобы получить статус загруженного класса. Меня беспокоит влияние команды на процесс tomcat, например создание дампа кучи. Может ли вызвать остановку мира или другой эффе…
15 июл '20 в 13:38
1 ответ

как запустить Java NMT

Я пытаюсь включить отслеживание собственной памяти в CMD с помощью следующей команды. java -XX:NativeMemoryTracking=[off|summary|detail] Но получаю ошибку вроде: 'summary' is not recognized as an internal or external command, действующая программа и…
30 сен '19 в 14:07
0 ответов

Функция jhat -baseline не работает с HeapDumpOnOutOfMemoryError и jcmd GC. сгенерированная базовая линия heap_dump

У меня внезапная утечка памяти, которая происходит довольно быстро, поэтому я должен поймать дамп с помощью HeapDumpOnOutOfMemoryError. Но чтобы увидеть, что на самом деле вызвало этот резкий всплеск памяти, мне нужно сначала взять базовый уровень, …
02 мар '20 в 03:11