【问题标题】:`ejabberdctl start` results in "kernel pid terminated" error -- what do I do?`ejabberdctl start` 导致“内核 pid 终止”错误——我该怎么办?
【发布时间】:2013-09-09 11:25:55
【问题描述】:

我用谷歌搜索了三个小时,但无济于事。

我有一个没有使用 apt 安装的 ejabberd 安装。它是从源代码安装的,其中没有名为 ejabberd 的程序。启动和停止,一切都通过 ejabberdctl。

它完美地运行了一个月,突然有一天它因臭名昭著而停止了

kernel pid terminated error

任何时候都可以

sudo ejabberdctl start --node ejabberd@MasterService

生成了一个 erl_crash 文件,当我尝试时

ejabberdctl

我明白了

Failed to connect to RPC at node ejabberd@MasterService

现在我尝试了什么

  1. 尝试杀死 ejabberd、beam、epmd 的所有正在运行的进程并重新开始 - 无效
  2. 检查了 /etc/hosts 和主机名,一切正常。主机名在带有 IP 的 hosts 文件中提供
  3. 检查 ejabberdctl.conf 文件以确保主机名确实正确且节点名正确
  4. 正在创建已检查的 .erlange.cookie 文件,其中包含内容

在所有网络中,搜索都以一种或另一种方式引导我找到上述任何一种。

我无处可去,也不知道去哪里找。任何帮助将非常感激。

【问题讨论】:

  • 您确定没有在标准(或配置)端口(5222、5269、5223 等)上监听吗?我的意思是,虽然没有运行 ejabberd 的实例。

标签: erlang ejabberd crash-dumps


【解决方案1】:

您必须分析故障转储以尝试猜测它失败的原因。

为了执行这项任务,Erlang 有一个特殊的 web 工具(称为,呃,webtool),可以使用一个特殊的应用程序 - 崩溃转储查看器 - 加载转储并检查 Erlang 进程的堆栈跟踪坠机时间。

你必须

  1. 安装必要的包:

    # apt-get install erlang-webtool erlang-observer
    
  2. 启动一个 Erlang 解释器:

    $ erl
    

    (那里采取了进一步的行动。)

  3. 运行网络工具。在最简单的情况下,它会监听本地主机:

    webtool:start().
    

    (注意句号。)它将打印回一个 URL,以便在您的浏览器中导航以访问正在运行的工具。

    如果这种情况发生在服务器上,并且您希望 webtool 监听某个非本地主机接口,那么调用 encantation 会比较棘手:

    webtool:start(standard_path, [{port, 8888}, {bind_address, {0, 0, 0, 0}}, {server_name, "server.example.com"}]).
    

    {0, 0, 0, 0} IP 规范将使它在任何地方都可以监听,您不妨指定一些更合理的八位位组,例如{192, 168, 0, 1}server_name 子句可能使用任意名称——这将打印在生成的 URL 中,即服务器的主机名。

  4. 现在使用浏览器连接到该工具,导航到“开始工具”菜单条目,启动故障转储查看器,并在工具的顶部菜单中显示指向它的链接。继续并找到加载故障转储的链接。

  5. 在加载故障转储后,尝试使用工具界面查看活动 Erlang 进程的堆栈跟踪。其中至少有一个应该包含一些可疑的内容,其中应该包含一条错误消息——这就是你要细化你的问题(或在ejabberd mailing list 询问另一个)。

  6. 要退出该工具,请运行

    webtool:stop().
    

    在运行的 Erlang 解释器中。然后通过运行退出它

    q().
    

    稍等片刻或按Ctrl-g,然后输入字母q,然后按回车键。

相关链接为:crash dump viewer manualwebtool manual

【讨论】:

    猜你喜欢
    • 2016-02-18
    • 2015-08-22
    • 2021-08-06
    • 2012-04-17
    • 1970-01-01
    • 2020-07-02
    • 2020-02-19
    • 2020-12-24
    • 2012-04-14
    相关资源
    最近更新 更多