Proposition for log level usage:
- FATAL - Extremely serious error, the program can't continue execution
- ERROR - A serious error occured, but program keeps running
- WARN - Something weird was detected, but it does not harm further program execution
- INFO - Important events (e.g. new connection established)
- DEBUG - Intermediate results that could be useful while debugging
- TRACE - Parameter values, method start etc.
TRACE and FATAL are probably rarely used, while DEBUG and INFO are rather common. In releases we should probably default to log level 4, while we could ask users who are having problems to set it to 5 or 6.
It would probably be a good idea to code a log tab into the chat dialog or a log area in the debug window. This could have a different level by default, for example level 3 for releases. This way users would be better aware of the slightly more serious problems occuring while they play.