Anurag Peshne
Anurag Peshne

Reputation: 1547

how to suppress "PROGRESS REPORT" from Erlang interactive shell

I'm using Erlang/OTP 20 on macOS. Eshell prints multiple lines with heading "PROGRESS REPORT", I want it to not print that.

Inverse greping and similar work around are not desirable.

Here's a sample of statements getting printed:

=PROGRESS REPORT==== 28-Aug-2017::22:39:40 === supervisor: {local,sasl_safe_sup} started: [{pid,<0.59.0>}, {id,alarm_handler}, {mfargs,{alarm_handler,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}]

=PROGRESS REPORT==== 28-Aug-2017::22:39:40 === supervisor: {local,sasl_sup} started: [{pid,<0.58.0>}, {id,sasl_safe_sup}, {mfargs, {supervisor,start_link, [{local,sasl_safe_sup},sasl,safe]}}, {restart_type,permanent}, {shutdown,infinity}, {child_type,supervisor}]

=PROGRESS REPORT==== 28-Aug-2017::22:39:40 === supervisor: {local,sasl_sup} started: [{pid,<0.60.0>}, {id,release_handler}, {mfargs,{release_handler,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}]

Upvotes: 4

Views: 1169

Answers (2)

aronisstav
aronisstav

Reputation: 7914

If you don't want the SASL app to start at all you can use a different boot script:

erl -boot start_clean

This will disable SASL messages completely.

Upvotes: 1

legoscia
legoscia

Reputation: 41528

As described in the documentation for the sasl application, you can suppress progress reports by setting the configuration parameter errlog_type to error.

You can specify it on the command line:

erl -sasl errlog_type error

Or, if you're using a sys.config file, add it there:

{sasl, [{errlog_type, error}]}

Setting it with application:set_env after the node has started won't work: it only takes effect if the value was set before the sasl application started.

Upvotes: 7

Related Questions