title: log4j suddenly stopped logging and won't restart
body: <p>We have a Java application running on a CentOS server running JRE 6 which does some logging to System.out and to three log files (info, warning and errors). We have used log4j for months now and never had any issues. Today the application crashed for some unknown reason which we will look into, but upon starting the application again, log4j would not log to the files anymore. Instead, it is logging everything to System.out (thus we have every log message duplicated in the console window). At first we thought the log files were locked for some reason and deleted them, but the files were never recreated.</p>
  
  <p>Note: restarting the machine is not currently an option.</p>
  
  <p>This is part of our <code>log4j.properties</code> file (omitted two similar parts which write to the two other log files)</p>
  
  <pre><code># Define the root logger with appender file
  log = logs
  log4j.rootLogger = DEBUG, GENERAL, SUSPICIOUS, DANGEROUS
  
  # Define the GENERAL appender
  log4j.appender.GENERAL=org.apache.log4j.DailyRollingFileAppender
  log4j.appender.GENERAL.Threshold=INFO
  log4j.appender.GENERAL.filter.a=org.apache.log4j.varia.LevelMatchFilter
  log4j.appender.GENERAL.filter.a.LevelToMatch=INFO
  log4j.appender.GENERAL.filter.a.AcceptOnMatch=true
  log4j.appender.GENERAL.filter.b=org.apache.log4j.varia.LevelMatchFilter
  log4j.appender.GENERAL.filter.b.LevelToMatch=WARN
  log4j.appender.GENERAL.filter.b.AcceptOnMatch=false
  log4j.appender.GENERAL.filter.c=org.apache.log4j.varia.LevelMatchFilter
  log4j.appender.GENERAL.filter.c.LevelToMatch=ERROR
  log4j.appender.GENERAL.filter.c.AcceptOnMatch=false
  log4j.appender.GENERAL.File=${log}/Info.log
  </code></pre>