Java 未创建log4j log.out文件
我想为我的Java 未创建log4j log.out文件,java,log4j,Java,Log4j,我想为我的Java应用程序配置log4j 我的Java应用程序部署在安装在Ubuntu 14.04.3 LTS上的Tomcat8上 为此,我遵循以下URL: http://www.tutorialspoint.com/log4j/log4j_sample_program.htm 我为此执行的配置步骤: Extract `log4j-1.2.17.tar.gz` file into `/usr/local/` export CLASSPATH=$CLASSPATH:/usr/local/apa
Java应用程序配置log4j
我的Java应用程序部署在安装在Ubuntu 14.04.3 LTS上的Tomcat8上
为此,我遵循以下URL:
http://www.tutorialspoint.com/log4j/log4j_sample_program.htm
我为此执行的配置步骤:
Extract `log4j-1.2.17.tar.gz` file into `/usr/local/`
export CLASSPATH=$CLASSPATH:/usr/local/apache-log4j-1.2.17/log4j-1.2.17.jar
export PATH=$PATH:/usr/local/apache-log4j-1.2.17/
Manually created log4j.properties file into /usr/local/apache-log4j-1.2.17/
Save log4j.properties file with the below content
# Define the root logger with appender file
log = /home/mobile/log
log4j.rootLogger = DEBUG, FILE
# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=${log}/log.out
# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
我的Java代码:
import org.apache.log4j.Logger;
public class log4jExample
{
public getName()
{
String xyz = "asdasd as asd";
Logger log = Logger.getLogger(log4jExample.class.getName());
System.out.println("INSIDE getName");
log.debug("DEBUG>>>>>>>>>>>>"+xyz);
log.info("INFO>>>>>>>>>>>>"+xyz);
}
}
问题是,当我在Tomcat8上部署这个应用程序并运行它时,catalina.out
showINSIDE-getName
但是对于log4j
没有在/home/mobile/log/
上创建文件,请确保您的应用程序对/home/mobile/log/@AGdev目录有写权限。我如何检查这个?首先检查哪个用户正在运行tomcat.i.e(登录id),然后使用ls-ltr/home/mobile检查权限/log@AGdev当我运行“ls-ltr/home/mobile/log/”时,它会显示“total 0”@AGdev;当我运行“echo$PATH”时,它会显示“/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/usr/games:/usr/local/apache-log4j-1.2.17/”所以这应该是问题吗?