oData Service Statistics Test
SAP NetWeaver Gateway is used to setup a connection between SAP business suite and target clients, platforms and framework. It offers development and generation tools to create OData services to different client development tools. OData is used to define best practices that are required to build and consume RESTful APIs. It helps you to find out changes, defining functions for reusable procedures and sending batch requests etc.
The OData service life cycle includes span of an OData service. Given below are the key steps to be considered in an OData Service Life Cycle.
- Activation of OData service.
- Maintaining OData service.
- Maintaining of models and services, up to the cleanup of the metadata cache.
- RESTful applications use HTTP requests to post data to create or update, read data and delete data. REST uses HTTP for all four CRUD (Create/Read/Update/Delete) operations.
- REST is a lightweight alternative to mechanisms like RPC (Remote Procedure Calls) and Web Services.
In environments where SAP applications are extensively in use, users may access the applications via SAP Fiori and the SAP Netweaver Gateway using OData services. If the method invoked by a OData service fails or takes too long to connect to the applications for the requests initiated by the users, then, the user experience to those applications may be adversely affected. To improve the user experience, it is necessary for the administrators to constantly keep a vigil on the functioning of the OData services. For this purpose, eG Enterprise offers an oData Service Statistics test. Using this test administrators can figure out where exactly does each oData Service method stagger - is it during the backend wait time? or Application sum time? or Application processing time? Administrators are also alerted to the device (mobile/tablet/desktop) through which users have initiated the maximum number of requests. Using this test, administrators can figure out which operation was being frequently performed by each method of the OData service - is it the read property? or read feed? or metadata? or batch operations? or create?
Target of the test : A SAP ABAP System
Agent deploying the test : An internal agent
Outputs of the test : One set of results for each Namespace: Service name: OData Service Method invoked by the SAP user on the target SAP ABAP System being monitored.
Parameter | Description |
Test Period |
How often should the test be executed |
Host |
Host name of the server for which the test is to be configured. |
Port |
Enter the port to which the specified host listens. |
Connection Type |
Specify how this test should connect to the target SAP ABAP System and collect the required metrics. By default, this flag is set to Application Server indicating that the test uses the IP address of a SAP ABAP Instance connected to the target SAP ABAP System to collect the required metrics. If this flag is set to Logon Group, then, the eG agent automatically connects to the logon group, chooses any one of the available SAP ABAP Instances within the group to connect to the target SAP ABAP System and collects the required metrics. |
SID |
Specify the three-digit server-specific unique identification code associated with the target SAP ABAP System here. The SID helps in uniquely identifying the target SAP ABAP System. |
Application Server |
This parameter appears only when the Connection Type flag is set to Application Server. For the eG agent to connect to the target SAP ABAP System and collect metrics, this test should be configured with the IP address of any of the SAP ABAP Instances associated with the target SAP ABAP System. Specify such IP address in this text box. |
Message Server |
This parameter appears only when the Connection Type flag is set to Logon Group. Specify the IP address of the SAP Message Server to which the target SAP ABAP System is connected to. |
Logon Group |
This parameter appears only when the Connection Type flag is set to Logon Group. A logon group is a group of servers that belongs to one SAP system. Logon groups are used to automatically distribute user logons to individual instances or to groups of SAP instances (Applications Server). Specify the name of the logon group that should be used by the eG agent to connect to any one of the SAP ABAP Instances within the group and collect the required metrics from the target SAP ABAP System. |
ClientName |
Specify the ID of the client system as what the eG agent will be connecting to the SAP ABAP instance. To know how to determine the client ID to use, follow the instructions provided in Determining the Client ID/Name for the eG Agent to Connect to the SAP ABAP Instance. |
SAPUser |
Typically, to connect to a SAP ABAP instance and run tests, the eG agent requires the permissions of a SAP user who has been assigned |
Password |
The password of the specified SAPUser. |
Confirm Password |
Confirm the password by retyping it here. |
SysNo |
An indicator of the TCP/IP port at which the SAP server listens. For example, for a server that listens at port 3200, the SysNo will be ‘00’. Similarly, if the SAP server port is 3201, the SysNo will have to be specified as ‘01’. Therefore, in the SysNo text box specify the system number of the SAP server with which the specified client communicates. To know the system number for the ABAP server being monitored, follow the procedure detailed in Identifying the SAP Router String and System Number. |
Router |
If the SAP client with the specified ClientName exists in a network external to the SAP server, then a router will be used to enable the server-client communication. In such a case, specify the router string of the router in the Router text box. If both the client and the server exist in the same network, then specify ‘none’ against the Router text box. To know what is the SAP Router string for the ABAP server being monitored, follow the procedure detailed in Identifying the SAP Router String and System Number. |
InstanceName |
This is set to none by default. This implies that the eG agent automatically discovers the instance name at run time. |
Timeout |
Indicate the duration (in seconds) for which this test should wait for a response from the SAP ABAP instance. By default, this is set to 120 seconds. |
JCO Version |
The eG agent uses the SAP JCO library to connect to the SAP ABAP system and pull out metrics. To enable the eG agent to make this connection and query the metrics, you need to specify the version of the SAP JCO library that the agent needs to use. For instance, to instruct the eG agent to use JCO v2.1.19, it would suffice if you specify the ‘major version number’ alone against JCO Version – in the case of this example, this will be 2.x. Note that if you have downloaded the SAP JCO CONNECTOR files for SAP JCO version 3 from the SAP market place (as instructed by Downloading the SAP JCO Connector files Required for Monitoring ), then the JCO Version configuration should be 3.x. |
Include Services |
By default, this parameter is set to none. If you wish to include only a few methods of the oData service in the scope of monitoring, then, specify a comma-separated list of methods in this text box. The default format for specifying a method is <Namespace>#<Service name>#<oData Service Method>. For example, a method can be specified as /UI2/#INTEROP#FeedbackLegalTextCollection. You can even include specific patterns in this text box. For example: /UI/#INT*,*INTER*, *#INTEROP# FeedbackLegal* |
Exclude Services |
By default, this parameter is set to none. If you wish to exclude a few methods of the oData service from the scope of monitoring, then, specify a comma-separated list of methods in this text box. The default format for specifying a method is <Namespace>#<Service name>#<oData Service Method>. For example, a method can be specified as /UI2/#INTEROP#FeedbackLegalTextCollection. You can even include specific patterns in this text box. For example: /UI/#INT*,*INTER*, *#INTEROP# FeedbackLegal* |
Response Time |
By default, this test is capable of pulling out metrics from the target SAP ABAP System irrespective of the number of OData Service requests processed. However, in some environments where large number of requests are processed per minute, the eG backend database may not be able to store such voluminous data. To avoid overheads to the eG backend database, administrators can set a desired value against this parameter. This will ensure that the eG agent collects metrics only for those OData Service requests that returned a response with a time limit (specified in MilliSeconds) greater than the value configured against this parameter. |
DD Frequency |
Refers to the frequency with which detailed diagnosis measures are to be generated for this test. The default is 1:1. This indicates that, by default, detailed measures will be generated every time this test runs, and also every time the test detects a problem. You can modify this frequency, if you so desire. Also, if you intend to disable the detailed diagnosis capability for this test, you can do so by specifying none against DD frequency. |
Detailed Diagnosis |
To make diagnosis more efficient and accurate, the eG Enterprise embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option. The option to selectively enable/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:
|
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Total response time |
Indicates the total response time for all requests initiated for this method by the user during the last measurement period. |
Millisenconds/request |
For each odata service method, the detailed diagnosis of this measure lists the top 5 slow requests for which the response time was slower than usual. For each slow request, the detailed diagnosis lists the Namespace, Service, Entity type, Timestamp, Request address, Operation, Batch operation, Overall response time, Application time, Application Processing time, Framework time, Hub Overhead time, Backend overhead time, RFC overhead time, Request size, Response size ,Entries, Device, Client, Format, Consumer, Version and ID. |
Backend wait time |
Indicates the time taken by the SAP gateway framework to wait for the work process or operation to finish for the requests initiated for this method by the user during the last measurement period. |
Milliseconds/Request |
|
Application sum time |
Indicates the time consumed for implementation of the SAP gateway service implementation in multiple operations (batch) for the requests initiated for this method by the user during the last measurement period. |
Milliseconds/request |
|
Total requests |
Indicates the total number of requests initiated for this method by the user during the last measurement period. |
Number |
Compare the value of this measure across the users to figure out the user who has initiated the maximum number of requests. |
Request rate |
Indicates the number of requests initiated by this user per minute. |
Requests/min |
|
Request size |
Indicates the total size of each request initiated for this method by the user during the last measurement period. |
KB/request |
|
Response size |
Indicates the size of the response received for each request initiated for this method by the user during the last measurement period. |
KB/request |
|
Entry rate |
Indicates the number of entries recorded per request initiated for this method by the user during the last measurement period. |
Entries/request |
|
Framework time |
Indicates the time spent at the SAP gateway framework by each request initiatedfor this method by the user during the last measurement period. |
Milliseconds/request |
|
Application time |
Indicates the time consumed for implementation of the SAP gateway service for the requests initiated for this method by the user during the last measurement period. |
Milliseconds/request |
|
Application processing time |
Indicates the time consumed by components other than SAP Gateway (e.g. RAL, Excel-format) for the requests initiated for this method by the user during the last measurement period. |
Milliseconds/request |
|
Framework overhead |
Indicates the ratio of framework time and the total requests initiated for this method by the user, expressed in percentage. |
Percentage |
|
Backend time |
Indicates the time spent by the requests initiated for this method by the user at Gateway framework in the backend during the last measurement period. |
Milliseconds/request |
|
RFC overhead time |
Indicates the time spent by the RFC requests initiatedfor this method by the user on the network between the hub and the backend. |
Milliseconds/request |
|
Hub overhead time |
Indicates the time spent by the requests initiated for this method by the user at Gateway framework on the hub system. |
Milliseconds/request |
|
Mobile requests |
Indicates the number of requests initiated for this method by the user through mobile device. |
Requests |
Compare the value of this measure across users to figure out the user who is initiating maximum number of requests through mobile device.
|
Mobile request rate |
Indicates the rate at which requests were initiated for this method by the user through mobile device. |
Requests/min |
|
Tablet requests |
Indicates the number of requests initiated for this method by the user through Tablet. |
Requests |
Compare the value of this measure across users to figure out the user who is initiating the maximum number of requests through Tablet.
|
Tablet request rate |
Indicates the rate at which requests were initiated for this method by the user through Tablet. |
Requests/min |
|
Desktop requests |
Indicates the number of requests initiated for this method by the user through desktop. |
Requests |
Compare the value of t his measure across users to figure out the user who is initiating the maximum number of requests through desktop. |
Desktop request rate |
Indicates the rate at which requests were initiated for this method by the user through desktop. |
Requests/min |
|
Read property operation rate |
Indicates the number of read property operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
Read feed operations rate |
Indicates the number of read feed operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
Read entry operations rate |
Indicates the number of read entry operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
Metadata operations rate |
Indicates the number of metadata operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
An OData metadata document is a representation of the data model that describes the data and operations exposed by an OData service. |
function operations rate |
Indicates the number of function operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
document operations rate |
Indicates the number of document operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
create operations rate |
Indicates the number of create operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|
batch operations rate |
Indicates the number of batch operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
An OData batch request is represented as a multipart MIME v1.0 message, a standard format allowing the representation of multiple parts, each of which may have a different content type, within a single request. Batch requests allow grouping of multiple operations into a single HTTP request payload. |
other operations rate |
Indicates the number of other operations performed per minute for the requests initiated for this method by the user during the last measurement period. |
Operations/min |
|