Let's assume that you've programmed a client application that always should be connected to the server. Disconnection from server prevents the application from functioning but we cannot say that it is a FATAL situation because server will get up and run soon possibly. We'll have to say it is in a FATAL situation if client cannot proceed the reconnect process by some reason.
So I think ERROR and FATAL level are both required. WARN, ERROR and FATAL both represents exceptional situation, but three has some different meaning:
* WARN - exceptional situation, but safely ignorable because the application can recover itself.
* ERROR - exceptional situation that requires user's attention because of temporary malfunction of the application. The application can recover from this situation automatically if other environment changes.
* FATAL - exceptional situation that we really didn't expected or that makes the application stop permanently.
2005/7/5, Ceki Gülcü <firstname.lastname@example.org>:
Trustin Lee wrote:
> SLF4J doesn't have "FATAL" level AFAIK. Would this be OK?
This question is answered in the SLF4J FAQ  quoted below:
Why doesn't the org.slf4j.Logger interface have methods for the FATAL
From the stand point of a logging system, the distinction between a
fatal error and an error is usually not very useful. Most programmers
exit the application when a fatal error is encountered. However, a
logging library cannot (and should not) decide on its own to terminate
an application. The initiative to exit the application must be left to
Thus, the most the FATAL level can do is to highlight a given error as
the cause for application to crash. However, errors are by definition
exceptional events that merit attention. If a given situation causes
errors to be logged, the causes should be attended to as soon as
possible. However, if the "error" is actually a normal situation which
cannot be prevented but merits being aware of, then it should be
marked as WARN, not ERROR.
Assuming the ERROR level designates exceptional situations meriting
close attention, we are inclined to believe that the FATAL level is
Does this answer your question?
The complete log4j manual:
what we call human nature is actually human habit