【问题标题】:Tsung is started failedTsung 启动失败
【发布时间】:2015-11-12 03:27:12
【问题描述】:

我用过 Ejabberd 版本:15.10 Erlang/OTP 版本: 18 Tsung 版本: 1.6.1

当我在“make install”之后启动 tsung 时,使用:

xxxxx:~/.tsung$ tsung -f jabber_register.xml 开始

例如:jabber_register.xml 是从示例中复制而来的

然后显示:

Starting Tsung 
Log directory is: /home/user/.tsung/log/20151112-1105 
[os_mon] memory supervisor port (memsup): Erlang has closed  
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed

什么原因导致失败?

【问题讨论】:

  • 您应该在日志中找到更多信息。
  • =ERROR REPORT== ** 通用服务器 ts_config_server 终止 ** 最后一条消息是 {'$gen_cast',{newbeams,[localhost]}} ** 当服务器状态 == ... * * 终止原因 == ** {function_clause, [{lists,min,[[]],[{file,"lists.erl"},{line,314}]}, {ts_config_server,handle_cast,2, [{文件,"src/tsung_controller/ts_config_server.erl"},{line,383}]}, {gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,615}]}, {gen_server, handle_msg,5,[{file,"gen_server.erl"},{line,681}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,240}]}]}
  • 然后:=ERROR REPORT==== 12-Nov-2015::15:33:34 === ** 状态机 ts_launcher 终止 ** 最后一个事件是 {launch,[] ,"localhost",now} ** 当状态 == 等待 ** 数据 == {launcher,undefined,[],"ubuntu",undefined,false,0,undefined, undefined,undefined,1,undefined,1,undefined }
  • 然后:** 终止原因 = ** {{function_clause, [{lists,min,[[]],[{file,"lists.erl"},{line,314} ]}, {ts_config_server,handle_cast,2, [{file,"src/tsung_controller/ts_config_server.erl"},{line,383}]}, {gen_server,try_dispatch,4,[{file,"gen_server.erl"} ,{line,615}]}, {gen_server,handle_msg,5,[{file,"gen_server.erl"},{line,681}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl "},{line,240}]}]}, {gen_server,call, [{global,ts_config_server},{get_client_config,"localhost"},60000]}}
  • 以上部分日志信息可用吗?

标签: erlang tsung


【解决方案1】:

我最近在使用riak,也遇到了类似的问题。

这是启动 riak 的完整控制台信息:

config is OK
-config /var/lib/riak/generated.configs/app.2015.12.02.16.53.53.config -args_file /var/lib/riak/generated.configs/vm.2015.12.02.16.53.53.args -vm_args /var/lib/riak/generated.configs/vm.2015.12.02.16.53.53.args
Exec:  /usr/lib64/riak/erts-5.10.3/bin/erlexec -boot /usr/lib64/riak/releases/2.0.4/riak               -config /var/lib/riak/generated.configs/app.2015.12.02.16.53.53.config -args_file /var/lib/riak/generated.configs/vm.2015.12.02.16.53.53.args -vm_args /var/lib/riak/generated.configs/vm.2015.12.02.16.53.53.args -pa /usr/lib64/riak/lib/basho-patches -- console
Root: /usr/lib64/riak
Erlang R16B02_basho6 (erts-5.10.3) [source-bcd8abb] [64-bit] [smp:1:1] [async-threads:64] [kernel-poll:true] [frame-pointer]

[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
{"Kernel pid terminated",application_controller," {application_start_failure,riak_core,{invalid_ring_state_dir,{riak_core_app,start,[normal,[]]}}}"}

Crash dump was written to: /var/log/riak/erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,riak_core,{invalid_ring_state_dir,{riak_core_app,start,[normal,[]]}}})

我在riak官方网站上发现了一些资源,并理解了问题。

Riak 的 Erlang VM 是在支持 SMP 的情况下构建的,如果在非 SMP 系统上启动 Riak,则会记录类似这样的错误。这在仅配置一个 CPU 内核的虚拟化环境中很常见。

我假设你也在 VM 中运行 Tsung。

享受吧!

参考:

【讨论】:

  • 我遇到了同样的错误。我在为一个 CPU 内核配置的虚拟化环境中工作。您是如何克服的?
猜你喜欢
  • 2014-01-29
  • 1970-01-01
  • 2023-01-25
  • 2014-11-17
  • 2019-08-11
  • 2015-08-24
  • 2021-08-26
  • 2013-11-30
相关资源
最近更新 更多