table of contents
run_erl(1) | User Commands | run_erl(1) |
NAME¶
run_erl - Redirect Erlang input and output streams on Unix systems
DESCRIPTION¶
The run_erl program is specific to Unix systems. This program redirects the standard input and standard output streams so that all output can be logged. It also lets the program to_erl connect to the Erlang console, making it possible to monitor and debug an embedded system remotely.
For more information about the use, see the Embedded System User's Guide in System Documentation.
-
run_erl [-daemon] pipe_dir/ log_dir "exec command arg1 arg2 ..."
Arguments:
-daemon
pipe_dir
log_dir
When the logs are full, run_erl deletes and reuses the oldest log file.
"exec command arg1 arg2 ..."
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.
Environment Variables¶
The following environment variables are recognized by run_erl and change the logging behavior. For more information, see the previous section.
RUN_ERL_LOG_ALIVE_MINUTES
RUN_ERL_LOG_ACTIVITY_MINUTES
RUN_ERL_LOG_ALIVE_FORMAT
RUN_ERL_LOG_ALIVE_IN_UTC
RUN_ERL_LOG_GENERATIONS
Note that, as a way to indicate the newest file, run_erl will delete the oldest log file to maintain a "hole" in the file sequences. For example, if log files #1, #2, #4 and #5 exists, that means #2 is the latest and #4 is the oldest. You will therefore at most get one less log file than the value set by RUN_ERL_LOG_GENERATIONS.
RUN_ERL_LOG_MAXSIZE
RUN_ERL_DISABLE_FLOWCNTRL
See Also¶
erts 15.1.3 | Ericsson AB |