2012-11-01 24 views
5

Ho un'applicazione Java headless, in esecuzione su un server remoto come processo daemon.Come profilare un'applicazione Java headless, in esecuzione da remoto?

Desidero estrarre informazioni sul profilo di livello Java dal processo, dell'ordinamento visualizzato da JVisualVM. Ad esempio, dovrebbe mostrare i tempi di chiamata del metodo e così via.

Qual è il modo migliore per farlo? La mia comprensione è che JVisualVM non profila quando ci si connette da remoto.

Idealmente, le informazioni di profilazione verrebbero archiviate in un file per un'ispezione successiva, in modo simile alla generazione di heap Java (con jmap) e all'analisi successiva (con un ispettore heap).

+2

si può fare questo con i profiler commerciali, ma non so come farlo con VisualVM. –

+1

Se questa è la verità più generale, attuale, potrebbe valere la pena di promuoverla per una risposta. –

+1

Se nessun altro conosce un modo, lo farò. Forse il modello di sicurezza di Java che ti permette di iniettare il codice sulla stessa macchina, ma non da un altro ?? –

risposta

1

È possibile utilizzare NetBeans profiler funzionalità di profiling a distanza.

Profiling remoto

Profilo di un'applicazione che è in esecuzione su un sistema diverso da quello del NetBeans IDE. Il remote pack del profiler può essere installato su un sistema remoto, consentendo di profilare un'applicazione avviata su quel sistema.

Infatti, VisualVM is based on it.

Accanto varie funzioni di monitoraggio, lo strumento contiene un profiler integrato basato sul NetBeans Profiler. Mentre l'interfaccia utente del profiler in VisualVM sembra semplice (soprattutto se confrontata con il profiler NetBeans), le funzionalità di profiling sono quasi altrettanto potenti di NetBeans.

Ecco un post sul blog dettagliato su Profiling a Java remote server using Netbeans.

+0

Questo risponde alla domanda. Inizialmente, stavo cercando qualcosa che potesse fare la registrazione e che non volesse realmente connettersi al processo, ma non era esplicito al riguardo. Ma questo risponde alla domanda così come alcuni punti;) –