Niveles de depuración APEX

En APEX tenemos diferentes niveles de mensajes de depuración, ahora lo estoy usando muchísimo para depurar los reportes que estoy trabajando con el plugin de APEX Office Print y poder ver los mensajes de AOP 🙂

Como sabemos en la sintaxis de la URL de APEX podemos activar o desactivar la depuración en el quinto argumento:

Por ejemplo:

f?p=App:Page:Session:Request:Debug:ClearCache:itemNames:itemValues:PrinterFriendly

El argumento Debug: muestra los detalles de procesamiento de la aplicación. Los valores válidos para este indicador incluyen:

  • YES
  • LEVELn
  • NO

Al establecer este indicador en YES, se muestran detalles sobre el procesamiento de la aplicación. Ahora si establecemos este indicador en LEVELn (donde n está entre 1 y 9) controla el nivel de detalle de depuración que se muestra. El valor de YES es igual a LEVEL4.

Podemos hacer referencia al indicador de depuración utilizando la siguiente sintaxis:

  • Cadena de sustitución corta: &DEBUG.
  • PL/SQL: V(‘DEBUG’)
  • Variable Bind: :DEBUG

El paquete APEX_DEBUG proporciona funciones de utilidad para administrar el registro de mensajes de depuración. Específicamente, este paquete nos proporciona las API necesarias para instrumentar y depurar el código PL/SQL contenido en nuestra aplicación APEX, así como el código PL/SQL en los procedimientos y funciones almacenados en la base de datos.

Si echamos un vistazo a la especificación del paquete, podemos ver el significado de cada nivel (aunque faltan los niveles 3 y 7).

Constantes usadas en el pkg:

subtype t_log_level is pls_integer; 
c_log_level_error constant t_log_level := 1; -- critical error 
c_log_level_warn constant t_log_level := 2; -- less critical error 
c_log_level_info constant t_log_level := 4; -- default level if debugging is enabled (for example, used by apex_application.debug) 
c_log_level_app_enter constant t_log_level := 5; -- application: messages when procedures/functions are entered 
c_log_level_app_trace constant t_log_level := 6; -- application: other messages within procedures/functions 
c_log_level_engine_enter constant t_log_level := 8; -- Application Express engine: messages when procedures/functions are entered 
c_log_level_engine_trace constant t_log_level := 9; -- Application Express engine: other messages within procedures/functions

Podemos establecer este nivel al agregar mensajes de depuración manualmente mediante el procedimiento apex_debug.message.

Publicado por Ing. Clarisa Maman Orfali

Clarisa is an Oracle ACE Pro, with more than 25 years of experience as a developer, teacher, author and IT consultant. Clarisa is from Argentina living and working in Irvine, California, in the United States. She is the author of the first three Oracle APEX books. She is also co-founder of the Argentine Oracle Users Group (AROUG) and has specialized for the last 13 years in web application development with Oracle Application Express (APEX).

Deja un comentario

Discover more from Kiú

Subscribe now to keep reading and get access to the full archive.

Continue reading