모니터링 오류 문의 드립니다

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

모니터링 오류 문의 드립니다

davidkts
This post was updated on .
안녕하세요.. 수고가 아주 많으십니다..

부하 성능 테스트를 위해 서버 3대 가지고 ngrinder 를 공부 중 입니다..

모니터링 하려는 서버의 테스트 주소를 내부아이피로 성능테스트를 했을 때는 잘되는 것을 확인했습니다.

외부주소로 바꾸어서 성능테스트를 했을때 생성된 오류 로그파일 내용은 맨 아래 보여 드립니다.

모니터링 하려는 서버에서
./run_monitor.sh 을 실행시켰을 때 다음과 같이 내부 아이피로 메시지가 출력되어 있는 상태 입니다..

2013-07-11 08:36:29,637 INFO  org.ngrinder.monitor.agent.AgentMonitorServer: Service URL:service:jmx:rmi://내부아이피:13243/jndi/rmi://내부아이피:13243/jmxrmi is initiated.

result = request1.GET("http://내부아이피/~kingdom/API.php)
이런 식으로 내부 아이피로 테스트할 때는 잘 되는데..

result = request1.GET("http://dev.ninja.taucoms.com:5080/~kingdom/API.php)
이렇게 외주 주소를 사용해서 테스트할 때는 아래와 같은 오류가 납니다..

http://dev.ninja.taucoms.com:13243 은 http://내부아이피:13243 으로 포트포워딩 해 놓은 상태 입니다..

http://dev.ninja.taucoms.com:5080 은 http://내부아이피:80 으로 포트포워딩 해 놓은 상태 이구요..

스크립트는 별도로 만들어서 양쪽 테스트 한거구요..
성능테스트나 스크립트 설정 중 도메인이나 아이피 설정은 그에 맞게 바꾸어서 적용한 겁니다..

바쁘시지만 도와주시면 감사하겠습니다..

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

외부주소로 바꾸어서 성능테스트를 했을때 생성된 오류 로그파일 내용

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

2013-07-11 17:20:31,605 ERROR Aborted run: Java exception calling TestRunner
net.grinder.scriptengine.jython.JythonScriptExecutionException: Java exception calling TestRunner
        result = request1.GET("http://dev.ninja.taucoms.com:5080/~kingdom/API.php)
        File "/root/.ngrinder_agent/file-store/admin/current/script.py", line 44, in __call__
net.grinder.plugin.http.TimeoutException: Connection establishment timed out
        at HTTPClient.HTTPConnection.getSocket(HTTPConnection.java:3448) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.sendRequest(HTTPConnection.java:3089) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.handleRequest(HTTPConnection.java:2883) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.setupRequest(HTTPConnection.java:2675) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.Get(HTTPConnection.java:986) ~[grinder-httpclient-3.9.1.jar:na]
        at net.grinder.plugin.http.HTTPRequest$2.doRequest(HTTPRequest.java:504) ~[grinder-http-3.9.1.jar:na]
        at net.grinder.plugin.http.HTTPRequest$AbstractRequest.getHTTPResponse(HTTPRequest.java:1276) ~[grinder-http-3.9.1.jar:na]
        at net.grinder.plugin.http.HTTPRequest.GET(HTTPRequest.java:499) ~[grinder-http-3.9.1.jar:na]
        at net.grinder.plugin.http.HTTPRequest.GET(HTTPRequest.java:445) ~[grinder-http-3.9.1.jar:na]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_25]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_25]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_25]
        at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_25]
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:186) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:204) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyObject.__call__(PyObject.java:404) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyObject.__call__(PyObject.java:408) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyMethod.__call__(PyMethod.java:124) ~[jython-standalone-2.5.3.jar:na]
        at org.python.pycode._pyx1.__call__$3(/root/.ngrinder_agent/file-store/admin/current/script.py:70) ~[na:na]
        at org.python.pycode._pyx1.call_function(/root/.ngrinder_agent/file-store/admin/current/script.py) ~[na:na]
        at org.python.core.PyTableCode.call(PyTableCode.java:165) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyBaseCode.call(PyBaseCode.java:301) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyBaseCode.call(PyBaseCode.java:194) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyFunction.__call__(PyFunction.java:387) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:220) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyMethod.__call__(PyMethod.java:211) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyMethod.__call__(PyMethod.java:206) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyObject.invoke(PyObject.java:3555) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyInstance.instance___call__(PyInstance.java:351) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyInstance.__call__(PyInstance.java:342) ~[jython-standalone-2.5.3.jar:na]
        at org.python.core.PyObject.__call__(PyObject.java:371) ~[jython-standalone-2.5.3.jar:na]
        at net.grinder.scriptengine.jython.JythonScriptEngine$JythonWorkerRunnable.run(JythonScriptEngine.java:250) ~[grinder-core-3.9.1.jar:na]
        at net.grinder.engine.process.GrinderThread.run(GrinderThread.java:118) ~[grinder-core-3.9.1.jar:na]
        at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25]

Reply | Threaded
Open this post in threaded view
|

Re: 모니터링 오류 문의 드립니다

junoyoon
Administrator
모니터는 성능 테스트 스크립트와는 아무런 관련이 없습니다.
즉 구글에 대고 www.google.com 으로 테스트 하더라도 테스트가 됩니다.
모니터는 성능 테스트 실행도중에 해당 서버의 CPU/메모리 사용량 들을 동시에 가져오려고 할때만 쓰는 겁니다.
해당 서버가 이 정보를 주는 별도의 인터페이스가 없으니까 모니터로 통로를 열어주는 것이라고 보실 수 있습니다.

지금 서로 관계 없는 상황이 관계있는 것으로 약간 잘못 인지하신 듯 합니다.

result = request1.GET("http://dev.ninja.taucoms.com:5080/~kingdom/API.php)

라고 호출하셨을때, Connection establishment timed out  이 난다면, 그것은 실제로 해당 에이전트 머신으로부터 타겟까지의 네트웍상에서 Connection 에러가 발생하는 겁니다. 만약 현재 로드 상황이라면 로드 때문에 response 가 오지 않는 것일 수 있습니다.

일단 에이전트를 설치하신 서버 콘솔로 들어가셔서..

telnet dev.ninja.taucoms.com 5080 이 응답이 있는지 부터 확인해 보시고.
만약 있다면
wget "http://dev.ninja.taucoms.com:5080/~kingdom/API.php"
을 하셔서 다운 받아지는지 확인해 보세요.
Reply | Threaded
Open this post in threaded view
|

Re: 모니터링 오류 문의 드립니다

davidkts
This post was updated on .
아 빠르고 시원스러운 답변 감사합니다..

agent에서 실제 외부아이피로 접속이 않되는 거였네요..

감사합니다.. ^^