maxstatements - c3po java connection pool
¿Cómo desactivo el registro en java c3p0 connection pooling lib? (6)
Hola a todos, estoy empezando con c3p0 para la agrupación de conexiones de bases de datos. Se está adjuntando a mi salida log4j actualmente. ¿Cómo configuro el inicio de sesión o al menos al nivel SEVERE solo para c3p0? Traté de ajustar el archivo de propiedades, pero no estoy seguro de que se recogió correctamente.
alguna idea sobre la mejor manera de apagarlo?
Gracias
ACTUALIZACIÓN: esto parece funcionar en el archivo log4j.properties
log4j.logger.com.mchange.v2.c3p0.impl=INFO
log4j.logger.com.mchange=INFO
Estoy trabajando en Clojure, a través de Korma y durante toda mi vida no pude obtener ningún archivo de propiedades para cargar (soy nuevo en Clojure, así que me culpo). Si estás en un bote similar, lo siguiente podría ayudarte.
(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")))
El es básicamente un puerto de clojure de la respuesta de Philippe Carriere arriba, ¡muchas gracias!
Para aquellos que NO están usando un archivo de configuración, solo para agregar lo siguiente en el código, antes de cargar el grupo de conexiones.
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);
Puede establecer el nivel de registro agregando las siguientes líneas en log4j.xml. Se desea el registro al menos en el nivel de error.
< category name="com.mchange" additivity="false">
< priority value="ERROR"/>
< appender-ref ref="ASYNC"/>
</ category>
Si realmente desea desactivar la propiedad del conjunto de registro c3P0 com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL=OFF
en c3p0-Config.properties
o puede establecerlo directamente en el código como una propiedad del sistema System.setProperty("com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL",MLevel.OFF);
Recibía mensajes como los siguientes:
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
Esto me hizo pensar que C3P0 estaba registrando estos mensajes. En realidad, el mensaje proviene del conector mysql porque habilité el perfil utilizando una cadena de conexión como esta:
jdbc:mysql://localhost/database?profileSQL=true
Eliminar ?profileSQL=true
para que deje de registrar estos mensajes.
Si usa un archivo log4j.xml, puede definir fácilmente un registrador para el paquete c3po:
<logger name="com.mchange.v2.c3p0">
<level value="SEVERE"/>
</logger>
Hay métodos análogos para log4j.properties. Creo que es solo:
log4j.logger.com.mchange.v2.c3p0=SEVERE
Solucioné el problema con la línea de código:
com.mchange.v2.log.MLog.getLogger().setLevel(MLevel.INFO);
Estoy usando log4j en mi aplicación.