zoukankan      html  css  js  c++  java
  • 在項目中快速部署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!

  • 相关阅读:
    C 获取编译日期函数
    C# HttpWebRequest 使用,一个Http分析Demo
    C# 字节序调整
    char/wchar_t之间的互转MultiByteToWideChar和WideCharToMultiByte的用法
    前导声明代替头文件依赖和交叉包含
    MFC network address control使用
    [收藏]POSIX标准
    带引用计数的智能指针
    C# string byte[] 转换
    DIV随鼠标滚动
  • 原文地址:https://www.cnblogs.com/sunang/p/3433987.html
Copyright © 2011-2022 走看看