关于Java:Tomcat和SLF4J-不将日志写入文件

Tomcat and SLF4J - not writing log to file

我正在尝试使用slf4j-log4j12为我的应用程序实现日志记录跟踪。我已经配置了所有内容,并且在独立模式下进行测试时工作正常。现在,我已将其部署在tomcat中,它停止工作了!它只是在控制台中打印日志(甚至是我用slf4j创建的日志),但不在文件中打印!

这是我的log4j.xml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
   
        <param name="Threshold" value="INFO" />
        <param name="File" value="assp.log" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d  %-5p  [%c{1}] %m %n" />
        </layout>
    </appender>

   
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %-5p %c{1} - %m%n" />
        </layout>
    </appender>

    <root>
        <priority value="debug" />
       
       
    </root>
</log4j:configuration>

我的依赖项:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<dependency>
            <groupId>org.slf4j</groupId>
            jul-to-slf4j</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            jcl-over-slf4j</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            slf4j-api</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            slf4j-log4j12</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            log4j</artifactId>
            <version>${log4j.version}</version>
        </dependency>

这是我的测试班

1
2
3
4
5
6
private Logger LOGGER = LoggerFactory.getLogger(Test.class);
@RequestMapping("*")
public String root(RedirectAttributes redirectAttributes){
    LOGGER.info("{} - entering root page. Redirecting to index.", System.currentTimeMillis());
    return"redirect:/index";
}

输出(在控制台中):

1
INFO 1404999952210 - entering root page. Redirecting to index.

有人可以帮忙吗?
谢谢


过一会儿我解决了这个问题。我在这里遵循apache文档-使用LOG4J

希望这对遇到相同问题的人有所帮助。