Why is the console output red?

Seriously, why? Everytime I run my program, I see a whole load of red text come up in the console, and my mind immediately thinks "oh no! errors!". Shouldnt black or green or something used for the info messages? It would also make it clearer when scrolling through the tonnes of output to distinguish actual Java error messages from all the JME output…

hey there.


  1. just keep cool, … these aren't all error messages  :wink:
  2. configure the java.util.Logger to somehow write to a different OutputStream (System.out instead of System.err)
  3. set another level for the Logger, like 'WARNING' … which will reduce the output.

    pick your favorite  :smiley:

Yeah, I'm aware that it can be changed… I'm just querying why red is the default in JME. Surely that is the least intuitive colour that could have been picked for information messages.

1 Like

As dhdd say, it's red because output used by logger is System.err, and everything write in System error output is red.

…but then why is System.out not used by default instead…?

1 Like

1.) It's not "red" by jME, but by your IDE's output (most likely Eclipse).

2.) You can fully configure logging however you like if you don't like the defaults that jME uses

3.) jME uses the defaults of the logging system…which I think we are using java.util Logging

4.) You can even configure your IDE to not show it in red.

Can you customize it to the point different messages (ie INFO, WARNING, ERROR) get different colors?

Heh…the java programmer and his technicolor dream logger…

hand said:

...but then why is System.out not used by default instead..?

Simple. Because java.util.logging.ConsoleHandler logs to System.err by default, check the source of your JDK for proof.

yeah, I've been a little irritated by that too (logging to System.err)  :expressionless: But I've been too lazy to change that in my code…

I've tried several times to disable it entirely. I add debugging code into my game, I don't need to see the logger's information. I failed at disabling it, however.

I was looking how the hell to remove the red logging, and found out, so i will post here the solution:

just before new YourGameClass.start(); add: LogManager.getLogManager().reset();

this will turn off ALL red info, EVEN NOT FATAL ERRORS! (as i can see at least)

Is there any other way to remove the "INFO" ?

Sure, the proper way :wink:

Logger.getLogger( "" ).setLevel( Level.OFF );