журналы c3p0 с Play Framework 1?


Есть ли способ получить журналы отладки c3p0, показанные с Play framework 1.2.5?

Кто-нибудь спросил об этом на список воспроизведения электронной почты; по крайней мере, добавив следующие настройки log4j.свойства не работает:

log4j.logger.com.mchange.v2.c3p0=DEBUG
log4j.category.com.mchange=DEBUG
log4j.logger.com.mchange=DEBUG
4 2

4 ответа:

При некотором чтении исходного кода воспроизведения, DBPlugin: onApplicationStart , кажется, имеет следующее:

...
System.setProperty("com.mchange.v2.log.MLog", "com.mchange.v2.log.FallbackMLog");
System.setProperty("com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL", "OFF");
ComboPooledDataSource ds = new ComboPooledDataSource();
...

После комментирования этих систем.методов-setproperty линий и построения локальных фляги, мне удалось увидеть c3p0 лесозаготовки.

Не знаете, есть ли другой способ включить ведение журнала, кроме этого?

Видите ли вы где-нибудь информацию о регистрации c3p0? идет ли он через standard out или через java.утиль.лесозаготовки?

В любом случае, одна вещь, которую нужно попробовать, это

com.mchange.v2.log.MLog=com.mchange.v2.log.log4j.Log4jMLog

Вы можете поместить это в c3p0.файл свойств или задайте его в качестве системного свойства (или создайте файл с именем mchange-log.собственности). смотрите здесь Подробнее.

Пробовали ли вы это в своем приложении?файл конф?

# Debug SQL statements (logged using DEBUG level):
jpa.debugSQL=true

Не уверен, что это даст вам необходимые журналы, но стоит попробовать.

В ходе обсуждения avfl & Scott нашли другой способ с помощью OnApplicationStart job:

package jobs;

import play.jobs.*;
import play.Logger;

@OnApplicationStart
public class C3p0Logging extends Job {

    public void doJob() {
        Logger.info("Setting custom c3p0 log level");
        com.mchange.v2.log.log4j.Log4jMLog.getLogger().setLevel(com.mchange.v2.log.MLevel.FINEST);
    }   
}

Это, кажется, заканчивается на C3p0 FallbackMLog - > System.ошибаться. Не нашли способа получить журналы в log4j с помощью этого подхода.