External Solver Output and Log

## 10.7 External Solver Output and Log

The external solver’s output can be controlled using:

lp_set(SolverChannel, +(Stream))
  Send output from SolverChannel to the ECLiPSe I/O stream Stream.
lp_set(SolverChannel, -(Stream))
  Stop sending output from SolverChannel to the ECLiPSe I/O stream Stream.

SolverChannel is one of result_channel, error_channel, warning_channel, log_channel, and Stream is an ECLiPSe stream identifier (e.g. output, or the result of an open/3 operation). By default, error_channel is directed to ECLiPSe’s error stream, warning_channel to warning_output stream, while result_channel and log_channel are suppressed. To see the output on these channels, do for instance

    :- lp_set(result_channel, +output), lp_set(log_channel, +log_output).

Similarly, to create a log file:

    :- open("mylog.log", write, logstream), lp_set(log_channel, +logstream).

and to stop logging:

    :- lp_set(log_channel, -logstream), close(logstream).