<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div name="messageBodySection" style="font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, sans-serif;">Hello all<font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">,</font>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">I have built an Erlang program and created a release using rebar3 release. To run this program, I use the command:</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>./_build/default/rel/program/bin/program start</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">What I would like to do now is have this program start on startup whenever the box boots or whenever the VM crashes. I have to use a RHEL 7 box for this, so I am using systemd. I created a service below:</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"></font>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>[Unit]</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Description=program                                                          </b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>After=network.target</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b><br /></b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>[Service]</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Type=simple                                                                      </b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>User=root</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>ExecStart=/home/root/repos/program/_build/default/rel/program/bin/program start         </b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Restart=on-abort</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b><br /></b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>[Install]                                                                        <br /></b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>WantedBy=multi-user.target  </b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">This doesn’t work however - I get the following output:</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Dec 18 17:43:59 localhost.localdomain systemd[1]: Started program.<br /></b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Dec 18 17:43:59 localhost.localdomain systemd[1]: Starting program… </b><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">(It is odd that it says “started program” followed by “starting program”…)</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">Now here is the interesting part - if I switch out “start” with “console” , I get good output - I get the successful start message. But then a crash… :</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"></font>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Dec 18 17:45:40 localhost.localdomain program[14167]: 17:45:40.429 [info] Application program started on node 'program@192.168.1.101'</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Dec 18 17:45:40 localhost.localdomain program[14167]: Eshell V8.2.2  (abort with ^G)</b></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><b>Dec 18 17:45:40 localhost.localdomain program 14167]: (program@192.168.1.101)1> *** Terminating erlang ('program@192.168.1.101’)</b></font></div>
</div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">This crash is expected though, because I tried to start it in console but it was a background process. My point though is that it starts up, but for some unknown reason it is exiting. On top of that, all of the log files in _build/default/rel/program/log are empty, so I’m not getting any valuable info on why it isn’t starting.</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">And to clarify, I have copy/pasted the ExecStart command from the file to the command line and it works when it is run from the command line, so this isn’t a path issue.</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">Does anyone have any idea as to what I am doing wrong?</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif">Thank you in advance.</font></div>
<div><font color="#333333" face="-apple-system, BlinkMacSystemFont, sans-serif"><br /></font></div>
</div>
</div>
</body>
</html>