View Source Error Logging
Error Information From the Runtime System
Error information from the runtime system, that is, information about a process terminating because of an uncaught error exception, is by default written to the terminal (TTY):
=ERROR REPORT==== 9-Dec-2003::13:25:02 ===
Error in process <0.27.0> with exit value: {{badmatch,[1,2,3]},[{m,f,1},{shell,eval_loop,2}]}
The error information is handled by Logger, which is part of the Kernel application.
The exit reasons (such as badarg
) used by the runtime system are described in
Errors and Error Handling.
For information about Logger and its user interface, see the logger
manual
page and the Logging section in the Kernel
User's Guide. The system can be configured so that log events are written to
file or to the TTY, or both. In addition, user-defined applications can send and
format log events using Logger.
Log events from OTP behaviours
The standard behaviours (supervisor
, gen_server
, and so on) send progress
and error information to Logger. Progress reports are by default not logged, but
can be enabled by setting the primary log level to info
, for example by using
the Kernel configuration parameter logger_level
. Supervisor reports, crash
reports and other error and information reports are by default logged through
the log handler which is set up when the Kernel application is started.
Prior to Erlang/OTP 21.0, supervisor, crash, and progress reports were only
logged when the SASL application was running. This behaviour can, for backwards
compatibility, be enabled by setting the Kernel configuration parameter
logger_sasl_compatible
to
true
. For more information, see
SASL Error Logging in the SASL User's Guide.
% erl -kernel logger_level info
Erlang/OTP 21 [erts-10.0] [source-13c50db] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]
=PROGRESS REPORT==== 8-Jun-2018::16:54:19.916404 ===
application: kernel
started_at: nonode@nohost
=PROGRESS REPORT==== 8-Jun-2018::16:54:19.922908 ===
application: stdlib
started_at: nonode@nohost
=PROGRESS REPORT==== 8-Jun-2018::16:54:19.925755 ===
supervisor: {local,kernel_safe_sup}
started: [{pid,<0.74.0>},
{id,disk_log_sup},
{mfargs,{disk_log_sup,start_link,[]}},
{restart_type,permanent},
{shutdown,1000},
{child_type,supervisor}]
=PROGRESS REPORT==== 8-Jun-2018::16:54:19.926056 ===
supervisor: {local,kernel_safe_sup}
started: [{pid,<0.75.0>},
{id,disk_log_server},
{mfargs,{disk_log_server,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]
Eshell V10.0 (abort with ^G)
1>