I have a Java JAR and a shell script which is using Log4j configured as below.
log4j.rootLogger=ERROR, file
log4j.logger.com.mypackage.pack=INFO
log4j.logger.PERFS=OFF
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.File=C:\TEMP\LogFolder\mylog.log
log4j.appender.file.append=true
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c - %m%n %M:%L
I migrated it to Log4j2 as below
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Appenders>
<File name="A1" fileName="C:\TEMP\LogFolder\mylog.log" >
<PatternLayout pattern="%t %-5p %c{2} - %m%n"/>
</File>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c - %m%n %M:%L"/>
</Console>
</Appenders>
<Loggers>
<Logger name="org.apache.log4j.xml" level="info">
<AppenderRef ref="A1"/>
</Logger>
<Root level="info">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>
</Configuration>
my shell script as below :
"$JAVA_HOME/bin/java" -Dlog4j.debug=true -Xmx256m -Xms64m -Dcom.mypackage.pack.conf=${myprog}/myconf.properties -Dlog4j.configuration=file:/${myprog}/log4jConf.xml -cp ${myprog}/myjar-SNAPSHOT.jar com.mypackage.pack.MyJavaClass ${paramjava} $@ >> $FicTrac 2>&1
Heu=`date +%H:%M:%S`
echo " " >> $FicTrac
echo " " >> $FicTrac
When I execute my shell script, I can't see the log file in this location: C:\LogFolder\mylog.log
how can i solve it ?