Profilere en applikasjon i frittstående modus
Du kan profilere en applikasjon i frittstående modus (det vil si fra kommandolinjen), uten
at plattformen for test- og ytelsesverktøy (TPTP) er installert. Agentkontrolleren må imidlertid
være installert på maskinen som inneholder applikasjonen som skal profileres.
Du kan profilere en applikasjon i frittstående modus ved å
aktivere Java-profileringsagenten, som er et bibliotek som kobler seg
til en Java Virtual Machine (JVM) for å fange opp og registrere
hvordan Java-applikasjonen fungerer. Utdataene fra agenten er i form av XML-fragmenter.
Bruk Java-alternativet -Xrun til aktivere Java-profileringsagenten.
-XrunpiAgent:agent_parm[,agent_parm]*
Hvis du skal profilere for eksempel PerformanceExample.java ved
hjelp av filtre som er definert i filen myFilters.txt, og dirigere dataene fra profileringssesjonen til filen
PEProfilingData, må du skrive følgende på en kommandolinje:
java -XrunpiAgent:server=standalone,filters=myFilters.txt,file=PEProfilingData.trcxml
PerformanceExample
- Merk: Hvis du vil starte WebSphere
Application Server Version 6 (WAS) i profileringsmodus fra kommandolinjen, må du utføre disse trinnene:
- Gå til <profilrot>/config/cells/<nodename>Cell/nodes/<nodename>/servers/server1
- Rediger jvmEntries-elementet i filen server.xml. I det elementet er det et attributt kalt genericJvmArguments. Legg til -XrunpiAgent:server=enabled i attributtverdien.
- Start WAS på nytt.
-
- Ved å utvide parameteren -XrunpiAgent kan du oppgi flere ulike modi som profileringsagenten skal kjøres i.
Parameteren agent_parm kan ha en av disse verdiene:
- server=[standalone | enabled | controlled | application]
- standalone
- Profileringsagenten kjører i frittstående modus eller kommandogrensesnittmodus, som
betyr at det ikke er mulig å kommunisere med den fra arbeidsbenken.
Konfigurasjonsinformasjonen blir levert fra konfigurasjonsfiler og
profileringsdataene blir lagret direkte i en fil av
profileringsagenten. Profileringsfilen kan deretter importeres til arbeidsbenken på et senere tidspunkt.
- Java-profileringsagenten er koblet manuelt til en JVM-forekomst og genererer profileringsdata til en utdatafil.
Standard utdatafil er trace.trcxml, men du kan oppgi et annet filnavn ved å bruke parameteren filename.
Når dette alternativet er valgt, produserer Java-profileringsagenten
et innkapslet traceRoot-element for å lage et fullstendig og gyldig XML-dokument.
- enabled (Dette er standard.)
- Profileringsagenten kjører i bakgrunnen i JVM uten å bruke
ressurser, til den kobler seg til arbeidsbenken og starter
overvåking. Dataene blir deretter ført via agentens datakanal og brukt av arbeidsbenken.
Java-profileringsagenten blir lastet inn slik at applikasjonen kan
kjøres på vanlig måte, men det blir ikke produsert profileringsdata før
en klient kobler seg til agenten og gir den instruksjoner. Når dette
alternativet er valgt, produserer Java-profileringsagenten bare
XML-fragmenter, ikke et fullstendig XML-dokument.
- controlled
- Profileringsagenten legger beslag på JVMen fra
initialisering (agenten blir lastet inn, men den blokkerer kjøring av
applikasjonen), til den blir koblet til arbeidsbenken og
mottar instruksjoner fra en klient om å starte overvåking.
Når profileringsagenten starter i overvåket modus, ser det ut
som den "henger" på JVM, til den blir spurt om å starte overvåking. Den
produserer bare XML-fragmenter, ikke et fullstendig
XML-dokument.
- application
- Java-profileringsagenten blir lastet inn, kjører i bakgrunnen
og tillater at applikasjonen blir kjørt på vanlig måte som i aktivert
modus.
- Den produserer bare profileringsdata hvis to betingelser er oppfylt.
Applikasjonen må ha bedt om start av profileringsagenten ved hjelp av
org.eclipse.hyades.collection.profiler.Profiler, og
testklienten til arbeidsbenken må være koblet til
Java-profileringsagenten og startet overvåking.
- Merk: All profilering blir styrt av
applikasjonen ved hjelp av klassen
org.eclipse.hyades.collection.profiler.Profiler.
- profile=profile file
Dette alternativet gjelder bare når server=standalone. Denne
filen spesifiserer alternativene som du vil at profilereren skal
kjøre i standalone-modus. Alternativene som oppgis i denne filen, blir
vanligvis definert i vinduet for profileringskonfigurasjon når
brukeren starter en Java-prosess fra arbeidsbenken. Bruk av denne
filen tilsvarer det å spesifisere alternativer når du kjører i
standalone-modus.
Filen kan lastes inn på en av disse måtene:
Se Frittstående alternativer for profilfilter hvis du vil ha en liste over gyldige alternativer for profilfilen.
- filters=filename
Blir bare brukt når server=standalone er oppgitt.
Spesifiserer navnet på filen som inneholder de opprinnelige klassefilterdefinisjonene som skal brukes
i profileringssesjonen. Navnet på standardfilen er filters.txt i den gjeldende katalogen.
Du finner opplysninger om filformatet nedenfor.
- file=filename
Blir bare brukt når server=standalone er oppgitt.
Spesifiserer navnet på en fil som profileringsdataene blir skrevet til. Navnet på standardfilen er trace.trcxml i den gjeldende katalogen.
- help
Viser en liste over tilgjengelige agentalternativer for STDOUT.
Format på klassefilterfil
Filterfilen bør spesifisere tre felt, package/class, method og mode i dette formatet:
package/class method mode
der
- package/class
- Dette feltet blir brukt til å angi et mønster for en pakke eller et klassenavn. Mønsteret bør oppgis som en streng uten innfelte blanktegn. Strengen
kan inneholde en stjerne (*) i begynnelsen eller slutten, for
eksempel *.mypackage eller org.mycompany.*.
Stjernen (*) samsvarer med null eller flere tegn, slik at mønsteret
blir et generisk prefiks- eller suffiksmønster. En enkelt stjerne (*) kan også oppgis for å representere alle strenger.
- method
- Dette feltet blir brukt til å angi et mønster for metodenavnet. Mønsteret bør oppgis som en streng uten innfelte blanktegn, og med de
samme spesifikasjonsreglene som feltet class.
- mode
- Dette feltet angir om pakken eller klassen som samsvarer med
mønsteret, skal inkluderes eller ekskluderes fra profileringen. Verdien for mode er enten INCLUDE eller EXCLUDE.
Filtermønstre blir behandlet i den rekkefølgen de ble oppgitt, til
det første mønsteret samsvarer. Hvis klassenavnet ikke samsvarer med et av de oppgitte filtermønstrene,
er det standard å inkludere (INCLUDE) klassen.
Styre profileringsagenten
Du starter Java-profileringsagenten med parameteren server=enabled
eller server=controlled. Du kommuniserer med agenten ved å bruke klientarbeidsbenken og
agentkontrolleren på vertsmaskinen.
Merknader
- Hvis du ikke skriver filnavnet til en filterdefinisjon på
kommandolinjen, forsøker Java-profileringsagenten å lese filtrene fra
filen filters.txt i den gjeldende katalogen. Hvis ikke filters.txt finnes, blir det ikke brukt filtre
i løpet av profileringssesjonen. Hvis du gir filterfilen navnet
filters.txt og plasserer den i den gjeldende katalogen, trenger du ikke å oppgi parameteren filters
på kommandolinjen for at profileringsagenten skal kunne bruke filterne.
- Hvis du ikke oppgir en utdatafil for profileringsdataene, blir
dataene lagret i filen trace.trcxml
- Du trenger ikke oppgi en filtype for utdatafilen. Den henter automatisk filtypen .trcxml
- Du trenger ikke oppgi en filtype for Java-applikasjonen. Det kan være en fil av typen .class.
Beslektede begreper
Oversikt over profileringsverktøyet
Profileringsressurser
Beslektede oppgaver
Profilere en applikasjon i frittstående modus på AS/400
Starte eller koble seg til en Java-prosess
Bruke Profileringsovervåker-visningen
(C) Copyright IBM Corporation 2000, 2006. All Rights
Reserved.