嘿所有,我剛剛開始使用c3p0進行數據庫連接池。它現在將自己附加到我的log4j輸出中。我如何設置關閉或者至少將關閉級別設置爲c3p0?我嘗試調整屬性文件,但不知道它被正確拾取。如何關閉java c3p0連接池中的日誌記錄?
有關如何最好地關閉它的任何想法?
感謝
UPDATE: 這似乎在log4j.properties工作文件
log4j.logger.com.mchange.v2.c3p0.impl=INFO
log4j.logger.com.mchange=INFO
嘿所有,我剛剛開始使用c3p0進行數據庫連接池。它現在將自己附加到我的log4j輸出中。我如何設置關閉或者至少將關閉級別設置爲c3p0?我嘗試調整屬性文件,但不知道它被正確拾取。如何關閉java c3p0連接池中的日誌記錄?
有關如何最好地關閉它的任何想法?
感謝
UPDATE: 這似乎在log4j.properties工作文件
log4j.logger.com.mchange.v2.c3p0.impl=INFO
log4j.logger.com.mchange=INFO
如果您使用的log4j.xml文件,你可以簡單的定義一個logger在C3PO包:
<logger name="com.mchange.v2.c3p0">
<level value="SEVERE"/>
</logger>
有類似的log4j.properties方法。我認爲這只是:
log4j.logger.com.mchange.v2.c3p0=SEVERE
您可以通過至少在錯誤級別所需的的log4j.xml 日誌添加以下行設置日誌級別。
< category name="com.mchange" additivity="false">
< priority value="ERROR"/>
< appender-ref ref="ASYNC"/>
</ category>
如果你真的要關閉C3P0日誌記錄設置屬性com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL=OFF
在c3p0-Config.properties
,或者你可以直接設置在此代碼作爲系統屬性System.setProperty("com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL",MLevel.OFF);
不適合我。 – 2011-05-16 15:57:10
在屬性文件中添加一個額外的行爲我工作,'com.mchange.v2.log.MLog = com.mchange.v2.log.FallbackMLog' – 2016-08-09 08:12:51
我修復了一行代碼問題:
com.mchange.v2.log.MLog.getLogger().setLevel(MLevel.INFO);
我在我的應用程序中使用log4j。
是的,這適用於我! – surfealokesea 2013-07-11 14:24:23
對於那些不使用配置文件的人,只需在加載連接池之前在代碼中添加以下內容即可。
Properties p = new Properties(System.getProperties());
p.put("com.mchange.v2.log.MLog", "com.mchange.v2.log.FallbackMLog");
p.put("com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL", "OFF"); // Off or any other level
System.setProperties(p);
'import java.util.Properties;' – thatWiseGuy 2017-04-22 19:59:36
我得到的消息類似如下:
Tue Feb 12 13:42:01 EST 2013 INFO: Profiler Event: [FETCH] at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76) duration: 0 ms, connection-id: 67, statement-id: 23, resultset-id: 27
這讓我覺得C3P0是記錄這些消息。實際上,消息從MySQL連接器來,因爲我啓用了剖析通過使用連接字符串是這樣的:
jdbc:mysql://localhost/database?profileSQL=true
刪除?profileSQL=true
,使其停止記錄這些消息。
我在clojure工作,通過科爾馬和我的生活我無法獲得任何屬性文件加載(我是clojure新,所以我責怪自己)。如果你在一條類似的船上,以下可能會幫助你。
(System/setProperties
(doto (java.util.Properties. (System/getProperties))
(.put "com.mchange.v2.log.MLog" "com.mchange.v2.log.FallbackMLog")
(.put "com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL" "OFF")))
這基本上是Philippe Carriere上面答案的clojure端口,非常感謝!
使用Korma我需要在使用這個代碼之前要求它的命名空間。 – boechat107 2015-03-19 20:56:39
是的,抱歉忘了提及。如果Korma被加載,那麼上面的行不會覆蓋已經設置的內容。 – a4word 2015-03-20 21:52:22
我目前正在使用一個log4j.properties文件,任何想法如何在那裏做到這一點? – James 2010-06-04 17:27:28
增加了一個log4j。屬性記錄器示例 – fasseg 2010-06-04 17:30:54
謝謝!我不得不稍微調整它,但log4j.properties文件工作:) – James 2010-06-04 17:39:31