ABAP Stack Checks:: SM50: (Process Overview)
ABAP Stack Checks:: SM50: (Process Overview)
ABAP Stack Checks:: SM50: (Process Overview)
Proactive monitoring of the SAP systems, will help to understand issues in advance & helps us to take corrective
actions and thus will lead to lesser downtime of the systems, improving profitability of the business
organisation.
Monitoring can be focused on ABAP stack(including database checks), Java Stack and Oslevel checks.
This transaction code will be useful to view the processes that are running currently in an sap insance. In this
view you can check whether there are free workprocesses to execute the processes. If all the workprocesses
are in running state and no work process is idle it means that wait times will increase for the processes that are
waiting in the dispatcher queue leading to performance degradation. If you find that there are no free
workprocceses for maximum times that you may consider, increasing the number of workprocesses.
This transaction code will be useful to view the processes that are running across all instances/application
servers of a SAP system. Similar to SM50 checks can be done in this transaction as well.
This transaction code will be useful to view all the hostnames and application servers status. If any application
server is down, the same can be identified using status of the server column. We can also figure out different
Message types (Dialog, Batch, Update, Upd2, Spool, ICM etc) configured for the respective servers.
This transaction code will be useful to view all the sap locks that are present in the system. As part of
monitoring, we need to look for any old sap locks that are more than 1 day. If any such locks, we need to
analyse the reason for that lock for such longer duration and take actions accordingly. A lock can be set for
such a long duration due to a long running background job or a lock is not released due to an application error
or a program terminated abruptly but lock not released etc.
This transaction code will be useful to view all the abap dumps that have occured in the system on a given day.
As part of daily monitoring, it is the responsibility of the basis administrator to analyse the dumps and take
necessary actions to avoid issues.
Some of the examples of abap dumps are timeout issue, database space issue, spool overflow issue etc
This transaction is useful to view the log of the sap system for various operations. This log will be very useful to
identify various issue in advance and to take necessary measures. System log is the place to check out for any
timeout, network issues, database space issues, message server issues, spool overflow, locktable overflow etc
issues.
Additional details :
This transaction is useful to figure the status of update system. Incase an update is inactive we can figure out
the same from this transaction and necessary action can be taken and update can be activated again.
Update got deactivated. what is the reason for update deactivation? How to activate the update ?
SM14 transaction can be called internally from SM13. These both transactions are useful for update
administration.
In SM13, you can select status (canceled, to be updated, v1 executed, v2 executed, all ) and time interval
during which you would like to view the status execute to check the overview of updates as per the status and
time interval selected.
Buffer statistics like hitratio, swaps, db access details, size of buffer and free size of buffer etc
Important statistics related to Roll area, Page area, Extended memory and heap memory
As a basis administrator, it is our responsibility to ensure there is more hit ratio for the buffers and less swaps
to ensure efficient performance of the sap system. In case you see there are more swaps and less hit ratios for
most of the buffers, then tuning buffers to be carried out to ensure optimal performance.
This transaction will be useful to schedule various database backups & clean up jobs like ( whole database
backup offline/online, Full backup online/offline, incremental backup offline/online, redolog backup, update
statistics, check db, cleanup logs, compress database, verify database, initialize tape and validate structure
jobs).
In this transaction, you can also check the status of every job that was scheduled and can reschedule in case of
failures.
This transaction will be useful to have an overview of jobs with different statuses.
As part of daily monitoring, SAP basis administrator should use this transaction to findout canceled jobs and
active jobs(for eg: long running - more than 24hrs etc).
Incase of canceled jobs, root cause for the failure to be figured out from the logs of the respective job and to be
actioned by rescheduling etc.
Incase of long running jobs, we need to figure out the reason for long running and action them accordingly.
In SM37, using extended job selection option, we can even select the jobs based on start condition, steps (like
abap program, external command or external program), period etc
This transaction will be useful for (oracle) database administration. In this screen, goto Alerts and drill down
further. Click on "Database Check" to find out any errors or warnings related to database like
MISSING_STATISTICS, STATS_TOO_OLD, LAST_BACKUP_FAILED, LAST_ARCHIVE_FAILED etc. After going
through the error or warning in details take necessary corrective actions based on the error like running update
stats again, re-triggering backup etc
Under Alerts, you can view Alert monitor which will summarize status of the database under different heads like
Space Management
Performance
Backup/restore
SAP Consistency
Health
Drill down on each of these to find out potential problems. These are color coded for ease of administrator (Red
for errors, yellow for Warnings and Green for OK status)
For Eg: If PSAPSR3 tablespace is >90%, you can see Space management in red color. Then it is the
responsibility of Basis administrator to take necessary actions on the same.
This transaction is useful to find out the status of spool request and output request. In SP01 transcation, you
can list the spool requests or output requests between a given interval.
In the list generated, you can check out the status of spool requests and findout any errors by drilling down
further.
For eg: if so many spools are in waiting status, find out whether output device is available or not.
If many spool are in error status, figure out if there is any network issue and take necessary actions.
What are the different Spool statuses and their significance?
If customers complain that they are not able print anything from SAP, check out whether there is any spool
overflow.
SXI_Cache : This Tcode is specific to XI or PI system. This Tcode is used to findout whether cache refresh is
happening or not. Incase if cache refresh is happening successfully, it will indicate the same in green color.
Otherwise it will be in red indicating a problem with cache refresh.
If there is a problem with cache refresh then basis administrator has to troubleshoot the same.
SLDCHECK : This Tcode will be useful to figure out whether connection to the SLD system from the system on
which you are testing is fine or not. In case the connection is fine, all checks will appear in green. Incase of any
issues, it will appear in red or yellow and then basis administator has to troubleshoot it and make sure
SLDCHECK is working fine.
Ensuring SLDCHECK is working fine is important to keep all systems in the landscape in sync.
SXI_MONITOR : This TCode is specific to XI or PI system. This transaction will be useful to figure out any
errors or warnings in the processing of XI or PI messages. In case of any issues, this needs to be informed to
functional team and should be troubleshooted accordingly with the functional team inputs.
DBO1 : This transaction code is useful to findout the database locks that are present in the SAP system.
As part of daily monitoring, SAP Basis administrator has to figure out if there are any long pending locks more
than 1 day etc and analyse reasons for the same. Sometimes if programs/jobs got terminated abruptly without
removing the database locks set, this will lead to performance issues as other programs which needs that lock
cannot set etc and they have to wait indefinitely as these locks won't get released automatically. In case of any
long pending locks, Basis administrators should contact DBA team if any an dfigure out the reason for these
locks and action accordingly
What are the various java reports available in Java stack of SAP and what is their significance?
How to view log and traces in java stack of SAP?
-----------------------------------------------------------------------------------------------
JAVA Monitoring
Contents :
6. Session Monitoring
9. Checking System availability using Management Console(SDM, Msg server, Enqueue server, Java nodes etc)
10. Check various logs(work directory logs, jcontrol, default trace, application log etc)
Java Monitoring :
Place the link of the respective java application in the browser and check whether the java application is opening:
For example:
http://baakaprd.company.com:50000/irj/portal
Check tablespaces occupancy levels at Oslevel and make sure sufficient space is there and if any tablespace is 100% full,
action the same
Check server node status at oslevel or through management console and action and bring up the java again.
To estimate the user load and to check the number of users logged onto the java portal :
These reports includes a chart of the memory usage of a cluster node and a chart related to the system and application thread
pool.
Here following reports can be taken by selecting the respective report from the drop down provided:
Capacity Planning : This report includes a chart representing the requests sent to J2EE Engine, a chart for the number of http
and security sessions, and a chart of the communication between J2EE nodes
Resource Consumption : This report includes a chart of the memory usage of a cluster node, and a chart related to the system
and application thread pool
Error Statistics: This report includes a chart representing a collection of counters useful for investigating problems. There are
also charts that give an overview of timeouts and the size of log files
Application Activities : This report includes a chart that represents the history of the activities of deployed applications
Slowest requests
Slowest components
User activities
Current activities
Monitor Browser
However from monitoring perspective, resource consumption report is most important to analyse the memory consumption.
Select resource consumption from the dropdown to view the memory statistics as below:
Click on Go to Detailed Chart link of the respective report to view detailed chart as below
Click Hint on charts link to analyse the report better.
Select the respective Instance, Cluster node and Time period from the provided dropdown boxes to view the reports
belonging to the same
--------------------------------------------------------------------
To check Logs and Traces, navigate to System Management -> Monitoring -> Logs and Traces
http://faqsa6.comapn.com:50013
SDM, Dispatcher, Server0 and server1 node status can be checked here:
Various work directory logs, availability log, application log and default trace can be checked here :
Availability log :
Sapstart log:
Dev_jcontrol log :
Dev_server0 log :
To check the status of message and enqueue servers, check the process list under scs instance as mentioned
below :
To check various logs related to message server, enqueue server, jcmon check the logs under SCS instance as
mentioned below :
LiveCache Monitoring
This article answers following queries:
What are the monitoring checks for live Cache in SCM or APO System?
How to check Caches, Heap usage, data area and Log area in Live cache of APO or SCM system?
-----------------------------------------------------------------------------------------
This article explains you how to monitor/view various paramaters, parmeter history, OMS locks, SQL locks, cache usage, exclusive waits,
database messages, various configuration related to memory. This knowledge will be very much useful to troubleshoot and fix the
problem in case you encounter any performance issues in Livecache system.
Please login into livecache system using LC10 transaction and providing LCA in the name of database connection as below. Click on
Pushbutton Livecache Monitoring to proceed further.
System redirects to the following screen. As shown, in the screen, please click on Activity Overview item to view
details/statistics related to
SQL Statements
I/O Activity
Lock Activity
Logging Activity
************************************************************************
In SAP, parameters are used to set the configuration and define the functionality of an sap system like
number of workprocesses, buffer size, locktable size etc.
Static
Dynamic
Static are the parameters those won't take effect immediately the value is set. Restart of an sap system is
required for them to take effect.
Dynamic are the parameters those will take effect immediately in the run time. Restart of an sap system is
not required for them to take effect.
Parameter can be differentiated whether it is dynamic or static by checking in RZ11 transaction of SAP.
In Rz11, type the parameter and display it. In the screen , there will be a check box with description as
"Dynamically switchable". If that check box is ticked, it means that it is dynamic parameter and value can
changed in run time without restart of the system. If it is not ticked, then it is static parameter and it needs
restart of a sap system for the changes to take effect.
What is a workprocess ?
What are the different types of workprocesses and their functionality ?
How to increase/decrease the number of workprocesses?
**************************************************************************
DIA (Dialog workprocess) : Used for execution of dialog steps triggered by active users. For every
dispatcher atleast 2 dialog workprocesses to be configured
UPD (Update workprocess) : Used for execution of update tasks. Atleast one update workprocess to
be configured per SAP system. Also, more than one UPD can be configured for a dispatcher
BTC (Background workprocess): Used for executing background jobs. Atleast 2 background
workprocesses to be configured for an SAP system
SPO (Spool workprocess) : Used for passing sequential data to printers. Atleast one spool
workprocess to be configured for an sap system.
UP2 (Update2 workprocess) : This is similar to UPD workprocess. There is small difference in
functionality based on criticality of the update.
ENQ (Enqueue workprocess) : This is required to administer locktable in the shared memory.
Locktable contains database locks for ABAP stack of an sap system. Only one enqueue process to be
configured for an SAP system.
To increase/decrease the number of workprocesses, value to be changed accordingly for the following
parameters as per workprocess in RZ10 Transaction.
In RZ10 transaction, select the profile of the instance, for which workprocess number to be changed and
edit the profile through extended maintenance and save the changes done and activate the profile.
Please note that as this parameter is not dynamic one, restart of the application server is required for
the changes to become effective.
***********************************************************************
SAP lock is set by the executing workprocess when a user/job wants a change access to data.
Whenever a lock to be set the respective workprocess checks in the locktable whether a respective lock
conflicts the existing entries in the locktable. If so, a lock is refused. If there is no conflict, then a lock is set.
Read locks (S) : This is also known as shared lock mode as several users can have read access to the locked
data at the same time. Additional read lock requests are entertained even if they are from different
users. However a write lock is rejected.
Enhanced write locks (X) : This is also known as exclusive non-cumulative lock mode. An enhanced write
lock can be requested only once even if it is by the same transaction.
Difference between write locks(E) and Enhanced write lock(X) is write locks can be set and released by
the same transaction several times but X type locks can also be set once even by the same transaction.
Optimistic locks (O) : These locks are set up when the users displays the data in change mode. Several
optimistic locks can be setup on the same data. Optimistic locks are read locks(S) at first and converted to
write lock (E) when the users wants to save the data. If an optimistic locks on a data is changed to write
lock(E), all other optimistic locks on that data will be deleted.
Locks that are set by an application program are released by the program itself or they are released by the
update program once the database has been changed.
1) Check whether latest versions of ST-A, ST-PI, ST-A/PI packages are installed in the managed/satellite system
(This check can be done going to system->status -> Component information display in any sap screen)
2) If they are installed, run RTCCTOOL report from SE38 transaction code of satellite system.
Check the output of the report. If there are some errors or warnings in the output of the report, please take corrective
actions and run the report again and ensure there are no errors
3) Setup RFC connection between your satellite system and the solution manager system
An RFC connection can be made between 2 systems using Transaction code SM59
4) Setup RFC connection between your solution manager and the SAP service market place
8) Activation of SDCCN in satellite system (Goto SDCCN transaction. Then click on Utilities -> Activate) then
confirm for SDCC_OSS destination creation
9) In satellite system, goto SDCCN transaction and navigate to Goto -> Settings -> Task specific.
In the resulted screen, select RFC destination and provide the solution manager RFC from the satellite system and
set solution manager RFC as the master system.
Goto SMSY transaction in solman system and then navigate to Environment -> Solution Manager Operations ->
Adminstration SDCCN to add the new service data control centre to the solution manager.
Click on add system button to add the new SDCC to the solution manager. When prompted, please select the
respective system and client from the resulting screen and confirm
In the solution manager system, execute transaction code solution_manager and navigate to operations ->
Earlywatch Alert and press create button. This prompts you to confirm the date and time to run the report. Please
provide the details and confirm to trigger the generation of the report
12) Login to satellite system, goto transaction code SDCCN and press create button which displays a screen to select a
task to be executed. Select request session data task and click continue. You will be prompted to enter the schedule
time to run the report. Click now to execute it immediately. After that you can see an early watch session running in
SDCCN.
13) After completion of this session run successfully, an Earlywatch Alert will be generated and this can be viewed in
Solution_manager of Solution manager system.
--------------------------------------------------------------------------------------------
Some of the examples of update deactivation and solutions for those are given below :
2) When some critical tablespaces are 100% full and database is not able to perform some operations
Solution : Monitor the database and findout the tablespaces which are 100% full. Add necessary datafiles and ensure
there is enough free space left out in them. Then activate the update manually
Use transaction SM14 and goto update tab. There update status can be viewed with a push button. If it is in
deactivated status, click it to activate and viceversa.
In RZ10, set the parameter rdisp/vb_stop_active to 1 and activate the profile to switch off automatic update
deactivation incase of database problems.
Check all the tablespaces and ensure figureout if any tablespace is 100% full. If so, add necessary space and
activate the update as mentioned above
Check if oraarch is full. Trigger archivelog backup and ensure there is enough space and activate the update
again
What happens for the updates that are in progress, if update got deactivated ?
If update got deactivated all the updates that are in progress or waiting to get executed, won't be cancelled. They will
be assigned either init or auto status. Once the database issue got fixed and update is activated again, all these
updates which are in init or auto status will resume again
--------------------------------------------------------------------------------------------
Goto transaction SM37 and list the jobs based on status and time interval.
Select any job for which you want to figure out the details. Double click on the job, which pops up "display
job screen". In that screen, click on job details tab to view
Job name
Job class (i.e A, B and C)
Status of the job
Exec. Target (server/instance on which job is being run currently)
Job frequency (hourly, monthly , weekly etc)
Workprocess that is executing the job
Client on which job is running
Release time of the job
Schedule start of the job