11

log4j.rootCategory field in log4j.properties can have 4 different values, namely: DEBUG, WARN, INFO and ERROR.

Can you tell me which is most suitable for which cases?

bluish
  • 26,356
  • 27
  • 122
  • 180
Anand
  • 11,872
  • 10
  • 39
  • 51

1 Answers1

22

From the least severe to the most one:

ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF

If you choose one of them log4j will generate all messages of that type and of more severe type.

Purposes:

  • ALL: generates all messages*
  • DEBUG: debug messages
  • INFO: information that aren't problems
  • WARN: not error but something that could cause a future error
  • ERROR: something went wrong, a problem that the application manages, the application could be stopped or not, usually must be reported
  • FATAL: an error that crashes the application
  • OFF: generates no messages*

(*) these are only keywords; for these categories there are no methods all(msg) and off(msg), like we have error(msg) or debug(msg).

Usually

  • during development I set
    • logging on file to ALL or DEBUG
  • when deployed I set
    • logging on file to INFO or WARN
    • logging via email to ERROR
bluish
  • 26,356
  • 27
  • 122
  • 180