¿Cómo generar log JDBC?
Abstract
Muchas veces se requiere por parte de soporte o bien el cliente puede estudiar lo que sucede en las conexiones JDBC a la base de datos. Para esto se puede generar un log utilizando las clases de
debug que vienen con el generador Java: gxclassd.zip y activándolo en los archivos de configuración (cfg) leídos por las aplicaciones.
Descripción Detallada
Veamos como generarlo dependiendo del tipo de aplicaciones que se este ejecutando:
>> Aplicación WEB
1) Sustituir la gxclassr.zip (o gxlclassr.jar) del lib de la webapp donde corre la aplicación por el
gxclassD.zip (o gxclassD.jar)
Importante: este reemplazo ya no es necesario en la versión 16, si estamos en ambiente de desarrollo solo sería necesario cambiar esta propiedad
y generar forzado un objeto.
2) Setear la propiedad del modelo 'JDBCLog File', por ejemplo C:\logs\jdbc.log.
3) En caso de no contar con GeneXus, se puede editar el client.cfg y cambiar las siguientes keys:
JDBC_LOG= c:\logs\jdbc.log
JDBCLogEnabled=1
>> Aplicación WIN 2 capas
1) Sustituir la gxclassr.zip del classpath por el gxclassD.zip (o gxclassD.jar)
2) Setear la propiedad del modelo 'JDBCLog File', por ejemplo C:\logs\jdbc.log.
3) En caso de no contar con GeneXus, se puede editar el client.cfg y cambiar las siguientes keys:
JDBC_LOG= c:\logs\jdbc.log
JDBCLogEnabled=1
>> Aplicación WIN 3 capas
1) Sustituir la gxclassr.zip (o gxlclassr.jar) por el gxclassD.zip (o gxclassD.jar) del classpath del servidor de aplicaciones (del lib de la webapp donde corre la aplicación en caso de 3 capas http)
2) Setear la propiedad del modelo 'JDBCLog File', por ejemplo C:\logs\jdbc.log. Nota: Este path debe ser válido en el disco donde está instalado el servidor de aplicaciones.
2) En caso de no contar con GeneXus, editar el server.cfg y cambiar las siguientes keys:
JDBC_LOG= c:\logs\jdbc.log
JDBCLogEnabled=1
>> Aplicación WIN 2 capas instalada con el GXWS
1) Setear la preference JDBC LOG FILE con un nombre (sin path), por ejemplo gxjdbc.log
2) Armar un nuevo deployment, pero esta vez, en la parte advanced del wizard, marcar el check 'Use Debug version of GX standard classes'
*******************************************************************************************************************************************************************************************
TIPOS DE LOGS
Si se setea la preference
Use uniques names = yes ( JDBCUniqueName=1 en el client.cfg )
se habilita la posibilidad de generar el log a nivel
DataStore
Conexion
O NameSpace
que puede facilitar la busqueda de errores. Para esto entonces hay que indicar un path donde se generaran los archivos , preference
Path to log files = c:\temp ( JDBCLogPath=c:\temp en el client.cfg )
Luego la preference "Log level" puede tomar los tres valores
NameSpace ( JDBCLogLevel=0 en el client.cfg )
DataStore ( JDBCLogLevel=1 en el client.cfg )
Conexion ( JDBCLogLevel=2 en el client.cfg )
El nivel de detalle se setea por medio de la preference
Detail = High ( JDBCLogDetail=0 en el client.cfg )
Mediun ( JDBCLogDetail=1 en el client.cfg )
Low ( JDBCLogDetail=2 en el client.cfg )
*******************************************************************************************************************************************************************************************