Ir al contenido
Kitegra
← Volver al blog

Módulo de este artículo: Message Monitor

Trazar un mensaje de SAP CPI paso a paso sin salir del diseñador de iFlows

Qué registra el nivel de log TRACE de SAP CPI, cómo leer el contenido antes de un paso en el monitor y cómo seguir la ruta y el payload de un mensaje en el propio diagrama del iFlow.

Trazar un mensaje de SAP CPI paso a paso sin salir del diseñador de iFlows

Cuando un iFlow devuelve un resultado incorrecto, la pregunta casi siempre es la misma: ¿cómo era el mensaje justo antes del paso que falló? SAP Cloud Integration (SAP CPI) puede responderla, pero solo para los mensajes procesados con el nivel de log TRACE, y la respuesta está en el monitor, a varias pantallas del diagrama que estás editando.

Este artículo explica qué registra un trace, cómo leerlo en el propio monitor de SAP y cómo seguir ese mismo trace en el diagrama, paso a paso, con Kitegra.

Qué registra un trace

Cada mensaje deja un log de procesamiento de mensajes (MPL): su estado, su inicio y su fin, y los pasos que ejecutó. El nivel de log del iFlow decide cuánto detalle entra en él.

Nivel de logQué guarda el log de procesamiento del mensaje
InfoEl estado general, los tiempos y el error, si lo hay
DebugUna entrada por cada paso que ejecutó el mensaje
TraceLo mismo que Debug, más el body, los headers y las exchange properties tal como estaban antes de cada paso

El contenido del trace sirve para investigar, no para archivar. SAP lo guarda durante una hora aproximadamente, y el propio nivel TRACE se desactiva tras unos 10 minutos, así que el mensaje que quieres leer tiene que ejecutarse poco después de activar TRACE. Como guarda payloads reales en el tenant, úsalo con datos de prueba siempre que puedas y sigue las normas de tu empresa en producción. Por qué TRACE se desactiva solo explica los límites.

Leer un trace en el monitor de SAP

  1. En el monitor, abre Manage Integration Content, selecciona el iFlow desplegado y pon su nivel de log en Trace.
  2. Vuelve a enviar el mensaje en los minutos siguientes.
  3. Abre el mensaje en Monitor Message Processing y sigue su enlace de trace hasta la ejecución del procesamiento del mensaje.
  4. Selecciona un paso en el diagrama de la ejecución y abre el contenido de su mensaje: headers, propiedades y payload.

Funciona, pero cada consulta de un paso cuesta varios clics, el diagrama de la ejecución no es el que estás editando y, pasados 10 minutos, hay que volver a poner el nivel de log.

Activa TRACE desde el diseñador

Con Kitegra, abre el iFlow en el diseñador, haz clic en el botón «Herramientas de Kitegra» de la barra de herramientas del diagrama y elige «Mensajes» (o pulsa Alt+Shift+M). El panel lista los últimos mensajes del iFlow en el runtime que elijas, agrupados por día, con estado, hora de inicio y duración. Los mensajes trazados llevan una marca TRACE, y los nuevos parpadean al llegar.

El interruptor del panel dice «Trace: desactivado». Un clic pone el nivel de log del iFlow en TRACE, y el interruptor muestra «Trace: activado» con un contador de minutos. Mientras está activo y trabajas en el iFlow, la extensión vuelve a poner TRACE antes de que SAP lo quite; deja de renovarlo 20 minutos después de tu última actividad. Al desactivarlo se restaura el nivel de log que tenía el iFlow.

Trace es una de las cuatro acciones que cambian tu tenant y, como las demás, solo se ejecuta cuando haces clic en ella.

Sigue el mensaje en el diagrama

  1. Envía el mensaje, o espera al siguiente. Aparece arriba del todo en el panel «Mensajes».
  2. En un mensaje trazado, elige «En el diagrama». Los pasos por los que pasó se colorean, un paso fallido queda marcado y los pasos a los que no llegó se atenúan.
  3. Haz clic en un paso coloreado. El panel «Contenido antes del paso» muestra el Body, los Headers y las «Propiedades de intercambio» tal como estaban antes de ese paso, el Log del paso y el Error cuando el paso falló.
  4. Usa «Anterior» y «Siguiente» para recorrer los pasos en el orden en que se ejecutaron. Un paso que se ejecutó más de una vez, en un Splitter o en un bucle, muestra cada ejecución, por ejemplo «Ejecución 2 de 3 de este paso».
  5. Cuando termines, elige «Quitar las marcas del diagrama».

Si el mensaje se ejecutó sin TRACE, el panel lo indica: SAP guarda el body y los headers de un mensaje solo cuando se ejecuta con TRACE, y solo durante una hora aproximadamente.

Trabaja con lo que encuentres

  • El visor de payloads muestra un body «Formateado» o en «Una línea», puede «Ajustar líneas» y «Buscar», y te permite «Copiar» o «Descargar».
  • «Comparar con el paso siguiente» abre dos bodies lado a lado en «Comparar payloads», para que veas exactamente qué cambió un paso.
  • «Tiempos» colorea los pasos según lo que tardaron, del más rápido (verde) al más lento (rojo); pasa el puntero sobre un paso para ver su tiempo.
  • En una ejecución larga, «Pasos leídos» fija cuántos pasos se leen para ese iFlow, o «Todos».
  • En un mensaje fallido, la pestaña «Resumen» indica dónde falló y, para los errores conocidos, «Qué suele significar:».

Para abrir un mensaje del que conoces el ID, de este o de cualquier otro iFlow del tenant, consulta cómo encontrar un mensaje de SAP CPI por Message ID o Correlation ID.

Cómo ayuda Kitegra

El Message Monitor es una de las cinco áreas de Kitegra. El contenido del trace son datos del cliente: la extensión lo muestra en la página y te deja descargar un body, pero nunca lo guarda, lo sincroniza ni lo envía a Kitegra.

El Helper, Message Monitor, iFlow Inspector e iFlow Docs cuentan cada uno los iFlows en los que los usas: 5 por módulo sin una cuenta de Kitegra, 50 con el plan Free, 100 con Starter y 300 con Pro; Business no tiene límite. La Toolbox y los extras del espacio de trabajo son gratuitos. Compara los planes.

Pruébalo en tu próximo iFlow

Descubre lo que Kitegra añade alrededor del diseñador de SAP Integration Suite, o míralo junto a las demás extensiones de Chrome de Kitegra.

Preguntas frecuentes

¿Por qué no veo el payload de mi mensaje en SAP CPI?

SAP guarda el body, los headers y las propiedades de un mensaje solo cuando se ejecuta con el nivel de log TRACE, y solo durante una hora aproximadamente. Activa TRACE, vuelve a enviar el mensaje y lee el trace dentro de esa hora.

¿Cuánto tiempo se mantiene TRACE activo en SAP CPI?

Unos 10 minutos. Después el iFlow vuelve a un nivel de log inferior y los mensajes dejan de trazarse hasta que se vuelve a poner TRACE.

¿Qué es el «contenido antes del paso»?

Es el mensaje tal como estaba cuando empezó un paso: su body, sus headers y sus exchange properties. Compararlo con el contenido del paso siguiente muestra qué cambió el paso.

¿El trace hace más lento un iFlow?

Le añade trabajo, porque el contenido de cada paso se escribe en el tenant. Úsalo mientras investigas y desactívalo después.

¿La extensión mantiene el nivel TRACE activo para siempre?

No. Renueva TRACE solo mientras el interruptor está activo y trabajas en el iFlow, deja de hacerlo 20 minutos después de tu última actividad y restaura el nivel anterior cuando lo desactivas.

¿Kitegra guarda el contenido de mis traces?

No. El contenido del trace se muestra en la página y puedes descargarlo tú; nunca se guarda, se sincroniza ni se envía a Kitegra.

Trabaja en iFlows sin salir del diseñador

Agrega Kitegra a Chrome o Microsoft Edge. Empieza gratis, sin necesidad de cuenta.