Modulo di questo articolo: Message Monitor
Tracciare un messaggio SAP CPI step by step senza uscire dal designer dell'iFlow
Cosa registra il livello di log TRACE in SAP CPI, come leggere nel monitor il contenuto prima di uno step e come seguire percorso e payload di un messaggio sul diagramma dell'iFlow.

Quando un iFlow restituisce il risultato sbagliato, la domanda è quasi sempre la stessa: com'era il messaggio subito prima dello step che ha sbagliato? SAP Cloud Integration (SAP CPI) può rispondere, ma solo per i messaggi elaborati con il livello di log TRACE, e la risposta si trova nel monitor, a diverse schermate di distanza dal diagramma che stai modificando.
Questo articolo spiega cosa registra un trace, come leggerlo nel monitor di SAP e come seguire lo stesso trace sul diagramma, step dopo step, con Kitegra.
Cosa registra un trace
Ogni messaggio lascia un message processing log (MPL): il suo stato, l'inizio e la fine, e gli step eseguiti. Il livello di log dell'iFlow decide quanti dettagli vi finiscono.
| Livello di log | Cosa conserva il message processing log |
|---|---|
| Info | Lo stato complessivo, i tempi e l'eventuale errore |
| Debug | Una voce per ogni step eseguito dal messaggio |
| Trace | Come Debug, più body, header ed exchange property com'erano prima di ogni step |
Il contenuto del trace serve per le indagini, non per l'archiviazione. SAP lo conserva per circa un'ora, e il livello TRACE stesso torna indietro dopo circa 10 minuti, quindi il messaggio che vuoi leggere deve essere eseguito poco dopo l'impostazione di TRACE. Poiché memorizza payload reali nel tenant, usalo su dati di test quando puoi e segui le regole della tua azienda in produzione. Perché TRACE si disattiva da solo spiega i limiti.
Leggere un trace nel monitor di SAP
- Nel monitor, apri Manage Integration Content, seleziona l'iFlow distribuito e imposta il suo livello di log su Trace.
- Invia di nuovo il messaggio entro i minuti successivi.
- Apri il messaggio in Monitor Message Processing e segui il suo link al trace fino all'esecuzione del messaggio.
- Seleziona uno step sul diagramma dell'esecuzione e apri il contenuto del messaggio: header, proprietà e payload.
Funziona, ma ogni sguardo a uno step richiede qualche clic, il diagramma dell'esecuzione non è quello che stai modificando, e dopo 10 minuti il livello di log va impostato di nuovo.
Attivare TRACE dal designer
Con Kitegra, apri l'iFlow nel designer, fai clic sul pulsante «Strumenti Kitegra» nella barra degli strumenti del diagramma e scegli Messaggi (oppure premi Alt+Shift+M). Il pannello elenca gli ultimi messaggi dell'iFlow sul runtime che scegli, raggruppati per giorno, con stato, ora di inizio e durata. I messaggi tracciati hanno un segno TRACE, e quelli nuovi lampeggiano quando arrivano.
L'interruttore nel pannello indica «Trace: disattivato». Un clic imposta il livello di log dell'iFlow su TRACE, e l'interruttore mostra «Trace: attivo» con un conteggio dei minuti. Finché è attivo e lavori nell'iFlow, l'estensione reimposta TRACE prima che SAP lo tolga; smette di rinnovarlo 20 minuti dopo la tua ultima attività. Disattivato ripristina il livello di log che l'iFlow aveva prima.
Trace è una delle quattro azioni che modificano il tuo tenant e, come le altre, viene eseguita solo quando fai clic.
Seguire il messaggio sul diagramma
- Invia il messaggio o aspetta il prossimo. Compare in cima al pannello Messaggi.
- Su un messaggio tracciato, scegli «Sul diagramma». Gli step attraversati vengono colorati, uno step non riuscito viene evidenziato e gli step non raggiunti vengono attenuati.
- Fai clic su uno step colorato. Il pannello «Contenuto prima del passo» mostra Body, Header e Proprietà di scambio com'erano prima di quello step, il Log dello step e l'Errore quando lo step non è riuscito.
- Usa Precedente e Successivo per scorrere gli step nell'ordine in cui sono stati eseguiti. Uno step eseguito più volte, in uno Splitter o in un ciclo, mostra ogni esecuzione, per esempio «Esecuzione 2 di 3 di questo passo».
- Quando hai finito, scegli «Rimuovi i segni dal diagramma».
Se il messaggio è stato eseguito senza TRACE, il pannello lo dice: SAP conserva body e header di un messaggio solo quando viene eseguito con TRACE, e solo per circa un'ora.
Lavorare con ciò che trovi
- Il visualizzatore del payload mostra un body «Formattato» o su «Una riga», offre «A capo» e «Cerca», e ti permette di usare «Copia» o «Scarica».
- «Confronta con il passo successivo» apre due body affiancati in Confronto payload, così vedi esattamente cosa ha cambiato uno step.
- Tempi colora gli step in base alla durata, dal più veloce (verde) al più lento (rosso); passa sopra uno step per vederne il tempo.
- In un'esecuzione lunga, «Passi letti» stabilisce quanti step leggere per quell'iFlow, oppure Tutti.
- Per un messaggio non riuscito, la scheda Riepilogo indica dove si è interrotto e, per gli errori noti, «Cosa significa di solito:».
Per aprire un messaggio di cui conosci l'ID, di questo o di qualsiasi altro iFlow del tenant, vedi trovare un messaggio SAP CPI per Message ID o Correlation ID.
Come aiuta Kitegra
Il Message Monitor è una delle cinque aree di Kitegra. Il contenuto dei trace è un dato del cliente: l'estensione lo mostra nella pagina e ti permette di scaricare un body, ma non lo salva, non lo sincronizza e non lo invia mai a Kitegra.
Helper, Message Monitor, iFlow Inspector e iFlow Docs contano ciascuno gli iFlow su cui li usi: 5 per modulo senza un account Kitegra, 50 con il piano Free, 100 con Starter e 300 con Pro; Business non ha limiti. La Toolbox e gli extra dell'area di lavoro sono gratuiti. Confronta i piani.
Provalo nel tuo prossimo iFlow
Scopri cosa aggiunge Kitegra attorno al designer di SAP Integration Suite, oppure guardalo accanto alle altre estensioni Chrome di Kitegra.
Domande frequenti
Perché non vedo il payload del mio messaggio in SAP CPI?
SAP conserva body, header e proprietà di un messaggio solo quando viene eseguito con il livello di log TRACE, e solo per circa un'ora. Imposta TRACE, invia di nuovo il messaggio e leggi il trace entro l'ora.
Quanto resta attivo TRACE in SAP CPI?
Circa 10 minuti. Dopo, l'iFlow torna a un livello di log inferiore e i messaggi non vengono più tracciati finché TRACE non viene reimpostato.
Che cos'è il «contenuto prima del passo»?
È il messaggio com'era all'inizio di uno step: body, header ed exchange property. Confrontarlo con il contenuto dello step successivo mostra cosa ha cambiato lo step.
Il tracing rallenta un iFlow?
Aggiunge lavoro, perché il contenuto di ogni step viene scritto nel tenant. Usalo durante l'indagine e disattivalo dopo.
L'estensione mantiene TRACE attivo per sempre?
No. Rinnova TRACE solo finché l'interruttore è attivo e lavori nell'iFlow, smette 20 minuti dopo la tua ultima attività e ripristina il livello precedente quando lo disattivi.
Kitegra conserva il contenuto dei miei trace?
No. Il contenuto dei trace viene mostrato nella pagina e puoi scaricarlo tu; non viene mai salvato, sincronizzato né inviato a Kitegra.