You can perform end to end tracing using standalone SUPSupportability
library.
SUPSupportability library provides two functionalities:
- generation of SAP Passport and Correlation ID for HTTP request and response
messages.
- handling the generation of structured E2E
Business
Transaction XML
.
The basic structure of the data is organized into:
- SUPE2ETraceTransaction - serves for the single client side trace
- SUPE2ETraceStep - denotes single user interaction roundtrip on the client
side
- SUPE2ETraceRequest - denotes single interaction within an
SUPE2ETraceStep resulting in an external interaction with backend server
To use the SUPSupportability library, import
SUPE2ETraceController.h
in the header file.
Usage
Follow the instructions to enable end to end tracing using the standalone
SUPSupportability library. Once you have the traces loaded into a Business Transaction XML,
you can upload to SAP Solution Manager.
- Once tracing is enabled, create an instance of SAP
Passport.
SAP_ExtendedPassport* passport = [SAP_ExtendedPassport createPassport];
- Create an instance of TraceController and
TraceTransaction.
SUPE2ETraceController* traceController = [SUPE2ETraceController sharedController];
SUPE2ETraceTransaction* traceTransaction = [traceController createTrasaction];
- Initialize TraceStep and TraceRequest objects before forwarding any new
requests.
SUPE2ETraceStep * traceStep = [traceController createStep];
SUPE2ETraceRequest * traceRequest = [traceController createRequest];
- Set the tracing level.
[traceController setTraceLevel:1];
You can set any of the following trace levels.
Trace Level |
Description |
0 |
Specific to trace analysis on the client. No traces are triggered on
the server. |
1 |
Corresponds to response time- distribution analysis. This helps to
analyse the time taken on each server component. |
2 |
Corresponds to performance analysis. Performance traces are triggered
on the server side. Example: Introscope Transaction Trace, ABAP Trace, SQL
Traces and so on. |
3 |
Corresponds to functional analysis. |
- Add the SAP Passport and Correlation ID in the HTTP request header and send
it.
[m_HTTPRequest addRequestHeader:@“SAP-PASSPORT“ value:[theRequest PassportHttpHeader]];
[m_HTTPRequest addRequestHeader:@“X-CorrelationID“ value:[theRequest CorrelationIdHttpHeader]];
[theRequest markSending]
- Record all updates made to requests in the Business Transaction
XML.
[traceController updateRequestElementsInRequest:traceRequest withDictionary:Dictionary];
- Mark the data after receiving the first and last bit of
data.
[theRequest markReceiving]
[theRequest markReceived]
- Update the request with HTTP response header information. End the trace request and
step objects.
[traceStep endStep];
[traceRequest endRequest];
- Generate the Business Transaction XML and upload it to the
server.
[traceController getXML];
[traceController sendXML:<SAP Solution Manager>]