Show TOC

Process documentationOptimize Performance of Event Calculation Locate this document in the navigation structure

 

The core of E2E Monitoring and Alerting Infrastructure (MAI) is the Event Calculation Engine, which performs the most important MAI calculations. The Event Calculation Engine runs every minute by default, in the job SAP_ALERT_CALCULATION_ENGINE, which runs the report ACE_CALCULATION_CONTROLLER. Schedule the job in SAP Solution Manager configuration (transaction SOLMAN_SETUP), with the following steps:   Basis Configuration   Automatic Configuration   Create Alert Calculation Jobn  .

The job has the following tasks as well as calculating events:

  • Load metrics from the metric store

  • Notifications for reporting about changes to metric work modes

  • Calculation of status and alerts by the Event Calculation Engine

  • Calculate metric aggregates

  • Calculate alert information for the Alert Consumer Connector

  • Pass information about long-term storage to the Business Warehouse

  • Other calculations

You can display the run time of the job and these tasks. Proceed as follows:

  1. Go to the Self-Monitoring overview view (Self-Monitoring Overview View).

  2. Go to the component   Event Calculation Engine   Total Run Time of the Event Calculation Engine  .

  3. Start the tool with ECE Performance History.

  4. In the group box Change Period, you can specify the time period for which to display the run time of these tasks.

  5. Expand the lower group box Performance Run Time, to display the job run times.

Although the job runs every minute, a run time of more than a minute causes no problems (as long as there are enough free background work processes), because several instances of the job can run at the same time. Parallel processing is only limited by the fact that when the metrics of a category are being processed, this category is locked to other job instances. There are four categories - Availability, Performance, Exceptions and Configuration. So up to four job instances can run in parallel.

If the run time of the job is still too long, check the following:

Process

Does the job have runtime errors?

Error messages for this job are not buffered, they are written directly to the database, which costs performance, so check for errors if you experience performance problems. If errors occur, they are output in the Self-Monitoring overview view in the component   Event Calculation Engine   Event Calculation Errors  .

Analyze the errors as follows:

  1. Start the application log (transaction SLG1) and enter the object E2E_ALERTING and subobject ENGINE.

  2. The logs are ordered by job executions, error messages are highlighted in traffic light colors. Expand the runs in which errors occurred; and expand the rows by double-click.

  3. The messages of the job run are displayed at the bottom of the window. Display the error message long text.

  4. A solution is usually proposed, as well as the cause of the error. Proceed according to the long text.

One possible cause of errors is an incorrect or out-of-date configuration. If errors occur, repeat the configuration of the managed objects affected. Proceed as follows:

  1. Run the Monitoring and Alerting analysis tools by calling transaction MAI_TOOLS.

  2. Go to expert mode by choosing Activate Expert Mode (Activate Expert Mode).

  3. In the Configuration Tools group box, choose Find Config. Problems in Logs.

  4. The entry points at which event calculation errors occurred in the last 15 minutes are shown in a new window. Choose the entries with the technical scenario T_SYS_MON (System Monitoring) consecutively, by double-click, and reconfigure these points of entry, by choosing Execute (Execute) in the next screen.

  5. Wait for 15 minutes and run this analysis tool again to determine whether the event calculation errors still occur.

Is the event calculation load distribution optimized?

When scheduled, the job runs the first time on any instance. Memory space for each of the four metric categories is reserved in the shared memory of this instance. The shared memory in technical monitoring comprises the status for events and metrics, and the last measured values of the metrics.

This determines the instance for subsequent runs of the job, if no errors occur (see below). If the memory or CPU of the instance arbitrarily chosen for the first job run are inadequate, you can move the entire calculation, or selected categories.

Note Note

Throughout it's run time, the job nearly always fully occupies one CPU. Parallel processing on several CPUs is not possible within one category. Servers with less, but more powerful, CPUs are thus more appropriate than those with a lot of weaker ones.

End of the note.

To move the event calculation to another instance, separately by categories, proceed as follows:

  1. Run the Monitoring and Alerting analysis tools by calling transaction MAI_TOOLS.

  2. In the Web Dynpro Tools group box, choose Open Web Dynpro Tools.

  3. In the Support Tools for End-to-End Monitoring & Alerting screen, choose Shared Memory Tools.

  4. Go to the Shared Memory Relocation Tool tab. The Current Shared Memory Status tab shows which category is being processed by which instance. The shared memory required, and the free shared memory in each instance are also displayed.

  5. You can display on which instance the event calculation is to be performed, by category, in the Create Relocation Request group box. You can move, as proposed by SAP, by choosing Relocate Categories as Proposed. In both cases, the move takes place the next time the job runs.

Note Note

Moving shared memory need not be permanent. If the events cannot be calculated for a category five times consecutively because of a missing or incorrect instance, the shared memory for this category is recreated in another instance, and the calculation for this category is performed on this instance. The shared memory is recreated on another instance without a previous move, so the calculation is more important than retaining shared memory contents.

End of the note.
Are all managed objects relevant for Technical Monitoring?

To improve the performance of the event calculation, check whether Technical Monitoring is really relevant for all managed objects for which it is active.

You can activate and deactivate it per monitoring use case, in the Solution Manager configuration (transaction SOLMAN_SETUP). The handling depends on the monitoring use case; to remove a system from s system monitoring, proceed as follows:

  1. In SAP Solution Manager configuration, choose   Technical Monitoring   System Monitoring  .

  2. Go to the Define Scope step.

  3. Go to edit mode, select managed objects, and choose Remove Monitoring.