[ https://issues.apache.org/jira/browse/LOG4J2-1502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sumit Singhal updated LOG4J2-1502: ---------------------------------- Description: I am using CsvParameterLayout to generate a CSV file out of log4j2. One of the column is a JSON string. Following is the logger method I am using: {code:java} logger.info("log:{}",json); {code} Following is the JSON string: {"id":10,"name":"sumit"} And following is the string which is getting printed in CSV output file: NUL{"id":10,"name":"sumit"}NUL The NUL character is the \x00 character. When I open the file in notepad++, then only this character appears. In notepad it shows as space. This poses a problem in CSV processing module. If there is some alphabet before {, then the output in CSV is fine. It seems as if log4j is escaping '{' with a NUL character. It is happening if the string starts with {, (, [, ' or ". Following are the dependencies: {code:xml} <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.6.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>2.6.2</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.4</version> </dependency> {code} was: I am using CsvParameterLayout to generate a CSV file out of log4j2. One of the column is a JSON string. Following is the logger method I am using: {code:java} logger.info("log:{}",json); {code} Following is the JSON string: {"id":10,"name":"sumit"} And following is the string which is getting printed in CSV output file: NUL{"id":10,"name":"sumit"}NUL The NUL character is the \x00 character. When I open the file in notepad++, then only this character appears. In notepad it shows as space. This poses a problem in CSV processing module. If there is some alphabet before {, then the output in CSV is fine. It seems as if log4j is escaping '{' with a NUL character. It is happening if the string starts with {, (, [, ' or ". > CsvParameterLayout is inserting NUL character if data starts with {, (, [ or " > ------------------------------------------------------------------------------ > > Key: LOG4J2-1502 > URL: https://issues.apache.org/jira/browse/LOG4J2-1502 > Project: Log4j 2 > Issue Type: Bug > Components: Layouts > Affects Versions: 2.6.2 > Reporter: Sumit Singhal > > I am using CsvParameterLayout to generate a CSV file out of log4j2. One of > the column is a JSON string. Following is the logger method I am using: > {code:java} > logger.info("log:{}",json); > {code} > Following is the JSON string: > {"id":10,"name":"sumit"} > And following is the string which is getting printed in CSV output file: > NUL{"id":10,"name":"sumit"}NUL > The NUL character is the \x00 character. When I open the file in notepad++, > then only this character appears. In notepad it shows as space. This poses a > problem in CSV processing module. > If there is some alphabet before {, then the output in CSV is fine. It seems > as if log4j is escaping '{' with a NUL character. It is happening if the > string starts with {, (, [, ' or ". > Following are the dependencies: > {code:xml} > <dependency> > <groupId>org.apache.logging.log4j</groupId> > <artifactId>log4j-core</artifactId> > <version>2.6.2</version> > </dependency> > <dependency> > <groupId>org.apache.logging.log4j</groupId> > <artifactId>log4j-slf4j-impl</artifactId> > <version>2.6.2</version> > </dependency> > <dependency> > <groupId>org.apache.commons</groupId> > <artifactId>commons-csv</artifactId> > <version>1.4</version> > </dependency> > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org