log4j: ERROR Произошла ошибка при преобразовании даты

Я обнаружил это исключение в своих журналах:

log4j: ERROR Ошибка при преобразовании даты. {{ 1}} java.lang.NullPointerException в java.lang.System.arraycopy (собственный метод) в java.lang.AbstractStringBuilder.getChars (AbstractStringBuilder.java:328) в java.lang.StringBuffer.getChars (StringBuffer.java:201) в org.apache.log4j.helpers.ISO8601DateFormat.format (ISO8601DateFormat.java 130) в java.text.DateFormat.format (DateFormat.java:316) в org.apache.log4j.helpers.PatternParser $ DatePatternConverter.convert (PatternParser.java:443) {{ 1}} в org.apache.log4j.helpers.PatternConverter.format (PatternConverter.java:65) в org.apache.log4j.PatternLayout.format (PatternLayout.java:506) в org.apache.log4j.WriterAppender.subAppend (WriterAppender.java:310) на org.apache.log4j.WriterAppender.append (WriterAppender.java:162) на org.apache.log4j. AppenderSkeleton.doAppend (AppenderSkeleton.java:251) в org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders (AppenderAttachableImpl.java:66) в org.apache.log4j.Category.call Category.java:206) на org.apache.log4j.Category. ForceLog (Category.java:391) на org.apache.log4j.Category.i nfo (Category.java:666) в org.obliquid.db.ConnectionManager.releaseConnection (ConnectionManager.java:313) в org.obliquid.db.ConnectionManager.finalize (ConnectionManager.java: 331) в java.lang.ref.Finalizer.invokeFinalizeMethod (собственный метод) в java.lang.ref.Finalizer.runFinalizer (Finalizer.java:83) в java .lang.ref.Finalizer.access $ 100 (Finalizer.java:14) в java.lang.ref.Finalizer $ FinalizerThread.run (Finalizer.java:160)

Я думаю, это могло быть вызвано мой файл log4j.properties, в частности от ConversionPattern.Есть идеи, как исправить?

#Updated at Wed Sep 14 21:57:51 CEST 2011
#Wed Sep 14 21:57:51 CEST 2011
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.rootLogger=INFO, stdout
log4j.appender.R.File=yamweb.log
log4j.appender.R.MaxFileSize=1000KB
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender

log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.logger.yamweb=DEBUG
log4j.logger.org.springframework=INFO
log4j.logger.org.springframework.beans=DEBUG
log4j.logger.com.amazonaws=WARN

ОБНОВЛЕНИЕ : На самом деле, глядя на PatternLayout JavaDoc , я даже не упоминаю формат даты.

d Используется для вывода даты события регистрации. За спецификатором преобразования даты может следовать спецификатор формата даты, заключенный в фигурные скобки. Например,% d {ЧЧ: мм: сс, SSS} или% d {дд МММ гггг ЧЧ: мм: сс, SSS}. Если спецификатор формата даты не указан, предполагается формат ISO8601.

Я добавил явный шаблон преобразования: % d {yyyy-MM-dd HH: mm: ss} [% t]% p% c -% m% n - глядя на log, и я дам вам знать, если это поможет.

ОБНОВЛЕНИЕ 2 : проблемы больше не возникало.

6
задан stivlo 15 December 2011 в 10:56
поделиться