[
https://issues.apache.org/jira/browse/LOG4J2-808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pranav Pratap updated LOG4J2-808:
---------------------------------
Attachment: log4j2.xml
Beans.xml
MainApp.java
Logging.java
HelloWorld.java
CompanyBusiness.java
Company.java
CompanyBusinessImpl.java
Here is all the files for the code. If needed just removed the spring stuff and
run the simple application
> RegexFilter does not work properly with RollingFileAppenders
> -------------------------------------------------------------
>
> Key: LOG4J2-808
> URL: https://issues.apache.org/jira/browse/LOG4J2-808
> Project: Log4j 2
> Issue Type: Bug
> Components: Filters
> Affects Versions: 2.0-rc1
> Reporter: Pranav Pratap
> Labels: newbie
> Fix For: 2.0-rc1
>
> Attachments: Beans.xml, Company.java, CompanyBusiness.java,
> CompanyBusinessImpl.java, HelloWorld.java, Logging.java, MainApp.java,
> log4j2.xml
>
>
> I am trying to use Regexfilter in RollingFileAppender. For 1st matching
> instance it retreived the logger, but after that I different patttern but
> nothing is logged in the file. Here is what I am using:
> {code}
> Main Class:
> public class MainApp {
> /**
> * @param args
> */
> public static void main(String[] args) {
> // TODO Auto-generated method stub
> final Logger logger = LogManager.getLogger(MainApp.class.getName());
>
> ApplicationContext context = new
> ClassPathXmlApplicationContext("Beans.xml");
>
> HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
> logger.trace("NPF:Trace:Entering Log4j2 Example.");
> logger.debug("NTL:debug Entering Log4j2 Example.");
> obj.getMessage();
> Company comp = new Company();
> comp.setCompName("ANC");
> comp.setEstablish(1889);
>
> CompanyBusiness compBus =
> (CompanyBusiness)context.getBean("compBus");
> compBus.finaceBusiness(comp.getCompName(), comp.getEstablish());
> logger.trace("NTL: Trace: Exiting Log4j2 Example.");
> }
> }
> {code}
> log4j2.xml:
> {code}
> <?xml version="1.0" encoding="UTF-8" ?>
> <Configuration>
> <Appenders>
> <Console name="STDOUT" target="SYSTEM_OUT">
> <PatternLayout pattern="%d{yyyy-MM-dd [%t] HH:mm:ss} %-5p
> %c{1}:%L - %m%X%n" />
> </Console>
> <RollingFile name="RollingFile"
> fileName="C:\logTest\runtime\tla\els3.log" append="true"
>
> filePattern="C:\logTest\runtime\tla\els3-%d{yyyy-MM-dd}-%i.log" >
> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level
> %logger{36} - %m%X%n" />
> <RegexFilter regex=".*business*." onMatch="ACCEPT"
> onMismatch="DENY"/>
> <Policies>
> <SizeBasedTriggeringPolicy size="20 MB" />
> </Policies>
> </RollingFile>
> </Appenders>
> <Loggers>
> <Logger name="com.anc" level="trace"/>
> <Root level="trace">
> <AppenderRef ref="STDOUT" />
> <AppenderRef ref="RollingFile"/>
> </Root>
> </Loggers>
> </Configuration>
> {code}
> When I ran for the first time, in my logfile I got logs having only
> "business" related line. Latter I changed the patter from .*business*. to
> "business", logging did not happen in file nor on the console. Also my
> application terminated without any kind of logging.
> Then I tried to revert back the pattern to .*business*., thereafter no
> logging happened on the log file, but on the console all the log trace is
> printed. When I comment out the Regexfilter after trying for long time, my
> logs was printed in the log file.
> I am not sure if this is a bug of Regexfilter works only for one time. Also
> if we do not pass any patter matching characters, the application stops
> without any log printing either on console or file.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]