【发布时间】:2017-02-01 10:00:09
【问题描述】:
我有一个应用程序,my_app。它还依赖于其他一些应用程序。
my_app.app:
{application, my_app,
[ {description, "My App"},
{vsn, "0.0.1"},
{registered, []},
{applications, [some_dep1,
some_dep2]},
{mod, {my_app_app, []}},
{env, []}
]}.
如果some_dep1 或some_dep2 启动失败,my_app 也将启动失败。到目前为止,一切顺利。
但是,如果在运行系统的过程中出现问题并且some_dep1 崩溃了(在树上一路取出主管),erlang 最终会杀死some_dep1 应用程序;但是 my_app 没有被杀死,也没有被通知(我可以找到)
有没有办法解决这个问题?理想情况下,我希望它重新启动(就像主管处理重新启动,使用阈值等),或者杀死任何依赖它的应用程序。
我目前的想法是轮询应用程序状态,但这似乎是一个巨大的黑客攻击。
谢谢!
【问题讨论】:
标签: erlang erlang-otp