Strumenti di creazione profili e registrazione log - Note sul rilascio

Strumenti di creazione profili e registrazione log - Note sul rilascio

1.0 Limitazioni
   1.1 Come aprire la vista Console nella prospettiva Creazione profili e log
   1.2 Probekit: codifica UTF-8 per i file di origine Probekit
   1.3 Analisi perdite: analisi perdite non disponibile su OS/400 iSeries(TM)
   1.4 Suggerimenti durante la creazione del profilo dell'applicazione
   1.5 Analisi perdite: comportamento imprevisto con il comando "Invio dati di creazione profili a un file"
   1.6 Analisi perdite: l'elaborazione dell'apertura di un grafico di riferimento agli oggetti per un dump heap IBM(C) OS/390® (SVC) richiede tempi lunghi
   1.7 Analisi perdite: ubicazione e gestione dei file dump heap ottimizzati di Hyades
   1.8 Analisi perdite: file di log dell'analisi perdite
   1.9 Analisi perdite: impostazione di RADLEAKJVMSIZE per l'analisi di heap di grandi dimensioni
   1.10 Analisi thread: rilevamento deadlock non funzionante con IBM JRE 1.4.2
2.0 Problemi noti
   2.1 Probekit: non utilizzare i caratteri non ASCII nei nomi di file di origine Probekit
   2.2 Probekit: generazione dei file di origine Probekit
   2.3 Probekit: caratteri non ASCII nelle specifiche di destinazione del Probekit
   2.4 Metodo e livello riga: 'cancella su metodo' con caratteri non ASCII
   2.5 Metodo e livello riga: i filtri EXCLUDE non devono iniziare con dei caratteri jolly
   2.6 Analisi perdite: nessun supporto per i dump heap IBM creati da J9 JVM
   2.7 Analisi perdite: specificare un nuovo progetto o controllo durante l'importazione dei file heap
   2.8 Livello riga, Probekit: riavviare il progetto per raccogliere i dati da classi già caricate
   2.9 Caratteri a due byte non mostrati nella vista Console
   2.10 Analisi perdite: arresto anomalo durante la creazione profili di applet con IBM JVM
   2.11 Analisi perdite: impostazioni internazionali per l'analisi uguali alle impostazioni internazionali per la raccolta dati
   2.12 Analisi thread: proprietario thread di blocco mancante con IBM JRE 1.4.1 o versione precedente
   2.13 Durante la creazione profili remota su Solaris, si potrebbe verificare un arresto anomalo della JVM di Sun

Strumenti di creazione profili e registrazione log - Note sul rilascio

1.0 Limitazioni

1.1 Come aprire la vista Console nella prospettiva Creazione profili e log

Quando si crea il profilo di un'applicazione, la vista console non viene visualizzata per impostazione predefinita nella prospettiva Creazione profili e log.

Per aprire la vista console nella prospettiva Creazione profili e log, selezionare Finestra.>Mostra vista->Console.

Per visualizzare stdout nella console, scegliere Finestra->Preferenze->Esegui/Debug->Console e selezionare Mostra quando il programma scrive in output standard.

1.2 Probekit: codifica UTF-8 per i file di origine Probekit

Durante la creazione di un nuovo file di origine Probekit, la procedura guidata consente di scegliere la codifica XML da utilizzare. La selezione predefinita è ASCII. Se si desidera utilizzare caratteri non ASCII in qualsiasi punto del file di origine probe (ad esempio, nei campi Etichetta o Descrizione o nel codice Java del frammento), sarà necessario scegliere la codifica UTF-8 e non ASCII.

Per modificare la codifica di un file di origine probe esistente, selezionare il file con il tasto destro del mouse e scegliere Apri con -> Editor di testo. Modificare la codifica nell'intestazione XML in "UTF-8" e salvare e chiudere il file. Fare nuovamente clic con il tasto destro del mouse e scegliere Apri con -> Editor probe per modificare il contenuto del file.

1.3 Analisi perdite: analisi perdite non disponibile su OS/400 iSeries(TM)

La funzione di analisi delle perdite non è disponibile per i programmi utente in esecuzione su OS/400® iSeries(TM). I dump heap ottimizzati Hyades generati in questa piattaforma, non sono completi e non è possibile generarli in qualsiasi altro formato.

1.4 Suggerimenti durante la creazione del profilo dell'applicazione

Le prestazioni degli strumenti di creazione sono correlate direttamente alla quantità di dati da raccogliere e alla velocità in cui tali dati vengono trasferiti al workbench. Quando la quantità di dati da raccogliere aumenta, si verificherà un rallentamento delle prestazioni sia per quanto riguarda il tempo impiegato per effettuare l'analisi, sia per quanto riguarda la memoria disponibile per eseguire altre attività. Le prestazioni per la creazione profili possono essere migliorate in diversi modi.

1.5 1.5 Analisi perdite: comportamento imprevisto con il comando "Invio dati di creazione profili a un file"

Durante la raccolta dei dump heap ottimizzati Hyades binari, se i dati vengono inviati ad un file trcxml selezionando "Invio dei dati di creazione profili ad un file", tenere presente quanto segue:

Agent Controller deve essere in esecuzione sull'host di distribuzione per accedere ai file di files salvati sull'host. La prima volta che viene eseguito Importa->File di creazione profili nel file trcxml, l'analisi delle perdite e la visualizzazione dei grafici dei riferimenti agli oggetti, funzionano come previsto.

Se si esegue Importa->File di creazione profili una seconda volta, l'importazione funzionerà, ma i tentativi di esecuzione dell'analisi delle perdite o della visualizzazione del grafico dei riferimenti agli oggetti, potrebbe avere esito negativo. Questo accade perché i file di heap richiesti potrebbero non essere più disponibili sull'host di distribuzione.

Se si verifica questo problema, accedere ai file heap dal progetto in cui è stato importato il file trcxml. I file di heap si trovano nella directory "leakanalysisheapdir" nella directory del progetto.

1.6 Analisi perdite: l'elaborazione dell'apertura di un grafico di riferimento agli oggetti per un dump heap IBM(C) OS/390 (SVC) richiede tempi lunghi

I dump heap IBM(C)OS/390(SVC) sono molto grandi. L'espansione di un dump heap di grandi dimensione per visualizzarlo nella vista Grafico di riferimento agli oggetti, potrebbe richieste tempi lunghi. Di conseguenza, l'operazione sembra essersi bloccata. L'attività di espansione del dump heap potrebbe ancora essere in corso nel workbench anche se sembra bloccato al 100%.

1.7 Analisi perdite: ubicazione e gestione dei file dump heap ottimizzati di Hyades

L'esecuzione dell'azione "Cattura dump heap" genera dump heap ottimizzati Hyades sull'host in cui è distribuita l'applicazione di destinazione. La directory di destinazione è controllata dall'impostazione di LOCAL_AGENT_TEMP_DIR nel file di configurazione di Agent Controller serviceconfig.xml. Per informazioni sull'ubicazione e la modifica di questo file, fare riferimento all'argomento della guida "Gestione di Agent Controller" in "Rilevamento e analisi dei problemi di runtime".

Se si riceve uno dei seguenti messaggi di errore, "Espansione dump heap non riuscito al punto: ...Lettura file" o "Analisi perdite non riuscita al punto: Creazione grafico di riferimento agli oggetti heap", verificare che Agent Controller sia in esecuzione sull'host di distribuzione e rieseguire il comando. Agent Controller assiste l'utente nella copia dei file dall'host di distribuzione alla directory del progetto nel workbench.

1.8 Analisi perdite: file di log dell'analisi perdite

Se si verificano problemi durante l'analisi delle perdite, fare riferimento al file di log dell'analisi.

Durante l'analisi delle perdite, le informazioni di diagnostica vengono scritte nel file LeakAnalysis.log. Il file LeakAnalysis.log contiene l'output delle diverse operazioni eseguite durante l'analisi e indica l'esito positivo o negativo dell'esecuzione.

Il file LeakAnalysis.log è scritto nel progetto di creazione profili associato ai dati del profilo. Ad esempio, in Windows, <spazio_di_lavoro_utente>\ProfileProject\LeakAnalysis.log.

È possibile scrivere altre informazioni nel file di log utilizzando la proprietà di sistema RADLEAKREGIONDUMP. Aggiungere questa opzione a rationalsdp.ini:

VMArgs=-DRADLEAKREGIONDUMP=1

Il file rationalsdp.ini si trova nella directory di installazione di Rational Software Architect.

1.9 Analisi perdite: impostazione di RADLEAKJVMSIZE per l'analisi di heap di grandi dimensioni

Se l'analisi delle perdite ha esito negativo con il seguente messaggio di errore nel file LeakAnalysis.log, 'JVMDUMP006I Elaborazione evento dump "uncaught", dettaglio "java/lang/OutOfMemoryError"' sarà necessario aumentare la dimensione heap del processo di analisi.

Per effettuare questa operazione, impostare l'attributo di sistema RADLEAKJVMSIZE di Rational Software Architect. Questo attributo controlla la dimensione heap JVM disponibile durante l'analisi.

Per impostare RADLEAKJVMSIZE, aggiungere questa opzione al file rationalsdp.ini:

VMArgs=-DRADLEAKJVMSIZE=valore

dove valore è il nuovo limite della dimensione heap, ovvero 1024M. Il valore predefinito è 512M. È necessario indicare se la dimensione heap viene espressa in megabyte o gigabyte (M o G).

Il file rationalsdp.ini si trova nella directory di installazione di Rational Software Architect.

1.10 Analisi thread: rilevamento deadlock non funzionante con IBM JRE 1.4.2

Durante l'uso della JVM classica IBM con la funzione di creazione profili Analisi thread, la vista Thread della prospettiva Creazione profili e log, non mostra gli stati 'In attesa di blocco' di tutti i thread coinvolti in un deadlock. Questo succede a causa di informazioni mancanti nei dati raccolti. Soluzione: utilizzare la IBM J9 JVM aggiungendo -Xj9 nel campo Argomenti VM della scheda Argomenti della finestra profilo.

2.0 Problemi noti

2.1 Probekit: non utilizzare i caratteri non ASCII nei nomi di file di origine Probekit

I file di origine Probekit i cui nomi contengono caratteri non ASCII non verranno elaborati correttamente. Utilizzare solo caratteri ASCII nei nomi dei file di origine Probekit.

2.2 Probekit: generazione dei file di origine Probekit

Non utilizzare l'azione Probekit->Compila visualizzata nel menu di scelta rapida dei file *.probe, ma convertire il progetto contenente il file *.probe in un progetto Probekit ed utilizzare il meccanismo di generazione standard. Per convertire un progetto Java in un progetto Probekit, selezionare File->Nuovo->Altro e dalla sezione Creazione profili e log scegliere Converti progetti Java in progetti Probekit.

2.3 Probekit: caratteri non ASCII nelle specifiche di destinazione del Probekit

Non utilizzare caratteri non ASCII nei modelli per le specifiche di destinazione Probekit. I probe che contengono caratteri non ASCII nei modelli di destinazione non verranno elaborati correttamente.

2.4 Metodo e livello riga: 'cancella su metodo' con caratteri non ASCII

Non utilizzare caratteri non ASCII durante l'aggiunta di modelli di metodo per l'opzione "Cancella dati di copertura quando..."

Se si immettono caratteri non ASCII nel pacchetto, nella classe o nei campi del metodo della finestra Aggiungi del modello del metodo, viene visualizzato un errore di input non valido e non sarà possibile chiudere la finestra.

Soluzione: utilizzare un carattere jolly (asterisco) invece dei caratteri non ASCII nel modello.

2.5 Metodo e livello riga: i filtri EXCLUDE non devono iniziare con dei caratteri jolly

Un filtro EXCLUDE che comincia con un carattere jolly (asterisco), ad esempio "*foo", fa sì che le viste Statistiche copertura, Selezione copertura e Origine annotata non contengano dati. Soluzione: non utilizzare un filtro EXCLUDE che inizia con un carattere jolly.

2.6 Analisi perdite: nessun supporto per i dump heap IBM creati da J9 JVM

La funzione di analisi delle perdite non è disponibile per i programmi utente in esecuzione su IBM J9 JVM.

IBM J9 JVM crea file di heap con nomi simili a heapdump.20041012.093936.2192.dmp durante l'impostazione della variabile IBM_HEAPDUMP ed invia il segnale "kill -3" al processo Java in esecuzione. Questi file .dmp devono essere nuovamente elaborati eseguendo i comandi j9extract e jdmpview, quindi creare i dump heap IBM.

Il formato di questi dump heap non è uguale al formato dei dump heap generati dalla IBM jvm classica.

2.7 Analisi perdite: specificare un nuovo progetto o controllo durante l'importazione dei file heap

Se si importano più insiemi di dump heap con lo stesso nome di controllo in un progetto esistente, è possibile perdere i dati al successivo salvataggio del progetto o alla chiusura del workbench.

Per evitare questo problema, specificare una combinazione Progetto/Controllo univoca per ciascun insieme di heap importato.

2.8 Livello riga, Probekit: riavviare il progetto per raccogliere i dati da classi già caricate

Avviando e collegandosi a un server WAS, i tipi di creazione profili Probekit e Copertura livello riga non raccoglieranno i dati per le classi già caricate nella JVM di destinazione. Soluzione: per raccogliere i dati da queste classi, riavviare il progetto in cui sono contenute.

2.9 Caratteri a due byte non mostrati nella vista Console

Durante la creazione profili, tutti i caratteri a due byte verranno visualizzati come ???? nella vista Console.

2.10 Analisi perdite: arresto anomalo durante la creazione profili di applet con IBM JVM

La creazione profili di applet con IBM 1.4.2 SR1 JVM per l'analisi perdite risulta in un arresto anomalo della JVM. Specificare -Xj9 negli argomenti VM per l'applicazione per risolvere questo problema.

2.11 Analisi perdite: impostazioni internazionali per l'analisi uguali alle impostazioni internazionali per la raccolta dati

Le impostazioni internazionali sull'host del workbench, sull'host di distribuzione remoto e sull'applicazione di destinazione, devono essere le stesse durante la raccolta dei dump heap ottimizzati Hyades.

2.12 Analisi thread: proprietario thread di blocco mancante con IBM JRE 1.4.1 o versione precedente

Durante la creazione profili per l'analisi thread con IBM JVM 1.4.1 o versioni precedenti, la vista Thread nella prospettiva Creazione profili e log non mostra il proprietario thread dei controlli dei blocchi perché questi dati non vengono raccolti. Soluzione: Aggiornare a IBM JRE 1.4.2.

2.13 Durante la creazione profili remota su Solaris, si potrebbe verificare un arresto anomalo della JVM di Sun

Durante la creazione profili in remoto su Solaris, un difetto nel JRE Sun 1.4.x impedisce la creazione profili per alcune combinazioni di funzioni, soprattutto quando la creazione profili di memoria o l'analisi thread sono attivate. Questo problema è descritto al sito Web di Sun, all'indirizzo: http://developer.java.sun.com/developer/bugParade/bugs/4614956.html Soluzione: utilizzare Sun JRE 1.4.2_06 o una versione successiva.

Visualizza il file Readme principale