ABAP instance response time

Purpose

ABAP response time is one of the key metric to measure system performance as experienced by the users.
It is important to detect any performance drop in order to react before too many users get impacted. It will watch for the response time of **DIALOG**, **SPOOL** and **UPDATE** tasks.
It will also focus on specific database response time and steps rate to watch for system utilization.
You can be alerted when a performance drop is detected or if system utilization increases above a limit, and constantly send those metrics to you monitoring system for dashboards or reports.

Configuration hints

To start monitoring ABAP response time, create rules in the surveillance table. You will have to create a rule per task that you want to monitor. Select the task with dedicated combo box.

Analyze period This monitor will compute response time of transactions occurred within a period of time. This operation is potentially resource consuming on the target system and we intentionally limited the period to a configurable time between 5 min to 30 min Periods of 1 or 2 days are also available, but are using consolidated data from SAP.

Max response time: This metric is the average response time per step of the transactions occurred in the period, and belonging to the configured task. You can receive an alarm if the response time is over the threshold and send its value as a metric.

Database response time: This metric is the average response time per step of the database, which is a part of the total response time. A high value would indicate performance issues with the DB. You can monitor its absolute value or the ratio with the total response time.

ABAP steps rate: This metric is the average number of steps per minute computed over the period. This indicates the real utilization of the system. You can send an alarm if this value increases too much, and send it in a metric

Minimum steps: You can set a minimum number of steps required to compute the response times metrics. This can be useful to prevent false alarms when response time is high because of system idleness Thresholds are independent from each other, and can be set to 0 if no check is requested

Report configuration

Use the suveillance table of this monitor to customize the information to include in the daily report. The period field will be ignored, the response time will be computed over the period of the report (24h by default). For a given task, you can activate the report checkbox to reflect the rule in the report, and have severity colors used when a threshold is reached

Surveillance table

Parameter	Description
Active	Use this field to activate or deactivate a line of configuration.
Task	Defines the task to watch
Max response time (ms)	The threshold for the average time per step (Milliseconds) for a given task, within the configured period
Max DB response time (ms/%)	The threshold for the average DB response time. Can be absolute value (Milliseconds) or a percentage of total response time (in that case, specify the % unit).
Max steps rate (steps/min)	The threshold for the average number of steps per minute over the configured period.
Min step count	The minimum number of steps encountered within the period. If below the limit, response times won't be computed and no alarms will be sent.
Period (min)	The period of time used to compute response time. If set to 10 minutes, it will look for the steps that occurred 10 minutes before the start of the check.
Severity	The level of severity of the alarm generated by this line of surveillance.
Auto clear	If checked, the alarm will be cleared as soon as the alarm condition is not met anymore.
Alarm tag	This field allows to add custom text within the alarm message. %MSG% variable will contain the actual generated message and can be used such as: “my_prefix %MSG% my_suffix”. By default, tag will be used as prefix.
Alarm	If checked, this line of surveillance will be used for alarm generation.
Metric	If checked, this line of surveillance will be used for metric generation.
Report	If checked, this line of surveillance will used for showing threshold and severity in the daily report

Examples

Active	Task	Max response time (ms)	Max DB response time (ms/%)	Max steps rate (steps/min)	Min step count	Period (min)	Severity	Auto clear	Alarm tag	Alarm	Metric	Report
true	DIALOG	300	100	1000	10	MAJOR	true	true	false	false

Effect : Watch for DIALOG tasks of the last 10 minutes. Generates a MAJOR alarm if avg resp. time is over 300 ms or if DB resp. time is over 100ms. No check on steps rate.

Examples

Active	Task	Max response time (ms)	Max DB response time (ms/%)	Max steps rate (steps/min)	Min step count	Period (min)	Severity	Auto clear	Alarm tag	Alarm	Metric	Report
true	SPOOL	300	30%	500	1000	30	WARNING	true	true	false	false

Effect : Watch for SPOOL tasks of the last 30 minutes. Generates a WARNING alarm if avg. resp time is over 300 ms, or if DB resp. time is greater than 30% of total resp. time, or if the steps rate is over 500 per second.

Generated metrics

metricId	metricUnit	metricTarget	metricDescription
ABAP_RESPONSE_TIME	Milliseconds	TASK:PERIOD	The total response time computed over the period
ABAP_DB_REQUEST_TIME	Milliseconds	TASK:PERIOD	The database response time computed over the period
ABAP_DB_REQUEST_TIME_RATIO	Percent	TASK:PERIOD	The ratio of the database response time over the total response time
ABAP_STEPS_RATE	Steps/Minutes	TASK:PERIOD	The number of steps per minute