最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于web項目log日志指定輸出文件位置配置方法

 更新時間:2018年04月28日 09:50:58   作者:Smile_Miracle  
下面小編就為大家分享一篇基于web項目log日志指定輸出文件位置配置方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

首先我們定義一個可以在運行時動態(tài)的找出項目的路徑WebAppRootKey,這么做的原因是為了在后面配置log4j輸出文件路徑的時候能隨心配置。

<context-param>
   <param-name>webAppRootKey</param-name>
   <param-value>amt.root</param-value>
</context-param>

然后要定義項目log配置文件的路徑以及l(fā)og4j監(jiān)聽器

<context-param> 
  <param-name>log4jConfigLocation</param-name> 
  <param-value>classpath:conf/log4j.xml</param-value> 
</context-param> 
 <!--定義LOG4J監(jiān)聽器--> 
<listener>
 <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 
</listener> 

這樣web.xml文件的配置完畢,然后就是log配置文件的具體配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
 <!-- 將日志信息輸出到控制臺 -->
 <appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
  <!-- 設(shè)置日志輸出的樣式 -->
  <layout class="org.apache.log4j.PatternLayout">
   <!-- 設(shè)置日志輸出的格式 -->
   <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%-5p] [method:%l]%n%m%n%n" />
  </layout>
  <!--過濾器設(shè)置輸出的級別-->
  <filter class="org.apache.log4j.varia.LevelRangeFilter">
   <!-- 設(shè)置日志輸出的最小級別 -->
   <param name="levelMin" value="INFO" />
   <!-- 設(shè)置日志輸出的最大級別 -->
   <param name="levelMax" value="ERROR" />
   <!-- 設(shè)置日志輸出的xxx,默認是false -->
   <param name="AcceptOnMatch" value="true" />
  </filter>
 </appender>
 <!-- 將日志信息輸出到文件,可以配置多久產(chǎn)生一個新的日志信息文件 -->
 <appender name="rollingFile" class="org.apache.log4j.DailyRollingFileAppender">
  <!-- 設(shè)置日志信息輸出文件全路徑名 -->
  <param name="File" value="${amt.root}/logs/spdbData.log" />
  <!-- 設(shè)置日志每小時回滾一次,即產(chǎn)生一個新的日志文件 -->
  <param name="DatePattern" value="'_'yyyy-MM-dd-HH'.log'" />
  <!-- 設(shè)置日志輸出的樣式 -->
  <layout class="org.apache.log4j.PatternLayout">
   <!-- 設(shè)置日志輸出的格式 -->
   <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%-5p] [method:%l]%n%m%n%n" />
  </layout>
 </appender>
 <!--
  注意:
  1:當additivity="false"時,root中的配置就失靈了,不遵循缺省的繼承機制
  2:logger中的name非常重要,它代表記錄器的包的形式,有一定的包含關(guān)系,試驗表明
  2-1:當定義的logger的name同名時,只有最后的那一個才能正確的打印日志
  2-2:當對應(yīng)的logger含有包含關(guān)系時,比如:name=test.log4j.test8 和 name=test.log4j.test8.UseLog4j,則2-1的情況是一樣的
  2-3:logger的name表示所有的包含在此名的所有記錄器都遵循同樣的配置,name的值中的包含關(guān)系是指記錄器的名稱喲!注意啦!
  3:logger中定義的level和appender中的filter定義的level的區(qū)間取交集
  4:如果appender中的filter定義的 levelMin > levelMax ,則打印不出日志信息
  -->
 <!--指定logger的設(shè)置,additivity指示是否遵循缺省的繼承機制 -->
 <logger name="test.log4j.test8.UseLog4j_" additivity="false">
  <level value ="ERROR"/>
  <appender-ref ref="rollingFile"/>
 </logger>
 <!-- 根logger的設(shè)置-->
 <root>
  <level value ="info"/>
  <appender-ref ref="ConsoleAppender"/>
  <appender-ref ref="rollingFile"/>
 </root>
</log4j:configuration>

項目結(jié)構(gòu)如下:

一切準備就緒之后,項目一旦啟動你就能在你規(guī)定的輸出位置找到你每天或者每個小時的日志文件,log配置文件還可以進行拓展配置每個文件的大小以及文件出錯時的回滾事宜,這里不做贅述。

以上這篇基于web項目log日志指定輸出文件位置配置方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟

    SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟

    我們開發(fā) SpringBoot 項目有時我們會需要打包成 war 包,放入外置的 Tomcat 中進行運行,或者使用工具idea直接啟動,便于開發(fā)調(diào)試,本文給大家分享SpringBoot項目打包成war包并部署在tomcat上運行的操作步驟,感興趣的朋友一起看看吧
    2024-03-03
  • Spring 定時任務(wù)@Scheduled 注解中的 Cron 表達式詳解

    Spring 定時任務(wù)@Scheduled 注解中的 Cron 表達式詳解

    Cron 表達式是一種用于定義定時任務(wù)觸發(fā)時間的字符串表示形式,它由七個字段組成,分別表示秒、分鐘、小時、日期、月份、星期和年份,這篇文章主要介紹了Spring 定時任務(wù)@Scheduled 注解中的 Cron 表達式,需要的朋友可以參考下
    2023-07-07
  • JavaSE反射、枚舉、lambda表達式常用方法舉例

    JavaSE反射、枚舉、lambda表達式常用方法舉例

    這篇文章主要介紹了JavaSE反射、枚舉、lambda表達式常用方法的相關(guān)資料,反射允許在運行時檢查和操作類、方法和屬性,枚舉提供了一種更安全和優(yōu)雅的方式來定義常量,而Lambda表達式則簡化了函數(shù)式接口的實現(xiàn),需要的朋友可以參考下
    2024-12-12
  • Java使用XML與注解方式實現(xiàn)CRUD操作代碼

    Java使用XML與注解方式實現(xiàn)CRUD操作代碼

    MyBatis提供了靈活的配置和使用方式,使得數(shù)據(jù)庫操作更加簡潔和高效,通過本文,我們介紹了如何使用MyBatis框架,通過XML映射文件和注解兩種方式來實現(xiàn)數(shù)據(jù)庫的增刪改查操作,感興趣的朋友跟隨小編一起看看吧
    2024-02-02
  • IntellIJ?IDEA顯示內(nèi)存不足的完美解決方法

    IntellIJ?IDEA顯示內(nèi)存不足的完美解決方法

    IntelliJ?IDEA是一款廣泛使用的Java集成開發(fā)環(huán)境,以其強大的功能和高效的編碼體驗深受開發(fā)者喜愛,然而?在我們導(dǎo)入大項目時,?IntellIJ?Idea?向我們拋出了一個?OutOfMemoryError?內(nèi)存不足,?所以本文給大家介紹了IntellIJ?Idea顯示內(nèi)存不足的完美解決方法
    2025-03-03
  • 一文詳解MVCC的執(zhí)行原理

    一文詳解MVCC的執(zhí)行原理

    MVCC是一種并發(fā)控制機制,用于解決數(shù)據(jù)庫并發(fā)訪問中,數(shù)據(jù)一致性問題,它通過在讀寫操作期間保存多個數(shù)據(jù)版本,以提供并發(fā)事務(wù)間的隔離性,本文將和大家簡單聊聊MVCC的執(zhí)行原理,需要的朋友可以參考下
    2023-12-12
  • GC調(diào)優(yōu)實戰(zhàn)之過早提升Premature?Promotion

    GC調(diào)優(yōu)實戰(zhàn)之過早提升Premature?Promotion

    這篇文章主要為大家介紹了GC調(diào)優(yōu)實戰(zhàn)之過早提升Premature?Promotion
    2022-01-01
  • IDEA中properties與yml文件的轉(zhuǎn)變方式

    IDEA中properties與yml文件的轉(zhuǎn)變方式

    文章介紹了如何在IntelliJ IDEA 2021.1.1中安裝和使用ConvertYAMLandPropertiesFile插件進行YAML和Properties文件之間的轉(zhuǎn)換,安裝步驟包括導(dǎo)航到設(shè)置、安裝插件、找到并安裝插件等,插件支持從Properties文件轉(zhuǎn)換為YAML文件,但轉(zhuǎn)換過程中會丟失注釋
    2024-12-12
  • IDEA中的pom.xml文件無法識別問題及解決

    IDEA中的pom.xml文件無法識別問題及解決

    這篇文章主要介紹了IDEA中的pom.xml文件無法識別問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Java實現(xiàn)順序棧原理解析

    Java實現(xiàn)順序棧原理解析

    這篇文章主要介紹了Java實現(xiàn)順序棧原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11

最新評論

木兰县| 金阳县| 彭泽县| 峨边| 建始县| 五峰| 靖远县| 广南县| 淅川县| 互助| 张掖市| 舒兰市| 巴东县| 巴马| 田阳县| 昭觉县| 淳安县| 辽源市| 枣阳市| 葵青区| 隆安县| 平武县| 吉安县| 呼和浩特市| 金昌市| 盐城市| 巴青县| 阳谷县| 永顺县| 吉木萨尔县| 遂川县| 长沙市| 西乌珠穆沁旗| 东明县| 沙坪坝区| 杨浦区| 昌邑市| 永吉县| 大洼县| 兰西县| 武胜县|