Jak skonfigurować czas ładowania za pomocą AspectJ i Tomcat?
Próbowałem skonfigurować tkanie czasu ładowania (w celu profilowania za pomocą Perf4J) w następujący sposób:
1) Dodałemaop.xml
doMETA-INF
teczka. Po wdrożeniu META-INF jest umieszczany w katalogu głównym artefaktu (tj.MyAppDeployed/META-INF
).
2) Umieściłemaspectjrt-1.6.1.jar
, aspectjweaver-1.6.1.jar
, commons-jexl-1.1.jar
, commons-logging.jar
doTomcat/lib
folder (na początku próbowałemMyAppDeployed/WEB-INF/libs
ale to też nie działa).
3) Dodałem-javaagent:C:\apache-tomcat-6.0.33\lib\aspectjweaver-1.6.1.jar
do opcji maszyny wirtualnej podczas uruchamiania Tomcat.
4) Mójaop.xml
:
<code><!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.eclipse.org/aspectj/dtd/aspectj.dtd"> <aspectj> <aspects> <aspect name="org.perf4j.log4j.aop.TimingAspect"/> </aspects> <weaver options="-verbose -showWeaveInfo"> <include within="com.mypackages.MyClass"/> </weaver> </aspectj> </code>
Nie widzę żadnych oznak, że dzieje się czas tkania. Ani raporty o błędach, ani niezbędne wyniki. Mam tylko komunikat o błędzie:
<code>Error occurred during initialization of VM agent library failed to init: instrument Error opening zip file: C:\apache-tomcat-6.0.33\lib\wrong-jar.jar </code>
w przypadku, gdy popełnię błąd waspectjweaver-1.6.1.jar
nazwa po określeniu parametru javaagent. Jeśli jest poprawnie napisane - nie są drukowane komunikaty o błędach.
Jakieś pomysły, co robię źle?
P.S. Używam Java 5 i próbowałem tych samych rzeczy1.5.4
wersja aspektu z dokładnie takimi samymi wynikami.