New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pinpoint web ui can not select an application on win7 #172
Comments
This issue is very fatal on win7. Please evaluate it. |
This issue also happened on 1.0.4-rc on my win7. I will describe the scene as following: 1 hbase status: hbase version: hbase-0.98.10-hadoop1 (because I plan to use it with native windows cmd) ... 2015-02-12 17:07:18,624 INFO [SyncThread:0] server.ZooKeeperServer: Established 2015-02-12 17:08:28,259 INFO [SyncThread:0] server.ZooKeeperServer: Established 2015-02-12 17:19:46,119 INFO [SyncThread:0] server.ZooKeeperServer: Established 2015-02-12 17:20:44,230 INFO [SyncThread:0] server.ZooKeeperServer: Established 2 Agent status: normal. 3 Collector status: Always in the following , not any change. 二月 12, 2015 5:17:39 下午 org.apache.coyote.AbstractProtocol init 信息: Starting Servlet Engine: Apache Tomcat/7.0.47 SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] 4 Web UI The following exception happened, 二月 12, 2015 5:35:33 下午 org.apache.catalina.core.StandardWrapperValve invoke |
While I entered into hbase shell, it seemes not any row, hbase(main):006:0> scan 'AgentInfo' 0 row(s) in 0.0670 seconds hbase(main):007:0> scan 'AgentInfo' 0 row(s) in 0.0110 seconds hbase(main):008:0> scan 'AgentInfo' 0 row(s) in 0.0090 seconds hbase(main):009:0> scan 'AgentInfo' 0 row(s) in 0.0090 seconds hbase(main):010:0> scan 'ApiMetaData' 0 row(s) in 0.0340 seconds hbase(main):011:0> scan 'ApiMetaData' 0 row(s) in 0.0320 seconds hbase(main):012:0> scan 'AgentStat' 0 row(s) in 0.0570 seconds hbase(main):013:0> scan 'Traces' 0 row(s) in 0.1600 seconds hbase(main):014:0> scan 'ApplicationStatistics' 0 row(s) in 0.0120 seconds hbase(main):015:0> So, I felt that maybe the reason is just here! |
I had to reproduce the problem. There are two Ethernet adapter in my OS.
When I run HBase on Windows, logs are the following:
I defined region server to localhost in hbase/conf/regionservers.
You can see that HBaseRPC are attempting to connect is to 192.168.123.306:56360
This problem is caused because it is different from the actual IP address bound. But I solve it to disable another Ethernet adapter.
I hope this helps you. |
It could also be due to difference in hbase versions. We'll try to reproduce the error with 0.98.10. Meanwhile, you can use 0.94.x with Windows as explained here. It's in Korean, but the gist of it is:
|
@Xylus note a point: 0.94.x does not directly offer a native hbase cmd. I want to know which version you said. |
@Xylus meanwhile, from 0.96.x, hbase team starts to offer some native hbase cmds. |
@Xylus oh, maybe I am wrong, quickstart\support\hbase-win\bin seems to offer some wrapped hbase cmds. let me see and switch 0.94.x |
I have confirmed that using hbase-0.94.x and 1.0.4-rc works fine! I can select TESTAPP from web ui! |
I have a question: how I can see my callstack? Now, I only see Response Summary , load, and servers. |
You can view the callstack by dragging on the scatter chart on the top right hand corner. |
@Xylus Sorry, I does not understand you said, and could you please tell me how to see the callstack of TESTAPP in details. From chinese, I can not access twitter, so, some operations from testapp can not work fine. Thanks! |
Sure, in order to view the callstack, you've got to generate some requests from your testapp. You can do this by opening up a browser and heading over to [http://localhost:28081](http://localhost:28081]. This is the testapp browser where you can emulate requests received by your profiler application. You should now be able to view the server map from the Web UI, and to view the callstack click and drag your mouse over the dots in the scatter chart (top right hand corner). You can also open up the help menu by clicking on the "?" icon at the top right hand corder of the screen. |
Thanks @Xylus , I can understand your means. It is very pity that from china, http://maps.googleapis.com/maps/api/geocode/json can not also be accessed. HTTP Status 500 - Connect to maps.googleapis.com:80 [maps.googleapis.com/173.194.72.95] failed: Connection timed out: connect type Exception report message Connect to maps.googleapis.com:80 [maps.googleapis.com/173.194.72.95] failed: Connection timed out: connect description The server encountered an internal error that prevented it from fulfilling this request. exception root cause note The full stack trace of the root cause is available in the Apache Tomcat/7.0.47 logs. Apache Tomcat/7.0.47 |
There is other simple way to see callstack for users from china? |
I am looking for other json url and modify testapp. |
You should be able to see the request dots on the scatter chart even if the http call failed. It should show up as a red dot. You can also try other links at the testapp console such as /getCurrentTimestamp to generate a simple call stack. However, if you are not seeing any dots on the scatter chart at all, it means the trace data are not being stored in HBase. If this is the case, please restart everything and try again. (start up order should be HBase -> Collector -> TestApp -> Web). If you are looking to modify testapp by adding other json urls, it'd be great if you could send us a pull request! |
@Xylus yeah, I have seen the callstack, cool! However, I think that Response Time Scatter Chart should be improved. My idea is that the response time display should be enlarged so that users can directly click it rather than dragging. :) |
Thanks for the suggestion. We do get quite a few questions regarding how to use the Scatter Chart. Clicking on the dots may feel more intuitive, but it would be almost impossible to click on individual dots if the request count is large. Dragging seemed like the best option for us, but things may improve in the future. |
@Xylus back to the issue, current confirmation result is that on win7 ,
|
if hbase-0.94.x + master failed, I believe that there must be some regressions. |
I guess the maintainer should give some tutorial for how to use the webUI. I also struggled to find where is callstack information before I saw above conversation. |
@Xylus meanwhile, we can directly click the edge in server map, then, show the transaction or call stack happened on the two nodes or more nodes. I think this is a better solution and you can consider using graphic database to store the server map then, combine with hbase. |
Thank you for your suggestion. We've actually considered the click edge -> call stack idea before, but some applications had over 100,000 requests per 5 minutes (with less than 5% sampling) and we needed a better way to filter out the requests. Dragging on the scatter chart seemed like the best solution for us. Work on the Web UI will pick up speed over the next few months and we'll look into your suggestion. |
@Xylus I can understand you said. forgotting to say: you can also consider the following: 1 Making the user set a gate value of response time |
I installed OpenVPN, have the same problem! Turn off OpenVPN, everything is all right. |
After I started all cmd script successfully, pinpoint web ui can not select an application. And the following exception happened,
严重: Servlet.service() for servlet [pinpoint-web] in context with path [] threw exception [Request processing failed; nested exception is org.springframew
ork.data.hadoop.hbase.HbaseSystemException: org.apache.hadoop.hbase.client.NoServerForRegionException: Unable to find region for ApplicationIndex,,99999999
999999 after 10 tries.; nested exception is java.lang.RuntimeException: org.apache.hadoop.hbase.client.NoServerForRegionException: Unable to find region fo
r ApplicationIndex,,99999999999999 after 10 tries.] with root cause
org.apache.hadoop.hbase.client.NoServerForRegionException: Unable to find region for ApplicationIndex,,99999999999999 after 10 tries.
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegionInMeta(HConnectionManager.java:980)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:885)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegionInMeta(HConnectionManager.java:987)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:889)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:846)
at org.apache.hadoop.hbase.client.HTable.finishSetup(HTable.java:270)
at org.apache.hadoop.hbase.client.HTable.(HTable.java:210)
at org.apache.hadoop.hbase.client.HTableFactory.createHTableInterface(HTableFactory.java:36)
at org.apache.hadoop.hbase.client.HTablePool.createHTable(HTablePool.java:265)
at org.apache.hadoop.hbase.client.HTablePool.findOrCreateTable(HTablePool.java:195)
at org.apache.hadoop.hbase.client.HTablePool.getTable(HTablePool.java:174)
at org.apache.hadoop.hbase.client.HTablePool.getTable(HTablePool.java:213)
at com.navercorp.pinpoint.common.hbase.PooledHTableFactory.createHTableInterface(PooledHTableFactory.java:47)
at org.springframework.data.hadoop.hbase.HbaseUtils.getHTable(HbaseUtils.java:73)
at org.springframework.data.hadoop.hbase.HbaseTemplate.getTable(HbaseTemplate.java:75)
at org.springframework.data.hadoop.hbase.HbaseTemplate.execute(HbaseTemplate.java:54)
at com.navercorp.pinpoint.common.hbase.HbaseTemplate2.find(HbaseTemplate2.java:124)
at com.navercorp.pinpoint.common.hbase.HbaseTemplate2.find(HbaseTemplate2.java:153)
at com.navercorp.pinpoint.web.dao.hbase.HbaseApplicationIndexDao.selectAllApplicationNames(HbaseApplicationIndexDao.java:58)
at com.navercorp.pinpoint.web.service.CommonServiceImpl.selectAllApplicationNames(CommonServiceImpl.java:38)
at com.navercorp.pinpoint.web.controller.MainController.getApplicationGroup(MainController.java:49)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:827)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at com.navercorp.pinpoint.web.servlet.NoCacheFilter.doFilter(NoCacheFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
The text was updated successfully, but these errors were encountered: