How Your SAP System is Like a Formula One Race Car

By: Kim Snow    Posted: April 29, 2016    Category: SAP, SAP Basis, SAP System Monitoring

In my previous two blog posts, I evangelized about SAP HANA and the revolutionary new SAP flagship product S4/HANA. And why not? They are the state-of-the-art at SAP and the future for virtually the entire SAP customer base. In contrast, this post turns to an old school topic. But a topic that is fundamental and critical to the successful operation and ROI of systems that often cost many millions of dollars to implement and maintain: System monitoring.

In well managed SAP environments, system monitoring is a discipline so deeply ingrained in the operations culture that giving it short shrift would be unfathomable. Nevertheless, in too many organizations it gets overlooked due to over-confidence, ignorance, or the desire to cut costs. However, the price of inadequate system monitoring can be high: repeated errors, wasted hours of troubleshooting, poor performance, and downtime.

If business systems were cars, SAP systems would be Formula One race cars. Just as F1 cars employ highly sophisticated electronics and computer systems to automatically monitor and analyze thousands of data points to better manage the cars and improve their reliability and performance, so too should SAP systems make use of automated monitoring. Solution Manager monitoring and SAP EarlyWatch Alerts are two critical components that serve the purpose of automating system monitoring and in future posts I’ll dive into details of each. In this post, however, I want to focus on the human element.

In the F1 world, despite all the cutting edge automated systems used to monitor and manage the race cars, nothing can or ever will replace the pit crews and mechanics whose hands-on maintenance and intimate knowledge of the cars ensure peak performance. Likewise, when it comes to SAP systems, a hands-on approach is critical for optimal outcomes. The pit crews and mechanics of the SAP world are, of course, the members of the Basis team.

Being a “Basis guy” from way back (think dial-up modems!), there is a checklist of monitoring elements that I and the Basis engineers I’ve worked with during my career have relied on to provide a snapshot of the health, stability, and smooth operations of the systems left in our charge. Running through that checklist not only serves the end of system monitoring, but it also establishes an intimate knowledge of the systems, how they are used, the ebbs and flows of demands and system reactions to monthly, quarterly, and annual processes, as well as a host of information regarding the idiosyncrasies of the systems in the unique environments where they exist.

So, “what exactly should the Basis team be monitoring”, you ask? Well, in the interest of relevance to the largest segment of customers, the checklist below focuses only on ABAP stacks and the database specific elements align with MS SQL Server. Discussions of HANA Studio, JAVA stacks, Wily Introscope, the various differences given Oracle or DB2, etc., will have to wait for the future. After all, this is a blog post not a book, right? So, without further ado, below is the checklist your Basis team should be using to help ensure the peak performance and smooth operation of your SAP systems.

SAP System Monitoring Checklist

General

  • SM51 Servers (Daily)
    • Check the status of all system application server instances.
  • SM50 Process Overview (Daily)
    • Check the work process status on each application server instance.
  • SM04 Sessions (Daily)
    • Examine all dialog sessions on all application servers for old or hung sessions.
  • SM12 Locks (Daily)
    • Examine record locks currently held in the system for old locks that may interfere with the health of the system
  • SM13 Update Requests (Daily)
    • Examine system for failed update requests. Failed update requests should be addressed and restarted if possible. The root cause for failed updates should be investigated to ensure the consistency and health of your data.
  • SM21 System Log (Daily)
    • Examine logged errors that are not covered in other monitoring elements. These are items that could indicate a system health issue and should be investigated and corrected to prevent unexpected outages.
  • SM35 Batch Input Sessions (Daily)
    • Incorrect
      • Examine batch input sessions that are in “Incorrect” status. These are indicative of a failure during processing and should be investigated.
    • In Process
      • Examine batch input sessions that are still processing. These need to be investigated and potentially re-executed.
    • In Background
      • Examine batch input sessions that are still processing in background. These need to be investigated and potentially re-executed.
    • Being Created
      • Examine batch input sessions that are in the status being created. These are indicative of a failure during the creation and should be investigated.
    • Locked
      • Examine batch input sessions that are locked. These are indicative of a failure during processing and should be investigated.
  • SM37 Background Jobs (Daily)
    • Canceled
      • Examine background jobs that have a canceled status. The reason the jobs canceled should be investigated and corrected so that they will execute properly in the future.
    • In Delay
      • Examine background jobs that are currently delayed and not executing. The root cause needs to be corrected so that the job will execute and future jobs will execute properly.
    • Active in Excess of 12 Hours
      • Examine background jobs that have been executing in excess of 12 hours to determine the cause of the long runtime.
  • ST22 ABAP Runtime Errors (Daily)
    • Examine ABAP runtime errors. SAP provides fixes for ABAP runtime errors in the form of SAP Notes and patches to the SAP kernel. Customer developed objects should be reviewed by the developer team
  • SP01 Spool Request Errors (Daily)
    • Examine spool requests for errors.
  • SMQ1 Outbound Queues (Daily)
    • Not Processed
      • Examine qRFC outbound queues to ensure that all processing has completed.
    • In Error
      • Examine qRFC outbound queues for entries in error status.
  • SMQ2 Inbound Queues (Daily)
    • Not Processed
      • Examine qRFC inbound queues to ensure that all processing has completed.
    • In Error
      • Examine qRFC inbound queues to ensure no entries are in error status.
  • SM58 Transactional RFC’s (Daily)
    • Not Processed
      • Examine tRFC queues ensure that all processing has completed.
    • In Error
      • Examine tRFC queues to ensure that no entries are in error status.
  • SOST Email & Fax (Daily)
    • Not Sent
      • Examine email and fax queue to ensure that entries are not unexpectedly remaining in the queue.
    • In Error
      • Examine email and fax queue for errors in the dispatch process.
  • ST02 SAP Buffers (Weekly)
    • Examine memory buffer pools that can have an impact on end user performance.
  • ST03N Workload (Weekly)
    • Examine response times to ensure that your application servers are performing adequately.

Database

  • DB02 / DBACOCKPIT (Daily)
    • Data & Log Files (Daily)
      • Examine data and log files for issues that degrade performance.
    • Backups (Daily)
      • Examine the status of your backups.
    • Planning Calendar Jobs (Daily)
      • Examine DBA Planning Calendar jobs for failures or issues.
    • SQL Error Logs (Daily)
      • Examine log entries for severity codes in excess of 16. All severity codes in excess of 16 should be investigated to determine the root cause.
    • I/O Performance (Weekly)
      • Examine current statistics for database I/O performance.
    • Largest Tables (Weekly)
      • Examine 5 to 10 largest tables in database. This information can be used to see if there is growth that can be managed by archiving, deletion, reduction or avoidance.
    • Fastest Growing Tables (Weekly)
      • Examine 5 to 10 largest tables in database. This information can be used to see if there is growth that can be managed by archiving, deletion, reduction or avoidance.
    • Scheduled SQL Agent Jobs (Weekly)
      • Examine standard SQLAgent jobs for failures.
    • Missing Objects in the Database (Weekly)
      • Examine database for missing tables and indexes.
    • Unknown Objects in the Database (Weekly)
      • Examine database for unknown tables and indexes that are not defined in SAP. Any such objects cannot be used by SAP and should therefore be corrected.
    • Inconsistent Objects in the Database (Weekly)
      • Examine database for inconsistencies between the object information in the database and SAP.
    • Other Objects Missing or in Error (Weekly)
      • Examine database for additional missing objects, inconsistencies, and errors.

Operating System

  • ST06 (Daily)
    • CPU (Daily)
      • Examine 24 hour CPU history for excessive utilization indicating degradation in system performance.
    • Memory (Daily)
      • Examine 24 hour memory history for situations where excessive memory utilization affected system performance.
    • Swap (Daily)
      • Examine 24 hour swap history for situations where excessive memory paging affected system performance.
    • File Systems (Daily)
      • Examine file system usage for potential detriments to the health of the system.

Just as the monitoring and maintenance of F1 race cars would be incomplete without the hands-on attention of pit crew technicians and mechanics, so too the monitoring and maintenance of SAP systems is incomplete without the watchful eye, analysis, and understanding of a diligent Basis team checking out the systems with a hands-on approach. Check with your Basis team and make sure that the hands-on monitoring outlined above is part of your overall system monitoring strategy. If it isn’t, it should be. I’m of the unwavering opinion that it should be used by Basis teams in every business running SAP. As is the case with Formula One race cars, the human element is critical for monitoring and achieving the peak performance of SAP systems. It may be an old school approach, but it’s never gone out of style.

About the Author: Mark DeMeno

Mark is Bayforce’s Director of SAP Solutions and has been with the company overseeing our SAP project and Managed Services business for the last 4 years. He is an SAP Certified HANA Consultant with more than 15 years’ experience delivering SAP Solutions and providing strategic thought leadership within the SAP space. Mark lives in the Chicago area with his wife and four children.  Connect with Mark on LinkedIn or email him at mdemeno@bayforce.com.

LET’S GET TO WORK

We’re here to help. Call or email any time.