Configuración del registro de programa de fondo del archivo web.xml en la infraestructura de interfaz de usuario

En la infraestructura de interfaz de usuario web puede habilitar el registro de diversos usos de la infraestructura en programa de fondo (Struts, mashups y API), en función del URI de cada cliente. Una vez especificado el registro, puede activarlo mediante el botón Iniciar registro de solicitud en la barra de herramientas de depuración de la aplicación.

Acerca de esta tarea

En cada solicitud de registro, el registro de programa de fondo de WUF habrá terminado cuando suceda lo siguiente:
  • Al llamar a una acción de Struts, se registra el nombre de la acción de Struts.
  • Al invocar un mashup, se registran el nombre de clase XAPIMashup y name/Flowname de la API.
  • Cuando se produce una redirección o se crea requestDispatcher.

Procedimiento

  1. Utilice el parámetro de contexto scui-request-log-enabled del archivo web.xml para configurar el registro de programa de fondo. De forma predeterminada este parámetro se establece en true. Si no se ha establecido en true, no se mostrará el botón Iniciar registro de solicitud.

    Entrada de web.xml de ejemplo:

    <context-param>
    		<param-name>scui-request-log-enabled</param-name>
     	<param-value>true</param-value> 
    </context-param>
  2. Utilice la clase com.sterlingcommerce.ui.web.framework.utils.SCUIUtils para ofrecer métodos estáticos para comprobar si se ha habilitado el registro.
    public static boolean isRequestLogEnabledInCtx(SCUIContext uiContext){
            return isRequestLogEnabledInCtx(uiContext.getWebContext().getRequest());
    }
    public static boolean isRequestLogEnabledInCtx(HttpServletRequest request){
            // read from context param if enabled 
            // read from the boolean from isRequestLogEnabled
            return isRequestLogEnabledInCtx;                
    }
    ... 
    public static boolean isRequestLogEnabled(SCUIContext uiContext){
            return isRequestLogEnabled(uiContext.getWebContext().getRequest()); 
    } 
    ... 
    public
    static boolean isRequestLogEnabled(HttpServletRequest request){
            // read from context param if enabled 
            // read from the boolean from isRequestLogEnabled 
            return isRequestLogEnabled;             
    }
  3. Utilice la clase com.sterlingcommerce.ui.web.framework.context.SCUIContext para registrar el mensaje. La aplicación puede utilizar el método del programa de utilidad de esta clase para registrar sus mensajes basados en solicitudes. Se registrarán sólo si el parámetro de contexto scui-request-log-enabled es true y el usuario ha iniciado el registro de solicitud a través de la barra de herramientas de depuración.
    Nota: Se emite una excepción de tiempo de ejecución si se llama al método cuando el registro no está habilitado por, por ejemplo, otro método interno.
    ... 
    public void setRequestLogMessage(String message){
    	...
    	// check if log enabled and attribute already exists.
    	this.setAttribute(SCUIConstants.REQUEST_LOG_MSG_PARAM_NAME, message); 
    } 
    ...
  4. Se utiliza un agregador independiente para colocar todos los registros basados en solicitudes en un archivo distinto. El archivo requestinfo.log está disponible en < DIR_INSTALACIÓN>/logs o en la ubicación de registro predeterminada.

    El registro debe habilitarse mediante una de las acciones siguientes:

    • El mandato -Dyfs.logall=Y
    • A través de la Consola de gestión del sistema.

    Si el registro no se ha habilitado, no se llevará a cabo ningún registro.

    Mensaje de registro de ejemplo:

    2010-02-18 06:38:47,257:DEBUG  :[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)':  
    Inside SCUIAction flightTrip
    Getting Request dispatcher /stk/flightTrip/flightTrip.jsp [system]: requestlogger            
    2010-02-18 06:39:08,806:DEBUG  :[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)': 
    Inside SCUIAction getFlightTrip
    Inside SCUIXAPIMashup com.sterlingcommerce.ui.web.platform.mashup.SCUIXAPIMashup 
    Api name is getFlightTripList
    Getting Request dispatcher /stk/flightTrip/gft.jsp [stkadmin]: requestlogger            
    2010-02-18 06:39:09,013:DEBUG  :[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)': 
    Inside SCUIAction getOrganizationList
    Inside SCUIXAPIMashup com.sterlingcommerce.ui.web.platform.mashup.SCUIXAPIMashup
    Api name is getOrganizationList 
    Getting Request dispatcher /stk/flightTrip/gol.jsp [stkadmin]: requestlogger            
    2010-02-18 06:39:11,833:DEBUG  :[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)': 
    Inside SCUIAction airport 
    Getting Request dispatcher /stk/airport/airportScreen.jsp [stkadmin]: requestlogger            
    2010-02-18 06:39:15,836:DEBUG  :[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)':
    Inside SCUIAction getAirportList 
    Inside SCUIXAPIMashup com.sterlingcommerce.ui.web.platform.mashup.SCUIXAPIMashup
    Api name is getAirportList
    Getting Request dispatcher /stk/airport/airportList.jsp [stkadmin]: requestlogger            
    2010-02-18 06:39:52,948:DEBUG  :[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)':
    Inside SCUIAction activateRequestLog                        [stkadmin]: requestlogger            
  5. El botón Detener registro de solicitud aparece en la barra de herramientas de depuración cuando se activa el botón Iniciar registro de solicitud . Al pulsar el botón Detener registro de solicitud, se detiene el registro en el archivo requestinfo.log después de llamar a una acción de Struts final.