Informally I use this sort of hierarchy,
- DEBUG - actual trace values
- INFO - Something just happened - nothing important, just a flag
- WARN - everything's working, but something isn't quite what was expected
- ERROR - something has happened that will need to be fixed, but we can carry on and do other (independent) activities
- FATAL - a serious enough problem that we shouldn't even carry on
I'll generally release with INFO being logged, but only if I know that log files are actually reviewed (and size isn't an issue), otherwise it's WARN.