JHSDB(1) JDK Commands JHSDB(1) نام (NAME) jhsdb - دیباگر سطح پایین Hotspot برای تحلیل پردازه‌ها و Core Dumpهای جاوا (نسخه ۱۷) خلاصه دستور (SYNOPSIS) jhsdb clhsdb [--pid pid | --exe executable --core coredump] jhsdb hsdb [--pid pid | --exe executable --core coredump] jhsdb debugd (--pid pid | --exe executable --core coredump) [گزینه‌ها] jhsdb jstack (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [گزینه‌ها] jhsdb jmap (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [گزینه‌ها] jhsdb jinfo (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [گزینه‌ها] jhsdb jsnap (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [گزینه‌ها] pid شناسه پردازه‌ای که ابزار jhsdb باید به آن متصل شود. این پردازه باید یک پردازه جاوا باشد. برای دریافت فهرستی از پردازه‌های جاوای در حال اجرا روی سیستم، از دستور ps یا چنانچه پردازه‌های JVM در کانتینر داکر مجزا اجرا نمی‌شوند، از دستور jps استفاده کنید. executable فایل اجرایی جاوایی که فایل Core Dump از آن تولید شده است. coredump فایل Core که ابزار jhsdb باید به آن متصل شود. [server-id@]debugd-host یک شناسه اختیاری سرور و نشانی سرور اشکال‌زدایی از راه دور (debugd). گزینه‌ها گزینه‌های خط فرمان برای یک حالت از jhsdb. بخش‌های گزینه‌های حالت DEBUGD، گزینه‌های حالت JSTACK، گزینه‌های حالت JMAP، گزینه‌های حالت JINFO و گزینه‌های حالت JSNAP را ببینید. نکته: برای حالت‌های debugd، jstack، jmap، jinfo و jsnap باید یا شناسه pid یا جفت فایل‌های executable و core یا نشانی [server-id@]debugd-host مشخص شوند. توضیحات (DESCRIPTION) می‌توانید از ابزار jhsdb برای اتصال به یک پردازه جاوا یا راه‌اندازی یک دیباگر پس از خرابی (Postmortem) جهت تحلیل محتوای Core Dump حاصل از کرش ماشین مجازی جاوا (JVM) استفاده کنید. این دستور آزمایشی بوده و رسماً پشتیبانی نمی‌شود. نکته: اتصال ابزار jhsdb به یک پردازه زنده باعث توقف و فریز شدن (Hang) پردازه می‌شود و با جدا شدن دیباگر، احتمالاً پردازه دچار کرش خواهد شد. ابزار jhsdb می‌تواند در هر یک از حالت‌های زیر اجرا شود: jhsdb clhsdb دیباگر تعاملی خط فرمان را اجرا می‌کند. jhsdb hsdb دیباگر تعاملی گرافیکی (GUI) را اجرا می‌کند. jhsdb debugd سرور اشکال‌زدایی از راه دور را اجرا می‌کند. jhsdb jstack اطلاعات پشته (Stack) و قفل‌ها را چاپ می‌کند. jhsdb jmap اطلاعات هیپ (Heap) را چاپ می‌کند. jhsdb jinfo اطلاعات پایه‌ای JVM را چاپ می‌کند. jhsdb jsnap اطلاعات شمارنده‌های کارایی (Performance Counters) را چاپ می‌کند. jhsdb command --help گزینه‌های موجود برای دستور command را نمایش می‌دهد. گزینه‌های حالت DEBUGD (OPTIONS FOR THE DEBUGD MODE) --serverid server-id یک شناسه یکتای اختیاری برای این سرور اشکال‌زدایی. در صورتی که چندین سرور اشکال‌زدایی روی یک سیستم اجرا شوند، این گزینه الزامی است. --rmiport port شماره درگاهی (پورت) را که اتصال RMI به آن متصل می‌شود تنظیم می‌کند. در صورت عدم تعیین، از یک پورت تصادفی در دسترس استفاده می‌شود. --registryport port پورت رجیستری RMI را تنظیم می‌کند. این گزینه مشخصه سیستمی 'sun.jvm.hotspot.rmi.port' را بازنویسی می‌کند. در صورت عدم تعیین، از مشخصه سیستمی استفاده می‌شود. اگر مشخصه سیستمی تنظیم نشده باشد، پورت پیش‌فرض 1099 به کار می‌رود. --hostname hostname نام میزبانی (Hostname) را که رابط RMI به آن متصل می‌شود تنظیم می‌کند. این مقدار می‌تواند یک نام میزبان یا یک نشانی IPv4/IPv6 باشد. این گزینه مشخصه سیستمی 'java.rmi.server.hostname' را بازنویسی می‌کند. در صورت عدم تعیین، از مشخصه سیستمی استفاده می‌شود. اگر مشخصه سیستمی تنظیم نشده باشد، از نام میزبان سیستم استفاده می‌شود. گزینه‌های حالت JINFO (OPTIONS FOR THE JINFO MODE) --flags فلگ‌های VM را چاپ می‌کند. --sysprops مشخصه‌های سیستمی جاوا را چاپ می‌کند. بدون گزینه (no option) فلگ‌های VM و مشخصه‌های سیستمی جاوا را چاپ می‌کند. گزینه‌های حالت JMAP (OPTIONS FOR THE JMAP MODE) بدون گزینه (no option) اطلاعاتی مشابه با دستور pmap در سولاریس را چاپ می‌کند. --heap خلاصه‌ای از وضعیت هیپ (Heap) java را چاپ می‌کند. --binaryheap هیپ java را در قالب باینری hprof ذخیره (Dump) می‌کند. --dumpfile name نام فایل خروجی ذخیره‌سازی (Dumpfile). --histo هیستوگرام اشیای موجود در هیپ java را چاپ می‌کند. --clstats آمار بارگذار کلاس‌ها (Class Loader) را چاپ می‌کند. --finalizerinfo اطلاعات اشیای در انتظار نهایی‌سازی (Finalization) را چاپ می‌کند. گزینه‌های حالت JSTACK (OPTIONS FOR THE JSTACK MODE) --locks اطلاعات قفل‌های java.util.concurrent را چاپ می‌کند. --mixed در صورت پشتیبانی پلتفرم، تلاش می‌کند هم فریم‌های java و هم فریم‌های بومی (Native) را چاپ کند. گزینه‌های حالت JSNAP (OPTIONS FOR THE JSNAP MODE) --all تمام شمارنده‌های کارایی را چاپ می‌کند. JDK 17 2021 JHSDB(1)