月光代碼園

記錄、分享、交流

导航

在項目中快速部署SLF4J+LOGBACK

想了解SLF4J,LOGBACK是什么?可以访问:http://www.slf4j.org/    http://logback.qos.ch/

本文大部分参考了Cody Burleson《How to setup SLF4J and LOGBack in a web app - fast》

如果你想看原汁原味的英文版,可以访问:https://wiki.base22.com/display/btg/How+to+setup+SLF4J+and+LOGBack+in+a+web+app+-+fast

我的開發環境
  開發工具: springsource-tool-suite-2.9.0
  JDK版本: 1.6.0_29
  tomcat版本:apache-tomcat-7.0.26

本文地址: http://www.cnblogs.com/sunang/p/3433987.html  轉載請注明出處^_^

now go!

step1.引入jar包

Maven代碼:

        <!-- SLF4J&LOGBACK -->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.0.13</version>
        </dependency>

step2.編輯LOGBack配置文件

路徑:

代碼:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 輸出到控制台 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            </Pattern><!-- 日誌格式 -->
        </layout>
    </appender>
    <!-- 輸出到文件 -->
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>MyLog.log</file><!-- 指定日誌文件路徑,本地環境下,根目錄為IDE安裝目錄 -->
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            </Pattern><!-- 日誌格式 -->
        </layout>
    </appender>
    <logger name="www.asuan" level="TRACE" /><!-- 包路徑根據你的開發環境而定 -->
    <!-- 单个logger可绑定多个appender,一个appender可被多个logger所引用 -->
    <root level="debug">
        <!-- 引用之前定義的appender -->
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>
</configuration> 

step3.編輯controller方法,視圖頁面

package www.asuan.com.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class TestController {

    @RequestMapping("/index")
    public String index(Model model) {
        final Logger LOG = LoggerFactory.getLogger(this.getClass());
        LOG.trace("Hello World!");
        LOG.debug("How are you today?");
        LOG.info("I am fine.");
        LOG.warn("I love programming.");
        LOG.error("I am programming.");
        return "index.ftl";
    }
}

頁面代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
運行成功,請查看Console輸出。
</body>
</html>

step4.運行與調試

部署并運行項目,瀏覽器訪問:http://localhost:8080/你的工程名/index.htm

運行結果

頁面:

console輸出結果:

在IDE路徑下(或者是你設定的其他路徑)生成了日誌文件:

日誌文件記錄了controller方法所記錄的日誌:

complete!

 

posted on 2013-12-05 09:46  bangdikka  阅读(730)  评论(0编辑  收藏  举报