erlang 远程调试

远程debug调试

官方:

  /lib/debugger-3.2.6/doc/html/debugger_chapter.html#id58850

  看了此文档,也没有找到怎么使用。不知道没提供还是我没找到。

1.11 Debugging Remote Nodes

  By using debugger:start/1, it can be specified if Debugger should be started in local or global mode.

  debugger:start(local | global)

  If no argument is provided, Debugger is started in global mode.

  ------------------下面是另一个方案-----------------------------------------------------

  来自

  李存刚的测试

  第1步:配置从本地机器ssh免登录的远程节点所在服务器

  第2步:在远程节点上配置kernel属性,或者直接写一个config文件:[ {kernel, [{start_boot_server, true} , {boot_server_slaves, [{192,168,0,107}]}]} ].说明:通过erlang_boot_server:start/1启动boot server,通过erl_boot_server:add_slave/1加载一个slave,也就是允许连接本机从而加载代码的client,{192,168,0,107}是我测试客户端的IP地址

  第3步:在远程节点上启动boot_server 例如:erl -name a@192.168.0.132 -setcookie abc -config bserver #

  第4步: 启动本地调试节点 erl -name b@192.168.0.107 -setcookie abc -loader inet -hosts "192.168.0.132" -id a第5步: 在本地调试节点b@192.168.0.107 启动 debugger > debugger:start(). 然后在打开的界面 通过sftp选择文件,然后在本地节点 运行应用调试即可。

  看来他的测试,使我想起了

Erlang集群节点集合的启动注意的问题

  翻出来一个看差不多。节点顺利启动成功。

  远程: erl -kernel start_boot_server true boot_server_slaves '[{192,168,1,8}]' -name master@192.168.1.11 -setcookie abc

  本地: erl -name b@192.168.1.8 -setcookie abc -loader inet -hosts "192.168.1.11" -id master@192.168.1.11

  在本地打开 打开im().看到能装载文件,兴奋了一会。

  这是发现在远程运行程序,本地debug断点不起作用。需要在本地运行才可以。

  试了好几次都不可以。

  疑问:加载过来的代码在什么地方存储的? 》》》加载到虚拟机  

  erlc +debug_info foo.erl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值