Job & Automation Monitoring Setup & Configuration

Prerequisites

There are no prerequisite steps to be done in SAP Cloud ALM. You need to have the role / authorization for Job Monitoring in SAP Cloud ALM, and you need to configure in your SAP cloud service(s) the push of job execution data as described under "Setup" below. This initial one-time activity needs to be done in every monitored service.

Setup

* additionally:

  • Make sure to have implemented:
  • Make sure to link application log messages to ABAP job executions:
    1. Call transaction CRIT
    2. Add "Auto-linking Applog-Handles for jobs"
    3. Add criterion that includes all jobs (see below)
    4. Activate the profile

In below example the linking is restricted to jobs executed in client 200. Please note, that with "Option" [=] the value * will be interpreted as *. For patterns make sure to use "Option" [x].

Configuration

Option to Set Run Time and Delay Threshold in Monitoring

In the Monitoring UI jobs are evaluated with a default Rating Rule that you can adjust, if you have role Job Monitoring Consumer. Please note, that the setting is not persisted, i.e. if you relaunch the application the default will be applied again. Below you see the default settings.


Option to Set Name of Job with Changing Name

In case of the ABAP job scheduler there is no job definition with a unique ID. When scheduling a job the user defines what shall be executed, gives a job name and on save this entity gets a run ID. The job name does not need to be unique as together with the run ID it is unique for the ABAP system. At execution of the job the next occurrence is determined, and the job data is copied to the next due date and gets a new run id value.

To be able to group the executions of a job for Job & Automation Monitoring a stable ID is formed by the data collector as a hash value:

 ID

 Hash of

JobId

 jobname + client + number of steps + job metadata[(step no + program + variant)]


If a job constantly changes its name (e.g. job name contains a time stamp), the formed JobId hash value is not stable, which does allow to group executions under one JobID. To enable the grouping for such a case, the JobId hash value is formed without the job name and on the monitoring UI, such a situation is indicated as follows:

 

You have the option to change the name given by the data collector (by pressing the pencil icon), so that the name of the job represents all related job executions.

Note 1: The actual (i.e. current) name of the job is displayed in the executions view and is also included into the notification mail. Using the filter option you can find the job in the list of jobs with the actual name.

Note 2: ABAP jobs with differently changing names that execute the same (i.e. client + number of steps + job metadata[(step no + program + variant)] are identical) are grouped together.

Configuration of Events

To configure events for alerting for specific jobs, you need to have role Job Monitoring Administrator assigned. Expand the configuration pane and then access the service, for which you want to configure alerting.

Per service you can define events of category:

  • Critical Execution Status: The event is raised, if the Executions Status of a job is rated red or yellow, which is the case if an execution aborts or finishes with errors or warnings in the job log. 
  • Critical Application Status: The event is raised, if the Application Status of a job is rated red, which is the case if an execution produces an application error (for an ABAP job error in SLG1 log) or yellow in case of an application warning. You have the option to restrict the event on the Application Status rating.
  • Critical Runtime: The event is raised if the run time of a job execution exceeds the threshold set by you.
  • Critical Delay: The event is raised if the start-delay (actual start time - scheduled start time) of a job execution exceeds the threshold set by you.

If you want events to be raised only for certain jobs you can make use of the filter options and specify the type of the job,  job ("Job / Automation Type"), the name of the job ("Job / Automation Name"), what is being executed ("Job / Automation Executable Name") or who is executing the executable ("Job / Automation Execution User"). The filter conditions for the different parameters are connected with AND for the same parameter with OR.

The filter options offered are "Is", "Is not" and "Contains". You can enter multiple values in one field. The entered value is interpreted as a string, if for example you want to get alerted:

  • for two distinct jobs, enter the job names in the "Job / Automation Name" filter
  • for a group of jobs sharing a job name pattern, use the "Contains" option (do not use * to indicate the pattern)

To get alerted, make sure to switch on Create Alert and save. If you want to stop to get alerted, you can switch off the Event Action, or deactivate or delete the event in the list of events. Note that events are not raised for services, if those are in Maintenance or Disruption state (maintained in Business Service Management).

In order to send notifications for alerts to an email address, 

  1. make sure that in the Notification Management app in Recipient Management the address is registered and in validity date.
  2. activate in the Job & Automation Monitoring Event Configuration the option Send Email To and enter the email address.

To get notified on every job execution failure, set "Raise Event Action" to "At Every Occurrence".

Housekeeping

 

In SAP Cloud ALM Job & Automation Monitoring data reorganization is as follows:

  • The data of individual executions are kept for monitoring depending on job frequency and deleted with a default rule that you cannot change. The rule is, that for every job at least the last 15 executions are kept, all from the last 3 days and all that are referenced in an alert.
  • Jobs that are deleted in the managed service (that are not scheduled any more) are removed from the database after 2 weeks together with the related executions and schedules.
  • The data of individual executions are aggregated for analysis and deleted by default  after 365 days. You can change the default to a value between 30 and 750 days.
  • Alerts are deleted 14 days after their last update. You can change this value. Note, that to avoid data growth for every alert, only the last 100 alerted executions are kept.

Troubleshooting

If the "Type" of a job or automation is missing, the reason is that run information exists without definition data.

In case of ABAP jobs, if the "Type" is missing for a small part of the jobs only (e.g. 1%), this could be a temporary issue, that disappears after one day as then resending is done. If the issue persists then the reason could be a bug in the data collector.

  • In case of an on premise ABAP system, make sure to have applied note SAP Note 3102288 and switch off the data collection for the job monitoring use case in transaction /n/SDF/ALM_SETUP and then switch it on again.
  • In case of a cloud ABAP system, the fix is automatically applied, so just switch off the data collection for the job monitoring use case communication arrangement SAP_COM_0527 and then switch it on again.

In SM37 all jobs are displayed, whereas in the monitoring application jobs that execute report RSPROCESS are not displayed. The reason is, that those jobs are elements of BW Process Chains. They are displayed as executables of the related BW Process Chain (job type SAP BW Process Chain).

With note 3102288 (version 31) parent PPF jobs are collected, but not the child jobs that execute reports RBANK_PROC_START or RBANK_PROC_END. Those child jobs are consequently invisible in the monitoring application. The reason for not collecting their execution data is, that the parent job runs until all child jobs have finished and if any of the child jobs fails, the parent job has a message in its job log. If the collector (as of ST-PI 7.4 SP20) finds such messages, it rates the parent job yellow.

Configuration to pause and restart data collection is offered by Job & Automation Monitoring, but depends on implementation in the managed system or service.

  • For ABAP based systems or services the availability of the implementation is as follows:
    • SAP S/4HANA Cloud: Implementation is delivered as patch to cloud systems from 25th of January 2023 onward.
    • SAP S/4HANA and SAP Business Suite (SAP NetWeaver Application Server for ABAP (higher than 7.40)) implementation is available with ST-PI 7.4 SP20 (RTC on 25th of September 2022)
    • Note that switch became inactive again after introduction of option to collect data for specific job types (in case of ST-PI with SP25). Solution: In managed system please switch off collection for Job Monitoring and then switch on again.
  • For SAP Build Process Automation (or SAP Intelligent Robotic Process Automation) the switch is not enabled, but data push needs to be configured in SAP Build. For an overview on CALM monitoring of SAP Build, please see here.

 

Question: We have activated job monitoring using transaction /n/sdf/alm_setup and see ABAP jobs, but the Application Status appears with GREY rating for all jobs. 

Answer: If all ABAP jobs appear with GREY Application Status rating, probably in the managed system "Auto-linking Applog-Handles for jobs" is either not activated or activated, but not properly configured (see information on CRIT maintenance above).

Please note, that most ABAP jobs do not write application log messages and will be rated with GREY Application Status rating. If a job writes into the application Log ("SLG1"), then in case of

  • success messages: Application Status rating is set to GREEN
  • warning messages: Application Status rating is set to YELLOW
  • error messages: Application Status rating is set to RED

 

Question 1: Exception details are not included in the notification mail for failing ABAP jobs (and the Exceptions view does not contain Job Log and Application Log information).

Question 2: Exception details are sometimes not included in the notification mail.

Answer 1: Please make sure that the prerequisite for exceptions to be collected for ABAP jobs is fulfilled:

  • ST-PI 7.40 SP20 or higher is implemented in the managed on-premise system
  • in /n/sdf/alm_setup use case Exception Monitoring is activated 
  • in the managed system using transaction CRIT "Auto-linking Applog-Handles for jobs" is activated

Answer 2: Please make sure in /n/sdf/alm_setup that Exception Monitoring is collected with the same frequency as Job Monitoring.

Assuming that

  1. a job / automation "failed" in the system / service for which you had created the event and 
  2. at alert creation the system / service was not in a downtime, that you had maintained in Business Service Management.
  • Check that in the event configuration you have switched on
    • "Create Alert" and / or
    • "Send Email To"
  • Check that the filter criteria are correct, i.e.
    • if you filter for a specific job, use "Is" condition and check that the value matches the value displayed in the monitoring UI
    • if you filter for several jobs, that share a string, use "Contains" condition and check that the string is part of the value displayed in the monitoring UI (do no use * to indicate a pattern) 
    • if you filter for several specific values, make sure to add the filter condition several times

A downstream action (like email) is triggered when there is a change in the event rating to yellow or red, if "Raise Event Action" is "At new occurrence". 

"At new occurrence" is the default to avoid notification flooding for frequently running jobs, that start to fail. You can change the setting to "At every occurrence", to get notified, whenever an execution fails.

Issue: In the Additional Alert Key we see job name FRN_ARP_0000001242. However, this job does not exist. The actual job names, that we see in SM37 are:

  1. FRN_GP_C2022111514563629923_001
  2. FRN_GP_C2022111514563629923_002
  3. ...
  4. FRN_GP_C2022111514563629923_012
  5. ...

Answer: As explained in the Configuration section under Option to Set Name of Job with Changing Name: In case of the ABAP job scheduler there is no job definition with a unique ID. To be able to group the executions of a job for Job & Automation Monitoring a stable ID is formed by the data collector as a hash value that contains the job name. If a job constantly changes its name (e.g. job name contains a time stamp), the formed JobId hash value is not stable, which does allow to group executions under one JobId. To enable the grouping for such a case, the JobId hash value is formed without the job name and on the monitoring UI you have the option to give to such a job a name that represents the group of jobs. It is this name, that will be used at alert creation.

Still forward navigation from the alert details via URL to the job in the managed ABAP system is supported.

Issue: We monitor ABAP jobs and in alerting or monitoring we click on "Run Id" value to navigate to the job in the executing system. The first part of the URL that is opening is not the correct one, as it goes directly to the URL of the Application Server. We are using SAP Web Dispatcher so in order to function correctly, it will need to access the URL of the SAP Web Dispatcher. 

Solution: Edit in Landscape Management the system and maintain in field "Logon URL" the URL of the SAP Web Dispatcher.

Symptom: In the Job & Automation Monitoring application, ABAP jobs /UI5/UPD_ODATA_METADATA_CACHE and /UI5/APP_INDEX_CALCULATE are displayed with red or yellow application status. When navigating to Exceptions view I can see no exceptions.

Reason: UI5 jobs delete the application log errors that they write quickly as the developers think that a longer persistence of the logs will lead to problems. As a consequence the exception details cannot be collected by Exception Monitoring (EXM).

Solution: To see the details of the exceptions you need to access the application log directly from SM37, by selecting the latest job executions and "Goto --> Application Log".

Question: After upgrading our managed system to ST-PI SP23 / SP25, we do not get data any more. In our SAP Cloud ALM tenant we have switched off the data collection and then on again, but without success. We do not get job monitoring data.

Answer: With SP23 and SP25, a new version for configuration was implemented to prepare for the option to collect specific job types from an ABAP system. Unfortunately, this requires a switch off and switch on of the job monitoring use case in the managed system (using transaction /n/sdf/alm_setup) after implementing SP23 / SP25.

Question: After August 2023, we do not get job data any more into SAP Cloud ALM tenant via SAP_COM_0527. We have switched off the data collection and then on again, but without success. Collection status goes to red.

Answer: We had an issue with the data collector, which is fixed, but unfortunately, this requires a switch off and switch on of the job monitoring use case in the managed cloud service (in the communication arrangement SAP_COM_0527 via which you push data to your SAP Cloud ALM Tenant).

Question: We see memory dump TSV_TNEW_PAGE_ALLOC_FAILED on managed system because /SDF/CALM_TASK_EXECUTOR is trying to read info for a huge number of work items, e.g. LCL_WI_LOG=>LIF_WI_LOG~READ_FOR_LOGHIST with IT_LOGHIST Table IT_3269[2342109x1226]

Answer: With latest version of ST-PI Job & Automation Monitoring collects by default workflow execution data. In this context a query is made that produces the issue, if you have no archiving for workflows. Please follow SAP Note 3144853 "SWWLOGHIST table size is increasing" and reduce the size of table SWWLOGHIST.

As a quick solution you could switch off data collection on the managed system for Job Monitoring (if you are not actively using job monitoring).

Please note, that we are working on offering to select on Job & Automation Monitoring UI the option to select specific job types for monitoring (i.e. you could then switch off job Type "SAP Business Workflow" until you have an archiving in place, but still monitor "SAP ABAP Job")

Question: I have connected my SAP Intelligent Robotic Process Automation tenant / my SAP Build Automation tenant and see automation executions with start and end time and status displayed in Job & Automation Monitoring, which is nice. However, I wonder about the following:

  1. In the configuration pane the Service tenant appears with red rating with text "Heartbeat Status NOT OK"
  2. The Application Status column is always rated grey
  3. Drill down into the details of one execution displays "No Data"

Answer: What you observe are current short comings of the implemented monitoring. In detail:

  1. Typically services send monitoring data and heartbeat information, which is a regular kind of ping, even if no monitoring data is sent to indicate that the service is available. This heartbeat information is currently neither sent from SAP Intelligent Robotic Process Automation nor from SAP Build Automation.
  2. The Application Status is displayed red, if there is an issue with sending out notifier messages as described here. In all other cases no information is provided and therefore the rating is grey.
  3. Typically job definition information (namely what is being executed by a job or automation) is sent as "job metadata". The information is displayed in Job & Automation Monitoring on drill down from an execution. Currently "job metadata" is neither sent from SAP Intelligent Robotic Process Automation nor from SAP Build Automation.

Question: Which authorization is needed to be able to access the managed system / service via the navigation URL?

Answer: It depends on the job type. Typically access to the local monitoring UI is sufficient, but there are some exceptions: 

  • for ABAP Jobs /SDF/AJM_SHOW_SM37 
  • for BW Process Chains object S_TCODE with value /SDF/AJM_DISP_BWPC 
  • for Application Jobs in S4 HANA on prem system some manual configuration is needed as described here.

 

Question: I have connected an SAP S4/HANA on-premise system to SAP Cloud ALM and see Application Jobs. I try to do the forward navigation from a failed job instance by clicking on the Run ID number. The URL https://<server>:<port>/ui#ApplicationJob-show?JobCatalogEntryName=&/v4_JobRunDetails/2FBBFAA0D4B4117396897A783D1774E7%20nrBRWzP produces http error "404 Not found". How can I enable the navigation?

Answer: In on-premise systems the Application Jobs tile is not part of any business catalog, so some manual configuration is needed as described here.

 

Question: For system maintenance, we had suspended all jobs using report BTCTRNS1 and after completion of the maintenance activities, we executed report BTCTRNS2 to release all jobs again and got many delay alerts. How can we avoid this?

Answer: All applications in SAP Cloud ALM for Operations listen to Business Service Management (BSM) and do not raise events for a service/system, if they are in Maintenance or Disruption state, i.e. if you have maintained for a system in BSM a "planned downtime" of such type.

Please note, that after execution of report BTCTRNS2 an ABAP system topically needs some time until the formerly suspended jobs are processed and batch processing is back to normal. So, please add some additional time to the "planned downtime", to avoid irrelevant delay alerts.

Question: After upgrading our ST-PI, we miss in the monitoring view most of the jobs with name "/AIF/*". How come?

Answer: Unfortunately, there were some customer cases, where "/AIF/" job executions, i.e. jobs that execute report "/AIF/PERS_RUN_PACK_EXECUTE" ran in such huge numbers (increasing the total number of job executions by a factor of 100(!)), that the data volume could not be handled by the data collector. As a consequence job monitoring did not work at all.

As AIF development is not able to optimize the number of jobs they create (they create one job per message), we were forced to exclude jobs that execute report "/AIF/PERS_RUN_PACK_EXECUTE" from being collected. Please use "Integration and Exception Monitoring" for AIF monitoring, e.g. ABAP Aborted Jobs filtering on job name starting with "/AIF/".

Customer Support

In case you encounter problems using or setting up Job & Automation Monitoring in SAP Cloud ALM, please report a case using the following component:

  • SV-CLM-OP-JM  - Job and Automation Monitoring Service

Please select your SAP Cloud ALM tenant when reporting the case.