Czy java ma jakikolwiek mechanizm dla maszyny wirtualnej do śledzenia wywołań metod na sobie samym, bez użycia javaagentu itp.?

Chcę tworzyć wykresy połączeń w locie, zaczynając od dowolnego wywołania metody lub z nowym wątkiem, który jest łatwiejszy, z poziomu działającej maszyny JVM. (ten program będzie testowym urządzeniem do testowania obciążenia innym oprogramowaniem, które wykorzystuje wykresy połączeń)

Rozumiem, że jest kilka interfejsów SPI, ale wygląda na to, że musisz uruchomić z nimi flagę -javaagent. Chcę uzyskać do niego dostęp bezpośrednio w samej maszynie wirtualnej.

W idealnej sytuacji chciałbym uzyskać wywołanie zwrotne do wprowadzenia i zakończenia każdego wywołania metody, parametrów do tego wywołania metody i czasu w tej metodzie. Oczywiście w jednym wątku.

Wiem, że AOP może to zrobić, ale zastanawiam się, czy w JDK są narzędzia, które pozwoliłyby mi to uchwycić.

questionAnswers(2)

yourAnswerToTheQuestion