JINFO – информация о java-процессе | OTUS
🔥 Успейте получить скидку!
Только до 27.01 можно приобрести курсы со скидкой 25%. Торопитесь!
Выбрать курс

Курсы

Программирование
Разработчик программных роботов (RPA) на базе UiPath и PIX
-25%
Разработчик C#
-25%
Алгоритмы и структуры данных
-25%
Backend-разработчик на PHP
-25%
JavaScript Developer. Professional
-25%
Team Lead
-25%
Golang Developer. Professional
-25%
Agile Project Manager
-25%
Flutter Mobile Developer
-25%
Android Developer. Professional
-11%
MS SQL Server Developer
-8%
C++ Developer. Professional Framework Laravel Cloud Solution Architecture Highload Architect Reverse-Engineering. Professional Kotlin Backend Developer React.js Developer VOIP инженер Нереляционные базы данных Scala-разработчик Супер-практикум по использованию и настройке GIT IoT-разработчик JavaScript Developer. Basic Advanced Fullstack JavaScript developer Unity Game Developer. Professional Супер-интенсив Azure
Инфраструктура
Супер-интенсив "Версионирование и командная работа с помощью Git"
-30%
Administrator Linux. Professional
-25%
Супер-интенсив «CI/CD или Непрерывная поставка с Docker и Kubernetes»
-30%
Разработчик программных роботов (RPA) на базе UiPath и PIX
-25%
Administrator Linux. Advanced
-25%
Infrastructure as a code in Ansible
-25%
Network engineer
-25%
MS SQL Server Developer
-8%
Cloud Solution Architecture Highload Architect Разработчик голосовых ассистентов и чат-ботов Мониторинг и логирование: Zabbix, Prometheus, ELK Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Архитектор сетей Супер-интенсив «IaC Ansible»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

JINFO – информация о java-процессе

Java_Deep_28.2-5020-a59224.png

Бывает такое, что во время «боевой» эксплуатации java-приложения появляется потребность посмотреть параметры java-процесса. Порой надо узнать, с какими параметрами приложение было запущено, определить значения переменных окружения и другую подобную информацию. В Java-мире для решения задач мониторинга есть множество интересных инструментов. Сегодня мы рассмотрим один из них. Это jinfo.

Сегодня «подопытным кроликом» будет популярная утилита jconcole. Допустим, jconcole – это некий java-процесс, информацию о котором мы хотим получить.

Первое, что надо сделать – получить pid (т. е. идентификатор процесса jconcole). Делаем это так:

ps -ef | grep jconsole

В моем случае pid – 5653.

Зная pid, на jconcole можно «натравить» jinfo. Делается это так:

 jinfo 5653

Тут всё просто, jinfo в качестве параметра надо передать pid процесса, о котором нам нужна информация.

Jinfo в консоль напечатает много интересной информации о процессе.

Например, это:

  • «java.runtime.version» и «java.home» – jvm, которую использует процесс. Часто в старых системах на серверах зоопарк jvm, и не понятно, кто что использует;
  • «java.io.tmpdir» и «user.dir» – показывают, куда наиболее вероятно процесс может сохранять какие-то файлы;
  • «java.class.path» – показывает, откуда процесс загружает библиотеки;
  • «Command line» – параметры командной стоки, с которыми стартовало приложение.

Отдельно хочется остановиться на system properties, ведь не всегда эти значения легко узнать.

В случае с jconsole при старте определяется system property «application.home». Jinfo выводит текущее значение system properties, т. е. если во время работы приложения system properties изменилось, jinfo выведет актуальное значение.

Jinfo – интересная и полезная утилита диагностики, однако надо знать, что сейчас статус этой утилиты – «экспериментальная». Т. е. она может работать, а может и с такой ошибкой падать: «can't determine target's VM version : field "_reserve_for_allocation_prefetch" not found in type Abstract_VM_Version».

Если у вас jinfo не заработает, не забывайте про «стабильную классику» – jconcole.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Только до 27 января!
🔥 СКИДКА 25% на курсы OTUS!