Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
tecnicas:debugger [01/01/2020 21:03] pedro |
tecnicas:debugger [20/03/2022 18:29] (actual) pedro |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== Utilizando el Debugger ====== | + | ====== El modo Debug ====== |
- | Como Néfele lo hemos creados entre desarrolladores de software de gestión que utilizamos habitualmente [[https://xailer.com|Xailer]], estamos acostumbrados a utlizar el Debugger de Xailer, en Néfele no tiene sentido ya que no puedes ejecutar tu aplicación dentro del IDE, pero teniamos claro que queríamos algo similar o mejor. | + | Como Néfele lo hemos creados entre desarrolladores de software de gestión que utilizamos habitualmente [[https://xailer.com|Xailer]], estamos acostumbrados a utilizar el modo Debug de Xailer, en Néfele no tiene sentido ya que no puedes ejecutar tu aplicación dentro del IDE, pero teníamos claro que queríamos algo similar o mejor. |
- | Lo primero es que utilizamos el propio IDE para habilitar y deshabilitar el Debugger en nuestras aplicaciones. | + | Utilizamos el propio IDE para habilitar y deshabilitar el modo Debug en nuestras aplicaciones. |
{{ :tecnicas:xailerdebug.png?nolink&100 |}} | {{ :tecnicas:xailerdebug.png?nolink&100 |}} | ||
- | Esto nos permite que nuestra aplicación sepa si esta en modo debugger solo consultado a la función de Xailer **IsDebug()**. | + | Esto nos permite que nuestra aplicación sepa si esta en modo Debug solo consultado a la función de Néfele [[funciones:nfl_IsDebug]]. |
Una vez habilitado, si se produce un error en nuestra aplicación nos mostrara el error en el navegador que realizo la consulta. | Una vez habilitado, si se produce un error en nuestra aplicación nos mostrara el error en el navegador que realizo la consulta. | ||
Línea 10: | Línea 10: | ||
{{ :tecnicas:errornefele1.png?nolink&608 |}} | {{ :tecnicas:errornefele1.png?nolink&608 |}} | ||
- | También podremos enviar mensajes a la consola del navegador. | + | También podremos enviar mensajes a la consola del navegador con [[metodos:logdebug|LogDebug()]]. |
<Code:xailer linenums:1> | <Code:xailer linenums:1> | ||
WITH OBJECT WBevel():New(:WO) | WITH OBJECT WBevel():New(:WO) | ||
Línea 27: | Línea 27: | ||
{{ :tecnicas:idduplicado.png?nolink&402 |}} | {{ :tecnicas:idduplicado.png?nolink&402 |}} | ||
- | La tercera funcionalidad del modo Debugger nos la da [[utilidades:nefeleconsole|Néfele Console]] que es parte de las herramientas que acompañan a Néfele. | + | La tercera funcionalidad del modo Debug nos la da [[utilidades:nefeleconsole|Néfele Console]] que es parte de las herramientas que acompañan a Néfele. |
Desde nuestros programas podemos enviar mensajes a [[utilidades:nefeleconsole|Néfele Console]] con la instrucción [[ocgi:console|oCGI:Console()]] de esta manera. | Desde nuestros programas podemos enviar mensajes a [[utilidades:nefeleconsole|Néfele Console]] con la instrucción [[ocgi:console|oCGI:Console()]] de esta manera. | ||
oCGI:Console("Mensaje que aparecerá en Néfele Console") | oCGI:Console("Mensaje que aparecerá en Néfele Console") | ||
| | ||
+ | También nos aparecerán en NefeleConsole los mensajes generados con los métodos [[metodos:LogDebug]] y [[metodos:LogError]] de cualquier control de Néfele. | ||
+ | {{:metodos:logdebug_nefeleconsole.png?nolink&400|}} | ||
+ | {{:metodos:logerror_nefeleconsole.png?nolink&400|}} | ||
+ | |||
+ | El modo Debug de Néfele también nos añade comentarios en el código HTML generado para que nos sea más fácil depurar los posibles errores, y nos presenta los parámetros de una forma legible. | ||
+ | |||
+ | {{ :tecnicas:condebug.png?nolink&447 |}} | ||
+ | |||
+ | Cuando no estamos en modo Debug los parámetros son algo menos legibles. | ||
+ | |||
+ | {{ :tecnicas:sindebug.png?nolink&488 |}} | ||
+ | |||
+ | \\ | ||
+ | ===== Modo Debug en Producción ===== | ||
+ | Cuando nuestro CGI esta en producción y lo hemos compilado sin Debug, podemos forzar a que pase a modo Debug añadiendo en el directorio donde este nuestro CGI un fichero con el mismo nombre del CGI con la extensión **.debug**. | ||
+ | |||
+ | Al forzar el modo Debug en nuestro CGI en producción se habilita también la generación de ficheros error.log con información de los errores producidos e información de nuestro CGI en el momento de producirse el error. | ||
+ | |||
+ | Este fichero **.debug** se comporta como un **.ini** por lo que podemos utilizarlo para deshabilitar estos parámetros de manera individual. | ||
+ | |||
+ | [Debug] | ||
+ | Force = .T. | ||
+ | LogError = .T. | ||
+ | |||
+ | |||
+ | ~~DISCUSSION|Comentarios Modo Debug~~ |