2013-07-05 68 views
0

我試圖禁用特定的警告,因爲它是令人反感的垃圾郵件我的控制檯和儀表板我的日誌:如何在GAE中禁用Datanucleus警告?

org.datanucleus.store.types.sco.SCOUtils newSCOInstance 
WARNING: Creation of backed wrapper for <package.class.field> unsupported, 
so trying simple wrapper 

我已經嘗試設置log4j的爲ERROR上的所有信息DataNucleus將水平,但無濟於事。 這裏是我設置的log4j:

log4j.appender.A1=org.apache.log4j.ConsoleAppender 
log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] - %m%n 

log4j.category.DataNucleus=ERROR, A1 

這使我想到,這些警告從另一個記錄器來了...任何想法如何禁用它們/他們過濾掉?


編輯1:下面是關於問題領域的一些詳細信息: 更確切地說,它是package.EntityA.field,其中字段是:

@OneToMany(cascade = CascadeType.ALL) 
private Map<String,EntityB> field; 

我看不到爲什麼這將被歸類爲「不完全支持」類型。


編輯2:我切換回的java.util.logging,並嘗試了以下:

handlers = java.util.logging.ConsoleHandler 
.level = WARNING 
Datanucleus.level = WARNING 
org.datanucleus.store.types.sco.SCOUtils.level = OFF 

結果仍然是相同的。我甚至嘗試將Datanucleus.level設置爲OFF,但無論如何都會記錄所有消息(無論是在開發控制檯還是在GAE儀表板日誌中)。 是的,我正確地配置了appengine-web.xml來使用我的日誌配置。

回答

-1

顯然,這種性質的消息是一個問題的標誌,「package.class.field」有一些不完全支持的類型。我沒有看到這可以被認爲是「討厭的」。使用標準的日誌包

DataNucleus將日誌(的log4j如果在CLASSPATH中找到,否則java.util.logging中),所以如果log4j的不存在,則需要配置java.util中。日誌記錄

+0

我編輯我的第一篇文章更多的信息,也許我們可以嘗試修復警告,而不是過濾出來。 至於記錄儀,我已經嘗試了他們兩個,並使用不同的過濾器級別,但我似乎無法控制Datanucleus記錄器。 –

+0

地圖是GAE中的一個新增功能,它以應有的方式實現(沒有「後備存儲」),而原始GAE人員使用後備存儲實施套餐/列表(不提供任何好處)。這會導致使用當前DataNucleus代碼庫的日誌警告,因爲任何數據存儲插件都應該真的只使用後備存儲,或根本不使用。唯一的答案就是修復你的日誌規範,如果這個消息對你來說是一個問題。如上所述,我們只使用標準日誌記錄在這裏http://www.datanucleus.org/products/accessplatform/logging.html – DataNucleus

+0

我切換回java.util.logging(請參閱上面的編輯),但似乎我的配置被忽略。有關如何解決我的日誌規範的任何提示? –