Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.0
-
None
-
None
Description
XMLLayout failed to write to RollingFilerAppender-- Method not implemented!
----------------------------------------------------------------------- 014-07-24 11:40:15,196 DEBUG DefaultRolloverStrategy.purgeAscending executing 4 of 6: FileRenameAction[logs\2014-07\app-2014-07-24-3.log.gz to logs\2014-07\app-2014-07-24-2.log.gz, renameEmptyFiles=true] 2014-07-24 11:40:15,196 DEBUG DefaultRolloverStrategy.purgeAscending executing 3 of 6: FileRenameAction[logs\2014-07\app-2014-07-24-4.log.gz to logs\2014-07\app-2014-07-24-3.log.gz, renameEmptyFiles=true] 2014-07-24 11:40:15,197 DEBUG DefaultRolloverStrategy.purgeAscending executing 2 of 6: FileRenameAction[logs\2014-07\app-2014-07-24-5.log.gz to logs\2014-07\app-2014-07-24-4.log.gz, renameEmptyFiles=true] 2014-07-24 11:40:15,198 DEBUG DefaultRolloverStrategy.purgeAscending executing 1 of 6: FileRenameAction[logs\2014-07\app-2014-07-24-6.log.gz to logs\2014-07\app-2014-07-24-5.log.gz, renameEmptyFiles=true] 2014-07-24 11:40:15,199 DEBUG DefaultRolloverStrategy.purgeAscending executing 0 of 6: FileRenameAction[logs\2014-07\app-2014-07-24-7.log.gz to logs\2014-07\app-2014-07-24-6.log.gz, renameEmptyFiles=true] 2014-07-24 11:40:15,317 ERROR com.fasterxml.jackson.databind.JsonMappingException: Not implemented (through reference chain: org.apache.logging.log4j.core.impl.Log4jLogEvent["Message"]) com.fasterxml.jackson.databind.JsonMappingException: Not implemented (through reference chain: org.apache.logging.log4j.core.impl.Log4jLogEvent["Message"]) at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:232) at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:197) at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:187) at com.fasterxml.jackson.dataformat.xml.ser.XmlBeanSerializerBase.serializeFieldsFiltered(XmlBeanSerializerBase.java:255) at com.fasterxml.jackson.dataformat.xml.ser.XmlBeanSerializer.serialize(XmlBeanSerializer.java:115) at com.fasterxml.jackson.dataformat.xml.ser.XmlSerializerProvider.serializeValue(XmlSerializerProvider.java:92) at com.fasterxml.jackson.databind.ObjectWriter._configAndWriteValue(ObjectWriter.java:800) at com.fasterxml.jackson.databind.ObjectWriter.writeValueAsString(ObjectWriter.java:676) at org.apache.logging.log4j.core.layout.AbstractJacksonLayout.toSerializable(AbstractJacksonLayout.java:53) at org.apache.logging.log4j.core.layout.XmlLayout.toSerializable(XmlLayout.java:187) at org.apache.logging.log4j.core.layout.AbstractJacksonLayout.toSerializable(AbstractJacksonLayout.java:27) at org.apache.logging.log4j.core.layout.AbstractStringLayout.toByteArray(AbstractStringLayout.java:52) at org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.append(AbstractOutputStreamAppender.java:104) at org.apache.logging.log4j.core.appender.RollingFileAppender.append(RollingFileAppender.java:86) at org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:97) at org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:428) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:407) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:410) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:365) at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:103) at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:1336) at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1325) at org.apache.logging.log4j.spi.AbstractLogger.trace(AbstractLogger.java:1570) at log4j2poc.Log4J2Example.main(Log4J2Example.java:15) Caused by: java.lang.UnsupportedOperationException: Not implemented at org.codehaus.stax2.ri.Stax2WriterAdapter.writeRaw(Stax2WriterAdapter.java:380) at org.codehaus.stax2.ri.Stax2WriterAdapter.writeRaw(Stax2WriterAdapter.java:373) at com.fasterxml.jackson.dataformat.xml.util.DefaultXmlPrettyPrinter$Lf2SpacesIndenter.writeIndentation(DefaultXmlPrettyPrinter.java:498) at com.fasterxml.jackson.dataformat.xml.util.DefaultXmlPrettyPrinter.writeLeafElement(DefaultXmlPrettyPrinter.java:271) at com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator.writeString(ToXmlGenerator.java:489) at org.apache.logging.log4j.core.jackson.MessageSerializer.serialize(MessageSerializer.java:42) at org.apache.logging.log4j.core.jackson.MessageSerializer.serialize(MessageSerializer.java:33) at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:505) at com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.serializeAsField(SimpleBeanPropertyFilter.java:177) at com.fasterxml.jackson.dataformat.xml.ser.XmlBeanSerializerBase.serializeFieldsFiltered(XmlBeanSerializerBase.java:244) ... 20 more ------------------------------------------------------------------------
log4j2.xml
----------------------
<?xml version="1.0" encoding="UTF-8"?> <Configuration status="trace"> <properties> <property name="name">app</property> <property name="pattern">%d{yyyy-MM-dd HH:mm:ss.SSS} | %-5.5p | %-10.10t | %-20.20C:%-5.5L | %msg%n</property> </properties> <Appenders> <Console name="CONSOLE" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /> </Console> <RollingFile name="RollingFile" fileName="logs/${name}.log" filePattern="logs/$${date:yyyy-MM}/${name}-%d{yyyy-MM-dd}-%i.log.gz"> <XMLLayout complete="true" /> <Policies> <SizeBasedTriggeringPolicy size="100"/> </Policies> </RollingFile> </Appenders> <Loggers> <Root level="error"> <AppenderRef ref="Console" /> </Root> <logger name="log4j2poc.Log4J2Example" level="TRACE" /> <Root level="ERROR"> <AppenderRef ref="CONSOLE"/> <AppenderRef ref="RollingFile" /> </Root> </Loggers> </Configuration>
-------------------------------
java file:
-----------------------------
package log4j2poc; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class Log4J2Example { static final Logger logger = LogManager.getLogger(Log4J2Example.class.getName()); public static void main(String[] args) { for (int i = 0; i < 10; i++) { logger.trace("Entering Log4j Example " + i + " times"); logger.error("Ohh!Failed!"); logger.trace("Exiting Log4j Example." + i + " times"); } } }
----------------------------------
lib:
--------------------------
log4j-api-2.0
log4j-core-2.0.jar
jackson-core-2.4.1.1.jar
jackson-databind-2.4.1.3.jar
jackson-annotations-2.4.1.jar
jackson-dataformat-xml-2.4.1.jar
jackson-module-jaxb-annotations-2.4.1.jar
stax2-api-3.0.0.jar
---------------------------------