1. 程式人生 > >log4j指定包或類打到單獨的日誌檔案的配置

log4j指定包或類打到單獨的日誌檔案的配置

    根據日誌定位問題的時候,如果所有的日誌都打到一個日誌檔案裡,查問題就很不直觀了。

    一、指定某個路徑的包或類打到單獨的日誌檔案

    log4j.xml 配置如下:

	<appender name="poll" class="org.apache.log4j.DailyRollingFileAppender">
		<param name="encoding" value="UTF-8" />
		<param name="File" value="/export/Logs/im.**.com/poll.log" />
		<param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %t %5p [%c:%L] - %m%n" />
		</layout>
	</appender>

        <category name="com.**.im.tracker.web.servlet.DomainListServlet" additivity="false">
		<level value="ERROR" />
		<appender-ref ref="poll" />
		<appender-ref ref="CONSOLE" />
	</category>

    appender定義了一個日誌檔案輸出源。category的name欄位指定了要單獨大日誌的包或類的路徑,子欄位的appender-ref則定義了這個包用哪幾個日誌檔案輸出源。

    二、指定某個特殊功能的日誌打到獨立的日誌檔案

     有時候,一個類很大,日誌也很多,但是這個類裡的某行或某幾行日誌特別重要,需要單獨打到一個日誌檔案裡觀察。這個時候需要用另外一種配置。    首先需要在java程式碼裡單獨配置一個logger
private static final Logger LINKLOGGER = LoggerFactory.getLogger("LinkLogger");
    然後打日誌的之後用這個logger打日誌。
    對應的log4j配置檔案配置如下:
    <appender name="link" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="File" value="/export/Logs/im.**.com/link.log" />
        <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />
        <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %t %5p [%c:%L] - %m%n" />
        </layout>
    </appender>
 

    <logger name="LinkLogger" additivity="false">
        <level value="info" />
        <appender-ref ref="link" />
    </logger>
      這樣配置好後,用LINKLOGGER打的日誌就會打到link.log裡了。


相關推薦

log4j指定單獨日誌檔案配置

    根據日誌定位問題的時候,如果所有的日誌都打到一個日誌檔案裡,查問題就很不直觀了。    一、指定某個路徑的包或類打到單獨的日誌檔案    log4j.xml 配置如下: <appender

Log4j深入研究 Log4j為單個寫單個日誌檔案 Log4j檔案

 log4j配置檔案: log4j.rootLogger=DEBUG,CONSOLE,FILE #優先順序從高到低分別是ERROR、WARN、INFO、DEBUG #這裡推薦選擇二種,分別為ERROR:僅僅只記錄錯誤名和位置;DEBUG:記錄所有錯誤的詳細資訊 #在生產配

nginx不記錄指定文件型的日誌

star png 文件 nginx配置 forward /tmp gin mat conf 1、指定記錄文件日誌記錄的內容。 vim /usr/local/nginx/conf/nginx.conf如下部分: log_format dd ‘$remote_addr

log4j不列印sql,不輸出日誌檔案指定目錄

#log4j.rootLogger=CONSOLE,info,error,DEBUG log4j.rootLogger=infoA,errorA,CONSOLE,DEBUGA //注意這裡不要用INFO,DEBUG等 改個名字 log4j.appender.CONSOLE=org.apach

Spring Cloud 指定、方法名實現AOP切片登陸記錄統計功能

1. 所需 jar 包: <!--tools--> <properties> <commons.collections4.version>4.1</commons.collections4.version> <commons

Tomcat專案執行時載入jar檔案的順序

tomcat的載入執行機制與Java虛擬機器的父類委託機制稍有不同。 下面來做詳細敘述: 1、首先載入Tomcat_HOME/lib目錄下的jar包 2、然後載入Tomcat_HOME/webapps/專案名/WEB-INF/lib的jar包 3、最後載

Eclipse中從svn檢出maven專案,報pom.xml錯誤,相關不能匯入的問題

在使用eclipse的時候,我們用svn外掛檢出專案,常常有一些問題,莫名其妙的出現,莫名其妙的又會變好了,這讓強迫症發作的我來說是個噩夢,之前看到網上的n多種解決方法,然而貌似對於我並不實用。今天自己嘗試了一種方法貌似,變好了。 第一步:當你遇到問題,自己不明其裡的時候,

Spring Cloud啟動應用時指定IP忽略某張網卡配置

cond 網絡配置 生態 onf docs col mas utils efault 說明:分布式應用部署到服務上,由於服務器可能存在多張網卡,造成IP地址不準的問題。 解決方法: 1、直接添加忽略某張網卡的配置: spring.cloud.inetutils.i

Java SE程式打包成jarexe程式時,讀取配置檔案的處理

該Java SE程式打包成JAR包或exe程式的時候,配置檔案不能放在裡面;因為會時不時的修改配置檔案裡面的內容,所以必須放在外邊,以備隨時更改! Main main = new Main();

springboot專案搭建0041-日誌檔案配置-log4j

專案地址:https://github.com/wenrongyao/springboot-demo.git 摘要:專案日誌檔案配置,springboot專案配置log4j日誌框架 1、排除預設的logback包依賴,加入log4j日誌依賴 log4j日誌包的版本資訊 <p

log4j根據業務分出多個日誌檔案

很多時候,我們不同的業務日誌要列印到不同的日誌檔案,比如我們一種日誌是 資料庫同步到資料倉庫日誌(db2dw) ,一種日誌是 資料清洗日誌(washdata) ,要分成2個不同日誌檔案進行記錄看,具體的做法如下: 1 在類裡面確定好不同業務對應的日誌

Linux之C語言中如何丟擲異常將異常寫入日誌檔案

Linux中用C語言寫系統日誌__________________________________________________________________________________________________Author:冀博Time :2011/11/24

mybatis-generator資料庫註釋實體生成以及generatorConfig檔案配置

專案裡新建表時model,mapper以及mapper.xml基本都是用Mybatis Generator(以下簡稱為MBG)自動生成的,但是MBG自動生成的model的註釋實在有點非人類,至少中國人是完全接受不了的,在配置中禁用掉註釋吧,倒是簡單了,可是生成的model類光禿禿的,啥都沒有,欄位方法沒有註釋

SpringBoot之yml檔案配置日誌檔案配置

Application.yml配置: app: instance: code: portal profile: dev rest: # profile: dev profiles: datacenter: de

Logback日誌檔案配置模板

<?xml version="1.0" encoding="UTF-8" ?> <configuration debug="true" scan="true" scanPeriod="30 secondes"> <prop

log4j2 自動刪除過期日誌檔案配置及實現原理解析

  日誌檔案自動刪除功能必不可少,當然你可以讓運維去做這事,只是這不地道。而日誌元件是一個必備元件,讓其多做一件刪除的工作,無可厚非。本文就來探討下 log4j 的日誌檔案自動刪除實現吧。 0. 自動刪除配置參考樣例: (log4j2.xml) <?xml version="1.0" enc

載入指定名下的全部類依據的annotation進行過濾的工具

指定 -a art 依據 包名 data scrip 進行 ack 載入指定包名下的全部類或依據類的annotation進行過濾的工具類

如何裸寫利用Spring掃描出指定下的所有

在很多Java框架中都有元件掃描功能,即給出一個註解,框架能夠把所有標註了此註解的類找出來。這種操作的本質是給出一個名包,能獲取到此包下的所有類名,然後再通過反射判斷是否加了指定的註解。無論是什麼框架,包括Spring, 完成這個功能底層都是用的ClassLoa

Log4j單獨生成單獨日誌檔案

最近公司專案需要去網路上下載圖片,根據不同情形將日誌儲存到不同的檔案中。具體說就是普通的日誌資訊輸出到一個單獨的檔案,圖片下載失敗的日誌單獨儲存到另一個檔案中,以便後期回溯。 log4j配置檔案

Log4j指定日誌記錄到指定檔案

LOG4J 配置檔案一段 log4j.rootLogger=ERROR,allerror,heartbeat log4j.additivity.com.cvicse.inforguard=false log4j.appender.allerror=org.apache.