run_erl [-daemon] pipe_dir/ log_dir "exec command arg1 arg2 ..."
Arguments:
-
-daemon
-
This option is highly recommended. It makes run_erl
run in the background completely detached from any controlling terminal and the command returns to the caller immediately. Without this option, run_erl
must be started using several tricks in the shell to detach it completely from the terminal in use when starting it. The option must be the first argument to run_erl
on the command line.
-
pipe_dir
-
The named pipe, usually /tmp/
. It must be suffixed by a /
(slash), that is, /tmp/epipes/
, not /tmp/epipes
.
-
log_dir
-
The log files, that is:
-
One log file, run_erl.log
, which logs progress and warnings from the run_erl
program itself.
-
Up to five log files at maximum 100 KB each with the content of the standard streams from and to the command. (Both the number of logs and sizes can be changed by environment variables, see section Environment Variables
below.)
When the logs are full, run_erl
deletes and reuses the oldest log file.
-
"exec command arg1 arg2 ..."
-
A space-separated string specifying the program to be executed. The second field is typically a command name such as erl
.
Notes concerning the Log Files
While running, run_erl
sends all output, uninterpreted, to a log file. The file is named erlang.log.N
, where N
is an integer. When the log is "full" (default log size is 100 KB), run_erl
starts to log in file erlang.log.(N+1)
, until N
reaches a certain number (default 5), whereupon N
starts at 1 again and the oldest files start getting overwritten.
If no output comes from the Erlang shell, but the Erlang machine still seems to be alive, an "ALIVE" message is written to the log; it is a time stamp and is written, by default, after 15 minutes of inactivity. Also, if output from Erlang is logged, but more than 5 minutes (default) has passed since last time we got anything from Erlang, a time stamp is written in the log. The "ALIVE" messages look as follows:
===== ALIVE <date-time-string>
The other time stamps look as follows:
===== <date-time-string>
date-time-string
is the date and time the message is written, default in local time (can be changed to UTC if needed). It is formatted with the ANSI-C function strftime
using the format string %a %b %e %T %Z %Y
, which produces messages like ===== ALIVE Thu May 15 10:13:36 MEST 2003
; this can be changed, see the next section.