远程调试Ambari Metrics System
2017-03-08 18:13
260 查看
Ambari Metric System(以下简称AMS)作为Ambari中用作监控的独立的模块,其核心即是一个TimelineServer,其具有自己的内在工作机制,类似一个WEB服务。如下图所示,是其在Ambari中的源码结构:
![](http://img.blog.csdn.net/20170308175745534?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDI5NzE3NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
因此针对Ambari Server 的远程调试,并不能同时调试AMS,毕竟它们的端口也不相同。如果想调试AMS,则必须要在AMS的启动参数中加上对应的调试说明。总结下AMS是如何启动的,首先在web界面点击启动,则Ambari Server会向agent发送命令,调用AMS的启动脚本,看一下这个启动脚本。
其中内容如下图所示:
![](http://img.blog.csdn.net/20170308180511271?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDI5NzE3NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
透过其启动脚本中可以看到,发现其最终是执行 /usr/sbin/ambari-metrics-collector 这个脚本start的,那么编辑这个脚本找到java的启动server的命令,添加调试参数:
添加后即可得到如下图所示:
![](http://img.blog.csdn.net/20170308180749038?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDI5NzE3NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
以上一系列操作后,去Server端重启一下metrics,基本就可调试了,再然后就是在IDE中配置相关的调试参数,如下图添加的远程调试应用所示:
![](http://img.blog.csdn.net/20170308181002710?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDI5NzE3NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
填写上面指定的8081端口(注意:指定的端口可能被占用),如此,接下来便可以通过IDEA进行调试了。
因此针对Ambari Server 的远程调试,并不能同时调试AMS,毕竟它们的端口也不相同。如果想调试AMS,则必须要在AMS的启动参数中加上对应的调试说明。总结下AMS是如何启动的,首先在web界面点击启动,则Ambari Server会向agent发送命令,调用AMS的启动脚本,看一下这个启动脚本。
vi /var/lib/ambari-agent/cache/common-services/AMBARI_METRICS/0.1.0/package/scripts/metrics_collector.py
其中内容如下图所示:
透过其启动脚本中可以看到,发现其最终是执行 /usr/sbin/ambari-metrics-collector 这个脚本start的,那么编辑这个脚本找到java的启动server的命令,添加调试参数:
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8081
添加后即可得到如下图所示:
以上一系列操作后,去Server端重启一下metrics,基本就可调试了,再然后就是在IDE中配置相关的调试参数,如下图添加的远程调试应用所示:
填写上面指定的8081端口(注意:指定的端口可能被占用),如此,接下来便可以通过IDEA进行调试了。
相关文章推荐
- 远程调试ambari-metrics的方法
- 远程调试ambari-metrics的方法
- 远程调试ambari
- 使用IDEA对Ambari Server进行远程调试
- 转 -Linux 自检和 SystemTap (强大的内核调试工具)---包含下载地址
- [RK3288][Android6.0] 调试笔记 --- 修改默认system/bin/下可执行程序权限
- PyCharm远程调试openstack
- eclipse远程调试linux下的weblogic
- Visual Studio Remote Debugger(for 2005/2008) .net远程调试<转>
- visual studio 局域网远程调试web项目
- eclipse远程调试hadoop程序
- hadoop远程调试
- IIS7.0 调试ASP程序时候,程序有错误只提示"An error occurred on the server when processing the URL.Please contact the system administrator",看不到详细的提示的解决办法
- NetBeans远程调试Linux c++ 11项目
- Eclipse+Tomcat远程调试配置
- 看图说话,idea 远程调试 tomcat下项目
- Eclispe远程调试Failed to connect to remote VM Malformed reply from SOCKS server
- windows下使用IDA远程调试linux(ubuntu)下编译的程序
- Eclipse远程调试Tomcat .
- 内核调试神器SystemTap — 简介与使用