İçeriğe geç
← Bloga dön

Bu makaledeki modül: Message Monitor

SAP CPI Log Seviyesi TRACE: Neden Kapanır ve Güvenle Nasıl Açık Tutulur

SAP CPI'da TRACE log seviyesinin yaklaşık 10 dakika sonra neden geri düştüğü, neyi ne kadar sakladığı, üretimdeki riskleri ve yalnızca çalışırken nasıl açık tutulacağı.

SAP CPI Log Seviyesi TRACE: Neden Kapanır ve Güvenle Nasıl Açık Tutulur

Bir iFlow'un log seviyesini Trace yaparsınız, çeyrek saat başka bir şeyi test edersiniz, önemli mesajı gönderirsiniz ve trace boştur. SAP Cloud Integration (SAP CPI) seviyeyi sessizce geri düşürmüştür. Bu bilinçli bir davranıştır ve nedenini bildiğinizde TRACE kullanma kuralları kendiliğinden ortaya çıkar.

Bu makale her log seviyesinin neyi sakladığını, TRACE'in neden sona erdiğini, nasıl güvenle kullanılacağını ve tam olarak çalıştığınız süre boyunca nasıl açık tutulacağını açıklıyor.

Log seviyeleri ve TRACE'in ekledikleri

Log seviyesiHer mesaj için saklananlar
InfoGenel durum, zamanlama ve varsa hata
DebugMesajın çalıştırdığı her adım için bir kayıt
TraceDebug gibi, ayrıca her adımdan önceki body, header'lar ve exchange property'ler

Seviye dağıtılmış iFlow'da ayarlanır; bu yüzden ayarlı kaldığı sürece o iFlow'un işlediği her mesaja uygulanır.

TRACE neden kendiliğinden kapanır

TRACE her adımın payload'ını, header'larını ve özelliklerini tenant'ın veritabanına yazar. Yoğun bir iFlow'da bu çok fazla veri demektir ve kişisel ya da gizli içerik barındırabilir. Bu nedenle SAP onu zamanla sınırlar: TRACE seviyesi yaklaşık 10 dakika geçerlidir, ardından iFlow daha düşük bir seviyeye döner; trace içeriğinin kendisi ise yaklaşık bir saat saklanır.

Bir tenant, TRACE'e hiç izin vermeyecek şekilde de yapılandırılabilir. O zaman kim denerse denesin ayarlama başarısız olur.

TRACE'i elle ayarlama

  1. İzleyicide Manage Integration Content'i açın ve dağıtılmış iFlow'u seçin.
  2. Log yapılandırmasında log seviyesini Trace yapın.
  3. Test mesajlarınızı sonraki 10 dakika içinde gönderin ve trace'lerini bir saat içinde okuyun.
  4. Daha uzun bir oturumda Trace'i her 10 dakikada bir yeniden ayarlayın.

TRACE'i güvenle kullanma

import com.sap.gateway.ip.core.customdev.util.Message

def Message processData(Message message) {
    // Set the exchange property logPayload to "true" (for example from an
    // externalized parameter) only while you investigate.
    if (message.getProperty("logPayload") == "true") {
        def log = messageLogFactory.getMessageLog(message)
        log?.addAttachmentAsString("Payload before mapping", message.getBody(String), "text/plain")
    }
    return message
}
  • Test verisini tercih edin. Bir üretim mesajının trace'i, o müşterinin verilerini bir saat boyunca tenant'ta saklar.
  • Üretimde, soruyu yanıtlayan en kısa süre boyunca trace yapın ve şirketinizin onay kurallarına uyun.
  • Debug veya Trace'i bir iFlow'un yapılandırılmış log seviyesi olarak bırakmayın: bunun bedelini her mesaj öder.
  • Parolaları veya token'ları, bir trace'in göstereceği header'lara ya da özelliklere yazmayın.
  • Log'da düzenli olarak bir payload'a ihtiyacınız olduğunda, onu bir betikten message processing log'a ekleyin ve yalnızca bir anahtar açıkken:

TRACE'i yalnızca çalışırken açık tutun

Kitegra'da açık iFlow'un Mesajlar panelinde “Trace: kapalı” yazan bir anahtar vardır. Tek tıklama log seviyesini TRACE yapar. Anahtar açık olduğu ve o iFlow'un bir tasarımcı sekmesi açık kaldığı sürece uzantı, SAP seviyeyi düşürmeden önce TRACE'i her 9 dakikada bir yeniden ayarlar ve iFlow'daki son etkinliğinizden 20 dakika sonra durur. Kapatmak, iFlow'un önceki seviyesini geri getirir. Durum sayfa yeniden yüklendikten sonra da korunur ve Alt+Shift+R onu klavyeden açıp kapatır.

iFlow seçilen çalışma zamanında dağıtılmamışsa, tenant TRACE'e izin vermiyorsa veya seçeneklerde “Tenant'ı değiştiren işlemlere izin ver” kapalıysa, açık bir mesajla reddeder.

Trace'in kaydettiklerini okumak için bir mesajı diyagramda adım adım trace etme makalesine bakın.

Kitegra nasıl yardımcı olur

Trace, Kitegra uzantısının tenant'ınızı değiştiren dört işleminden biridir ve yalnızca siz tıkladığınızda çalışır. Canlıya geçişten önce iFlow Inspector'ın “Ayrıntılı günlük düzeyi” tasarım kontrolü, yapılandırılmış log seviyesi her mesajı trace veya debug edecek bir iFlow'u işaretler; iFlow inceleme kontrol listesi bunu diğer kontrollerle birlikte ele alır.

Helper, Message Monitor, iFlow Inspector ve iFlow Docs, kullandığınız iFlow'ları her biri ayrı sayar: Kitegra hesabı olmadan modül başına 5, Free planında 50, Starter'da 100 ve Pro'da 300; Business'ta sınır yoktur. Toolbox ve çalışma alanı ekstraları ücretsizdir. Planları karşılaştırın.

Bir sonraki iFlow'unuzda deneyin

Kitegra'ın SAP Integration Suite tasarımcısının çevresine neler eklediğini okuyun veya onu Kitegra'in diğer Chrome uzantılarıyla birlikte görün.

Sık sorulan sorular

TRACE, SAP CPI'da neden kendiliğinden kapanır?

TRACE her adımın payload'ını tenant'ta saklar. Veriyi sınırlamak için SAP, TRACE seviyesini yaklaşık 10 dakika, trace içeriğini ise yaklaşık bir saat tutar.

Trace verileri ne kadar süre saklanır?

Yaklaşık bir saat. Ardından mesajın log'u kalır, ancak trace edilmiş body, header'lar ve özellikler artık yoktur.

Üretimde TRACE kullanmak güvenli mi?

Tenant'ta gerçek payload'lar saklar; bu yüzden sorunuzu yanıtlayan en kısa süre boyunca, mümkünse test verisiyle ve şirketinizin kurallarına göre kullanın.

Debug ile Trace arasındaki fark nedir?

Debug her adım için bir kayıt tutar. Trace buna her adımdan önceki body, header'lar ve exchange property'leri ekler.

TRACE ayarlamak tenant'ımda neden başarısız oluyor?

Tenant TRACE'e izin vermiyor olabilir, iFlow o çalışma zamanında dağıtılmamış olabilir veya kullanıcınızın rolü eksik olabilir. Uzantıda ayrıca tenant işlemleri seçeneklerde kapatılmış olabilir.

Çalışmayı bıraktıktan sonra uzantı TRACE'i açık tutar mı?

Hayır. TRACE'i yalnızca anahtar açıkken ve siz iFlow'da çalışırken yeniler ve son etkinliğinizden 20 dakika sonra durur.

Tasarımcıdan ayrılmadan iFlow'lar üzerinde çalışın

Kitegra'i Chrome'a veya Microsoft Edge'e ekleyin. Ücretsiz başlayın, hesap gerekmez.