Page tree
Skip to end of metadata
Go to start of metadata

Symptom

The response time of ECTR is usually fast. But sometimes ECTR seems to"hang" and does not react. In the log you can see high times in the communication of the RFC call:

ECTR console log

 Called: /DSCSAG/FOL3_ALLOC_MAINTAIN [apilog@stateless.txt#5512] (using SAPGui), duration total: 156795ms (sap: 10002ms, objs: 2, time/objs: 5.001ms, comm: 146793ms, data: 2,3kb, rate: 0kb/s)

Reason

 

The "comm" time is calculated like this:

  • ECTR- Frontend calls a DSC – FM (e.g. /DSCSAG/FOL3_ALLOC_MAINTAIN) via SAP JCo at timestamp 20170302213800
  • In SAP-Backend in the DSC – FM there is taken a time stamp at the begin e.g. 20170302213805
  • another timestamp is taken at the end e.g. 20170302213810
  • then the difference between this two timestamps is calculated: “sap” time is 20170302213810 – 20170302213805 = 5 seconds
  • ECTR-Frontend side: the SAP JCo call returns at timestamp 20170302213815.
  • ECTR calculates the difference between this two timestamps: 20170302213815 – 20170302213800 = 15 seconds
  • The difference between the runtime as measured by ECTR(15 seconds) and the runtime as measured on the server side(5 seconds) is the "communication time"
  • this communication time is not transparent to ECTR 

Call with RFC only transaction (NO GUI)

sap.logon.sapGui*           Use SAP-Gui ( 0- NoGUI,  2-GUI)

 

Call with GUI transaction 

sap.logon.sapGui*           Use SAP-Gui ( 0- NoGUI,  2-GUI)

Called: /DSCSAG/FOL3_ALLOC_MAINTAIN [apilog@stateless.txt#5512] (using SAPGui), duration total...

 

The "comm" - time is lost somewhere "on the road" between ECTR and SAP backend. For ECTR this is a "black box" and can not be influenced.

Possible reasons can be:

  • Performance issue in JCo (Component BC-MID-CON-JCO)
  • Bad network situations
    • The DNS name resolving time or network throughput
  • High load on the network sometimes
  • High latency between local SAP ECTR and SAP backend
  • Using SAPgui transactions instead of RFC transactions
  • ABAP backend had a high workload and therefore was slow

    • Each RFC call needs a free dialog work process, maybe there was no free dialog work processes available for handling the logon process

  • The SNC library with accessing the certificates and negotiating the keys takes more time

Solutions

 

If you suppose it is a JCo issue you have to generate JCo logs

Change these settings in …\customize\config\SAPlogon.txt of ECTR:

 # Enable/disable CPIC trace (-1 [use environment setting], 0 no trace, 1,2,3 trace level)
      sap.transaction.cpicTrace = -1
 
# Enable/disable RFC trace (0 or 1)
# This would create trace files jco_rfc*.trc in the ECTR log directory which you could send to support.
      sap.transaction.jcoTrace = 1
 
# Define trace level for JCo (see https://wiki.scn.sap.com/wiki/display/SI/Java+Connectivity)
# Use level 5 to send log files to support if nothing else requested.
# This would create a trace file JCO*.trc in the ECTR log directory which you could send to support.
      jco.trace_level = 5
      jco.trace_path = .
 

 

If you suppose it is a network issue you have to analyze your network load

Ask you local network administrator how to do this. Maybe there is a backup running on a server at several times which is responsible for a sporadic very high load on the network.

The TCP/IP traffic can be captured either with Wireshark tool (www.wireshark.org) or with Microsoft Message Analyzer (https://www.microsoft.com/en-us/download/details.aspx?id=44226).

Use RFC only transaction

Using SAPGUI transactions causes a big overhead. It is much faster to use RFC only transactions.

Change these settings in …\customize\config\SAPlogon.txt of ECTR:

sap.logon.SapGui*              = 0

Change these settings in …\customize\config\default.txt of ECTR:

# Call these FM with a GUI transaction

sap.bapi.useGuiTransaction = Z_POPUP_CUSTOMER;Z_SHOW_FUNNY_UI

If you suppose it is a SNC issue

  • In case of SAP CommonCryptoLib, see SAP note "1996839 - Configuration Files for SNC on CommonCryptoLib" to enable SNC tracing.    
  • In case of a third party library (gx64ntlm.dll) check the library manual about enabling tracing.

 

 

 

2 Comments

  1. What is considered to be "High latency between local SAP ECTR and SAP backend"  100ms 200ms 500ms ?  What about throughput ? I have NIPING results between Clients and Content Servers and Clients and SAP Application Server but I don't have any idea for what ranges or considered good or bad.

    1. Hi Neal,

      this depends on your expected performance. If you have a latency of more than 500ms, I definetly wouldn't expect the best performance. Below 100ms is good.

      Hope this helps.

      Gerhard