2011-09-27 14 views
6

Vorrei chiedere come posso definire REMOTO un'applicazione java. Per il debug posso dire quale porta la JVM deve ascoltare ecc. Poiché la macchina alla quale sto tentando di accedere è dietro un gateway ssh, quindi creo manualmente un tunnel SSH ma ho cercato la stessa cosa su google ma non mi sono occupato della profilazione e t sembra trovare. Fondamentalmente sto cercando l'equivalente di questo comando:Applicazione java con profiling remoto

java -agentlib:jdwp=transport=dt_socket,server=y,address=8000 -jar /bla/bla 

ma per il profiling modo che io possa collegare a distanza un profiler.

risposta

7

Disclaimer: La mia azienda sviluppa JProfiler

Con JProfiler, il parametro VM è come questo:

-agentpath:/path/to/libjprofilerti.so=port=8849 

"/path/to/libjprofilerti.so" è il percorso alla libreria dell'agente nativo, su Linux x86, per una JVM a 32 bit sarebbe [Directory di installazione di JProfiler] /bin/linux-x86/libjprofilerti.so. Con il parametro port, puoi dire all'agente di ascoltare su una porta specifica. Puoi impostarlo sulla porta del tuo tunnel SSH.

Si può facilmente generare questo parametro VM invocando session-> Integrazione Wizards-> Nuova Integrazione remota nel menu principale di JProfiler:

enter image description here

Sul computer locale, si crea una nuova sessione di tipo " Fissare a JVM profilata" e scegliere la porta locale del tunnel SSH (10022 nella schermata):

enter image description here