Regression - LogBox ConsoleAppender no longer writes to System.out stream in 5.3.5

Description

As of 5.3.5, The LogBox/ColdBox ConsoleAppender has stopped working for debug/info/warn messages, though it still works for error/fatal messages. The debug/info/warn messages use the System.out print buffer

The error/fatal messages use the System.err print buffer.

For some reason, systemOutput() still works, but we can't use that for Adobe CF compatibility.

Environment

None

Activity

Show:

Brad Wood 9 April 2020 at 22:07

Thanks for helping address this.

For anyone on Lucee 5.3.5, you can merge these CFConfig settings into your .cfconfig.json file to get the old behavior back:

Or set them manually like so:

Michael Offner 9 April 2020 at 21:03

best use SystemOutput if you need to write to console, System.out|err not necessary writes to the console anyway, as you can see in the doc

https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#err

Michael Offner 9 April 2020 at 20:59

changed default target to system

Brad Wood 9 April 2020 at 18:37

you cannot expect system.out to end in the console.


But that's not really an ok change. java.lang.System.out.println should write to the console output of a server. That's the standard for every Java app that's ever existed. Why does this change need to be made? I understand if you want to redirect Lucee's logging elsewhere, lucee can put its logs where it wants (though I would point out that console logging IS the standard for docker/container deployments, so I'd stick with it) but for my application code, a java-based app should be able to write to the console using the system.out print buffer. That should not have changed.

As it stands LogBox's ConsoleAppender is now completely broken on Lucee 5.3.5 Also, let me remind you that messages sent to the out buffer are not sent to a log file at all. From what I can tell, they go nowhere! (I have checked all the log files) That isn't really an acceptable

use the function system output instead.

I addressed why that is not a valid workaround in the ticket description.

michael 9 April 2020 at 17:53

this is expected see

before that setting did not work as it should, now it does. you cannot expect system.out to end in the console. use the function system output instead.

Fixed

Details

Assignee

Reporter

Priority

Labels

Fix versions

New Issue warning screen

Before you create a new Issue, please post to the mailing list first https://dev.lucee.org

Once the issue has been verified, one of the Lucee team will ask you to file an issue

Sprint

Affects versions

Created 6 April 2020 at 23:24
Updated 8 May 2020 at 18:34
Resolved 14 April 2020 at 08:21