远程调试ambari-metrics的方法
2015-12-30 17:53
405 查看
IDE:intellij
在ambari-metrics-collector上找到start的运行脚本,再找到启动ambari-metrics-collector的java命令:
![](https://img-blog.csdn.net/20151230175239805)
发现是执行
添加后如下所示:
![](https://img-blog.csdn.net/20151230175125942)
这样,再在ambari serve 的web ui启动
![](https://img-blog.csdn.net/20151230175022672)
双方就是通过填写的port进行通信,所以要注意之前port必须没有进程在占用。
设置断点,OK,可以调试了。
在ambari-metrics-collector上找到start的运行脚本,再找到启动ambari-metrics-collector的java命令:
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的命令,添加调试参数
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8081:
vi /usr/sbin/ambari-metrics-collector
添加后如下所示:
nohup "${JAVA}" "-cp" "/usr/lib/ambari-metrics-collector/*:${COLLECTOR_CONF_DIR}" "${AMS_COLLECTOR_OPTS}" "-Djava.net.preferIPv4Stack=true" "-Dams.log.dir=${AMS_COLLECTOR_LOG_DIR}" "-Dproc_${DAEMON_NAME}" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8081 "${CLASS}" "$@" > $OUTFILE 2>&1 &
这样,再在ambari serve 的web ui启动
Metrics Collector,然后在IDE中编辑远程调试的configurations,写上对应的host和暴露的port。
双方就是通过填写的port进行通信,所以要注意之前port必须没有进程在占用。
设置断点,OK,可以调试了。
相关文章推荐
- 【LEETCODE】153-Find Minimum in Rotated Sorted Array
- Android开源项目大全 - 工具类
- Java中的几种引用类型:强引用、软引用、弱引用和虚引用
- fmdb小示例(简单做个笔记)
- StackStorm与ChatOps
- 面试干货——年底干货大放送,你准备好了吗?
- 简单Service后台音乐播放
- Mac环境下Android Studio jni开发调用 javah编译不了头文件问题
- 解决recharts不能安装问题
- win764位8G内存下固态硬盘性能低,4k随机读写慢如何解决
- Android studio 自定义打包APK名称
- Spring mvc 原理浅析
- java byte中存大于0x7E的十六进制数
- HBase Log Splitting(日志拆分)
- VFS目录树
- 278. First Bad Version-LeetCode(查找第一个最坏版本)
- 地图json   jquery
- 大数据框架Hadoop和Spark的异同
- Nginx应对Permission denied和File not found的配置
- 模仿360安全卫士项目笔记8