[erlang-questions] HEART

Dominic Letz dominicletz@REDACTED
Thu Jun 11 03:04:54 CEST 2015


Even later reply. To chime in on Danills comment. It is a linux specific
problem that the kernel OOM killer will go ahead and kill the whole process
tree meaning Erlang and Heart at the same time because heart is a child
process of erl.

For this reason I would strongly advise against using heart on linux based
systems at this time. One option is using supervisord which is very easy to
configure and use with erlang - and does not have the above problem.

Here is a complete sample configuration with '...' as placeholders for your
deployment:

/etc/supervisord/conf.d/erl.conf:
[program:erl]
autorestart=true
command=/usr/bin/erl -noinput -noshell +K true -boot ... -config ...
directory=...
environment=HOME=...
redirect_stderr=true
user=...


Best


On Sun, May 24, 2015 at 4:33 AM, Matthias Lang <matthias@REDACTED>
wrote:

> On 13. May 2015, Michael L Martin wrote:
>
> > But who watches the watchdog?
>
> Late reply. One approach is to have a hardware watchdog.
>
> On the embedded system I work on, Erlang kicks a custom 'heart'
> program.  The heart program kicks the hardware watchdog.
>
> Hangs in Erlang code are dealt with by timeouts and supervisors.
> Hangs in the VM are dealt with by 'heart'.
> Hangs in 'heart' are dealt with by the hardware watchdog.
>
> This approach is sufficient to make hangs an insignificant contributor
> to downtime in a five-nines environment (signalling in the SS7
> network), in my experience.
>
> Matt
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://erlang.org/mailman/listinfo/erlang-questions
>



-- 
Dominic Letz
Director of R&D
Exosite <http://exosite.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20150611/598b0012/attachment.htm>


More information about the erlang-questions mailing list