1 단계: ${jxinsight-install}/lib/jxinsight-core.jar 파일을 ${tomcat-install}/lib/ 에 복사한다.

2 단계: Copy ${jxinsight-install}/lib/jxinsight-ext-aj.jar 파일을 ${tomcat-install}/lib/ 에 복사한다.

3 단계: ${jxinsight-install}/bin/${os}/ 에 OS별로 에이전트 라이브러리가 존재한다. 파일형태는 ${lib.prefix}jdbinsight.${lib.ext}이다. 에이전트 라이브러리를 로드하는 방법은 다음과 같다. OS가 Unix계열이라면 다음과 같은 설정을 jxinsight-console.sh 과 jxinsight-terminal.sh에 추가한다.

#!/bin/ksh
if `uname -s` = SunOS ]; then
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/bin/solaris
export LD_LIBRARY_PATH
elif `uname -s` = Linux ]; then
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/bin/linux
export LD_LIBRARY_PATH
elif `uname -s` = Darwin ]; then
DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$PWD/bin/osx
export DYLD_LIBRARY_PATH
elif `uname -s` = AIX ]; then
LIBPATH=LIBPATH:$PWD/bin/aix
export LIBPATH
elif `uname -s` = HP-UX ]; then
SHLIB_PATH=$SHLIB_PATH:$PWD/bin/hp-ux
export SHLIB_PATH
fi

윈도우에서 사용한다면 기본적으로 System.getProperty("java.library.path") 값을 통해 경로를 알수 있다. 필자의 경우 C:\WINDOWS\system32 에 jdbinsight.dll 파일을 복사해넣었다.

4 단계: ${tomcat-install}/bin/ 에 위치한 setenv.(bat | sh) 파일에 다음 설정을 추가한다.

set JAVA_OPTS="-Xrunjdbinsight -javaagent:${jxinsight-install}/lib/jxinsight-ext-javaagent.jar \ 
-javaagent:${jxinsight-install}/lib/aspectj/aspectjweaver.jar"

나의 경우 setenv.bat에서 JAVA_OPTS에

-Xrunjdbinsight "-javaagent:c:/JXInsight-5.5.0.3/lib/jxinsight-ext-javaagent.jar" "-javaagent:c:/JXInsight-5.5.0.3/lib/aspectj/aspectjweaver.jar"
를 추가했다.

5 단계: ${tomcat-install}/bin/ 에 jxinsight.override.config 라는 파일을 만들고 다음 설정을 추가한다.

jxinsight.server.profiler.metrics.jmx.groups=tomcat.v6

6 단계: 이제는 모니터링하고자 하는 타입을 결정해야 한다. 그리고 각각에 대해 필요한 모니터링 레벨과 타입(Probes, Traces, Object Observation, Call Diagnostics)을 결정해야 한다. JXInsight AspectJ 확장 라이브러리를 ${tomcat-install}/lib/ 에 복사하는 것으로 처리된다.

JXInsight AspectJ 확장 라이브러리에 대한 정보를 참고하라. 간단히 정리해보면 확장 라이브러리는 jxinsight-ext-aj.jar 파일내 포함되어 있다. 각각의 기능별로 각각의 클래스를 가지는데 다음의 5개이다.

com.jinspired.jxinsight.diagnostics.ext.aspectj.DiagnosticAspect
com.jinspired.jxinsight.diagnostics.ext.aspectj.DumpAspect
com.jinspired.jxinsight.trace.ext.aspectj.TraceAspect
com.jinspired.jxinsight.probes.ext.aspectj.ProbeAspect
com.jinspired.jxinsight.diagnostics.ext.aspectj.ObserveAspect

jar파일명은 각각의 기능에 대해 jxinsight-ext-aj-${technology-id}-${aspect-id}.jar 와 같은 명명규칙을 가진다.

예제 1: 배치된 서블릿의 자원을 측정하고자 한다면 간단히 ${jxinsight-install}/lib/jxinsight-ext-aj-servlet-probes.jar 를 ${tomcat-install}/lib/ 에 복사한다.

예제 2: 요청상태를 측정하고자 한다면 ${jxinsight-install}/lib/jxinsight-ext-aj-servlet-diagnostics.jar 를 ${tomcat-install}/lib/ 에 복사한다.

예제 3: 살아있는 세션 상태에 감시하는데 관심이 있다면 ${jxinsight-install}/lib/jxinsight-ext-aj-servlet-observe.jar 를 ${tomcat-install}/lib/ 에 복사한다.

정상적으로 연동이 되었다면 서버 시작시 다음과 비슷한 메시지가 출력된다.

[jxiagentjvm load
[jxiagentenabling garbage collection events (g=t). To disable specify -Xrunjdb
insight:g=f
[jxiagentenabling thread blocking events (b=t). To disable specify -Xrunjdbins
ight:b=f
[jxiagentenabling thread waiting events (w=t). To disable specify -Xrunjdbinsi
ght:w=f
[jxiagentdisabling memory allocation events (a=f). To enable specify -Xrunjdbi
nsight:a=t
[jxiagentenabling JXInsight class extensions (x=t). To disable specify -Xrunjd
binsight:x=f
[jxiagentenabling JVM metrics counters (m=t). To disable specify -Xrunjdbinsig
ht:m=f
[jxiagentloading agent class
[jxiagentregistering natives
[jxiagentbuild number 1119
[jxiagentdevelopment-only edition
[jxiagentlicense key is: DB1F3HX37VX2UX11724968E4BT
[jxiagentlicense validated
[jxinsightJXInsight AspectJ (load-timeWeaver Loaded
[jxinsightconfiguration file [jxinsight.aspectj.filters.configwas not found
in directory C:\was\apache-tomcat-6.0.14\bin
2007. 12. 29 오후 3:28:50 org.apache.catalina.core.AprLifecycleListener init
정보: The Apache Tomcat Native library which allows optimal performance in produ
ction environments was not found on the java.library.path: C:\Java\jdk1.5.0_12\b
in;.;C:\WINDOWS\system32;C:\WINDOWS;C:\oraclexe\app\oracle\product\10.2.0\server
\bin;C:\Java\jdk1.5.0_12\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\
Wbem;C:\Program Files\Intel\DMIX;C:\Program Files\ESTsoft\ALZip;C:\Program Files
\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\Intel\Wireless\Bin\;C:\Pr
ogram Files\MySQL\MySQL Server 5.0\bin;D:\Dev\opensource\maven-2.0.7\bin;D:\Dev\
opensource\apache-ant-1.7.0\bin;C:\Program Files\ThinkPad\ConnectUtilities;C:\Pr
ogram Files\ESTsoft\ALZip
2007. 12. 29 오후 3:28:51 org.apache.coyote.http11.Http11Protocol init
정보: Initializing Coyote HTTP/1.1 on http-8080
2007. 12. 29 오후 3:28:51 org.apache.catalina.startup.Catalina load
정보: Initialization processed in 2532 ms
[jxinsightloading properties config file [jxinsight.override.config]
[jxinsightlooking for mode [testconfig file in classpath
[jxinsightsuccessfully loaded mode [testconfig file
[jxinsightJNDI trace adaptor instantiated
[jxiagentinstrumented Tracer class installed
[jxinsightinstantiating server
[jxinsightloading product version information
[jxinsightproduct version information loaded
[jxinsightJXInsight 5.5.0.2
[jxinsightinitializing acceptor for client requests
[jxinsightreactor-acceptor is listening on port 1515
[jxinsightinitializing transmitter
[jxinsightstarting transmitter
[jxinsightserver started

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-8) was last changed on 03-Jan-2008 14:43 by DongGukLee