我有一个在 Erlang shell 中运行的 Erlang 程序,显然,我想监视它。
这就是我要的:
例子:
/etc/init.d/foobar start
/etc/init.d/foobar stop
/etc/init.d/foobar restart
Run Code Online (Sandbox Code Playgroud)
我还没有从整个“崩溃时自动重启”的事情开始,被简单的事情卡住了,还是很容易?
我所做的是这样的:
从 /etc/init.d/skeleton 中获取骨架代码并替换了 PATH、DESC、NAME 等...这有效,我可以这样做:
/etc/init.d/foobar start
Run Code Online (Sandbox Code Playgroud)
但是,我无法阻止它......问题是我用“erl”启动了 Erlang shell,这是一个脚本,它执行一些我不理解的奇特事情。它所做的一件事是,它创建了一个非常长且复杂的进程名称。这不仅仅是“erl”,它就像:
/usr/lib/erlang/erts-5.7.4/bin/beam.smp -- -root /usr/lib/erlang -progname erl -- -home /home/xxx -- .... 等等。
有一个更好的方法吗?
操作系统:Ubuntu 11.04