Een toepassing in de stand-alone werkstand profileren
U kunt een toepassing profileren in de stand-alone werkstand (dat wil zeggen met de opdrachtregel) zonder dat het Test and Performance Tools Platform is geïnstalleerd. De agentcontroller moet echter wel zijn geïnstalleerd op de computer waarop de te profileren toepassing staat.
U kunt een toepassing profileren in de stand-alone werkstand door de Java-profileringsagent op te roepen. Dit is een bibliotheek die aan een Java Virtual Machine
(JVM) is gekoppeld om het gedrag van de Java-toepassing te controleren en vast te leggen. De uitvoer van de agent is in de vorm van XML-fragmenten.
U start de Java-profileringsagent met de Java-optie -Xrun:
-XrunpiAgent:agent_parm[,agent_parm]*
Om bijvoorbeeld PerformanceExample.java te profileren met filters die zijn gedefinieerd in het bestand myFilters.txt, en de gegevens van de profileringssessie door te sturen naar het bestand PEProfilingData, moet u de volgende opdrachtregel typen:
java -XrunpiAgent:server=standalone,filters=myFilters.txt,file=PEProfilingData.trcxml
PerformanceExample
- Opmerking: als u versie 6 van WebSphere Application Server (WAS) met de opdrachtregel in de profileringswerkstand wilt starten, moet u de volgende stappen uitvoeren:
- Ga naar <profielhoofddirectory>/config/cells/<knooppuntnaam>Cell/nodes/<knooppuntnaam>/servers/server1.
- Bewerk het element jvmEntries in het bestand server.xml. Het element bevat het kenmerk genericJvmArguments. Voeg -XrunpiAgent:server=enabled aan de waarde van het kenmerk toe.
- Start WAS opnieuw.
-
- Door de parameter -XrunpiAgent uit te breiden, kunt u verschillende werkstanden opgeven waarin de profileringsagent kan worden uitgevoerd. De parameteragent_parm kan een van de volgende waarden hebben:
- server=[standalone | enabled | controlled | application]
- standalone
- De profileringsagent wordt uitgevoerd in de werkstand headless, wat betekent dat het niet mogelijk is om er interactief mee te zijn vanuit de workbench. Configuratie-informatie wordt geleverd in de configuratiebestanden en de profileringsgegevens worden direct in een bestand opgeslagen door de profileringsagent. Het profileringsbestand kan later worden geïmporteerd in de workbench.
- Java Profiling Agent is handmatig gekoppeld aan een JVM-instance en genereert profileringsgegevens die naar een uitvoerbestand worden gestuurd. Het standaarduitvoerbestand heet trace.trcxml, maar u kunt een andere bestandsnaam opgeven met de parameter
file= bestandsnaam. Als deze optie is geselecteerd, produceert Java
Profiling Agent een afsluitend traceRoot-element, zodat een volledig en geldig XML-document kan worden gemaakt.
- enabled (Dit is de standaardwaarde.)
- De profileringsagent is actief in de achtergrond van de JVM zonder resources te gebruiken tot de workbench er verbinding mee maakt en de controlefuncties worden gestart. De gegevens worden vervolgens via het gegevenskanaal van de agent in een gegevensstroom verstuurd naar de workbench.
Dit houdt in dat de Java Profiling Agent wordt geladen en de toepassing normaal uitgevoerd kan worden, maar er worden geen profileringsgegevens geproduceerd tot de client aan de agent wordt gekoppeld en deze van instructies voorziet. Als deze optie is geselecteerd, produceert de Java Profiling Agent alleen XML-fragmenten en geen volledige XML-documenten.
- controlled
- De profileringsagent reserveert de JVM vanaf de initialisatie (de agent wordt geladen, maar blokkeert de uitvoering van de toepassing) tot de workbench er verbinding mee maakt en instructies geeft voor controle door een client. Als de profileringsagent in de werkstand controlled wordt gestart, lijkt de JVM vast te lopen tot de agent wordt gevraagd de controle te starten. De agent produceert alleen XML-fragmenten en geen volledige XML-documenten.
- application
- De Java Profiling Agent wordt geladen, is actief in de achtergrond en staat toe dat de toepassing normaal wordt uitgevoerd, zoals in de werkstand enabled.
- De agent produceert profileringsgegevens als aan twee voorwaarden is voldaan. Ten eerste moet de toepassing hebben aangevraagd dat de agent de profilering start met org.eclipse.hyades.collection.profiler.Profiler. Ten tweede moet de testclient in de workbench gekoppeld zijn aan de Java Profiling Agent en begonnen zijn met de controle.
- Opmerking: De profilering wordt geheel gecontroleerd door de toepassing met behulp van de klasse org.eclipse.hyades.collection.profiler.Profiler.
- profile=profielbestand
Deze optie is alleen van toepassing als server=standalone is ingesteld. Dit bestand bevat de opties waarmee u de profilering wilt uitvoeren in de werkstand standalone. De opties in het bestand zijn normaal gesproken ingesteld in het venster voor profileringsconfiguratie bij het starten van een Java-proces vanuit de workbench; het gebruik van het bestand heeft hetzelfde effect in de werkstand standalone.
Het bestand kan op twee manieren worden geladen.
Zie Standalone profielfilteropties voor een lijst met geldige opties voor het profielfilter. - filters=bestandsnaam
Wordt alleen gebruikt als server=standalone is opgegeven.
Geeft de naam op van het bestand dat de eerste klassenfilterdefinities bevat die worden gebruikt tijdens de profileringssessie. De standaardbestandsnaam is filters.txt. Het bestand staat in de huidige directory. Hieronder vindt u informatie over de filterindeling.
- file=bestandsnaam
Wordt alleen gebruikt als server=standalone is opgegeven.
Geeft de naam op van het bestand waarheen de profileringsgegevens worden geschreven. De standaardnaam is trace.trcxml. Het bestand staat in de huidige directory.
- help
Hiermee wordt een lijst van beschikbare agentopties voor STDOUT afgebeeld.
Bestand met de indeling van klassenfilters
Het filterbestand moet drie velden bevatten, package/class, method en mode in de volgende indeling:
package/class method mode
Hierbij geldt het volgende:
- package/class
- Dit veld wordt gebruikt om een model op te geven voor de naam van een pakket of klasse.
Het model moet worden opgegeven als tekenreeks zonder spaties. De tekenreeks mag aan het begin of aan het einde een enkele asterisk (*) bevatten, bijvoorbeeld *.mijnpakket of org.mijnbedrijf.*. De * correspondeert met nul of meer tekens, zodat het model als generiek prefix of suffix fungeert. U kunt ook een enkele * gebruiken om alle tekenreeksen mee aan te geven.
- method
- Dit veld wordt gebruikt om een model op te geven voor de methodenaam.
Het model moet worden opgegeven als tekenreeks zonder spaties en met dezelfde specificatieregels als het veld class.
- mode
- Dit veld geeft aan of het pakket of de klasse dat met het model overeenkomt, in de profilering moet worden opgenomen of niet. De waarde voor mode is INCLUDE of EXCLUDE.
Filtermodellen worden verwerkt in de volgorde waarin ze zijn opgegeven totdat de eerste overeenkomst wordt gevonden. Als de klassennaam niet overeenkomt met een van de opgegeven filtermodellen, wordt standaard INCLUDE (opnemen) gebruikt voor de klasse.
Besturing van Java-profileringsagent
Als de Java-profileringsagent wordt gestart met de parameter server=enabled of server=controlled, wordt de communicatie met de agent verzorgd door de clientworkbench via de agentcontroller op de host.
Opmerkingen
- Als u geen bestandsnaam voor filterdefinities opgeeft op de opdrachtregel, probeert de Java-profileringsagent filters te lezen uit het bestand filters.txt in de huidige directory. Als het bestand filters.txt niet bestaat, worden geen filters gebruikt tijdens de profileringssessie. Als u het filterbestand filters.txt noemt en in de huidige directory plaatst, hoeft u de filterparameter niet op de opdrachtregel op te geven om de profileringsagent filters te laten gebruiken.
- Als u geen uitvoerbestand opgeeft voor de profileringsgegevens, worden deze opgeslagen in het bestand trace.trcxml.
- U hoeft geen extensie op te geven voor het uitvoerbestand. Het krijgt automatisch de extensie .trcxml.
- U hoeft geen extensie op te geven voor de Java-toepassing. Het kan een .class-bestand zijn.
Verwante concepten
Overzicht profileringstool
Profileringsresources
Verwante taken
Een toepassing in de werkstand standalone profileren in AS/400
Een Java-proces starten of koppelen
Profileringsmonitorview gebruiken
(C) Copyright IBM Corporation 2000, 2006. Alle rechten voorbehouden.