alternateplanet

March 29, 2010

What is Heap Memory?

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

Heap Memory stores User Context when Extended Memory allocated to a work process gets exhausted and the work process requires more space to continue. Heap Memory stores contains same type of Data as Extended Memory. Heap Memory is allocated dynamically according to requirement and not during system startup. When the workprocess starts using heap area it enters in to PRIV mode

March 24, 2010

What is SAPOSCOL?

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

SAPOSCOL is SAP Operating System Collector is a standalone program that runs in background at OS level. It collects information about operating system resource usage like:

  • CPU Utilization
  • Main Memory and Virtual Memory utilization.
  • Physical Disk and File System utilization.
  • Resource usage by running processes.

How many instances of SAPOSCOL to be run?
A)Only one instance of SAPOSCOL needed to be run per hardware. Even if there are multiple instances running on a single hardware only one SAPOSCOL
process is needed.

What is the frequency of data collection by SAPOSCOL?
A) Data is collected every ten seconds.

Where is the data collected by SAPOSCOL stored?
A)The data is stored in shared memory and for long & future usage data is stored in tables MONI & OSMON.
Tha data collected by SAPOSCOL copied to tables MONI & OSMON by background job COLLECTOR_FOR_PERFMONITOR

What are the SAP level tcodes to view this data?
A) At SAP level you can view the information collected by SAPOSCOL using tcodes/transactions ST06, OS06 & OS07.

March 19, 2010

Memory related profile parameters in SAP

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm
abap/heaplimit Work Process
Restart
ztta/roll_extension Limit for Extended Memory
ztta/roll_extension_dia EM Quota for Dialog Work Processes
ztta/roll_extension_nondia EM Quota for Non-Dialog Work
Processes
abap/heap_area_dia Heap Memory Limit for Dialog Work
Processes
abap/heap_area_nondia Heap Memory Limit for Non-Dialog
Work Processes
abap/heap_area_total Total Quota for Heap Memory
ztta/roll_area Size of Roll Area Roll Area
ztta/roll_first Size of the Initial Allocation
from the Roll Area
abap/heap_area_total Heap Memory Limit
em/initial_size_MB Extended Memory Pool Size
rdisp/ROLL_SHM Roll Buffer Size
rdisp/ROLL_MAXFS Maximum Roll File Size
rdisp/PG_SHM Size of the Paging Buffer
rdisp/PG_MAXFS Maximum Size of SAP Paging File
em/blocksize_KB Segment Size for the Extended
Memory Memory Management Statistics
em/stat_log_size_MB Statistics – User Context Size
em/stat_log_timeout Statistics – User Context Size

March 15, 2010

Understanding transaction code SM50 in SAP

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

Tcode SM50 is used to see the workprocess overview in application
server you are logged in.
There are several fields diplayed in the work
process overview screen.
Each of the field value is described in below
table.

Menu path for this tcode is
Tools –> Administration–> Monitor –>System monitoring –> Process –> overview

No This is the work process number and is unique to each work process.
Type This denotes the type of work process.
These are the possible values for type field
DIA: Dialog
UPD: Update
BGD: Background
ENQ: Enqueue
SPO: Spool
PID Process ID which is a unique no to identify the process at os level.
Status This shows the status of work process like PRIV mode etc..
Ended Work process has been terminated because of some error in SAP kernel.

Running – work process is busy processing user request.

Waiting – work process is ready to accept user request.

PRIV – Work process running with heap memory (noramally basis admins terminate the dia wp if it enters priv mode).

Completed The work process has been terminated and they can not be restarted.
Reason If a work process status is stopped, this field gives the reason why it is stopped.
Start This field tells if the dispatcher can restart the work process if it gets terminated.
Err Err field gives the no of times the work process .
Sem Number of semaphore.

With Green background =>Process is holding the semaphore.

With Red background => Process is waiting for the semaphore.

CPU The CPU Time utilization by each work process format minutes:seconds
Time The time that has been consumed processing the current request (in seconds).
Report The name of report which is being executed
Clie Client No.
User Name of user whose request is currently being executed.
Action For the work process with status “running”, this displays the current action.
Table The DB tables that is accessed previously by work process.

March 12, 2010

Memory allocation of non-dialog work process in UNIX

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

Memory allocation of non-dialog work process in UNIX

In UNIX, if Roll memory gets full Heap memory is occupied and if heap memory gets full extended memory is used.

But
in windows it is different, after roll memory (ztta/roll_first) is
filled the work process uses Extended memory, after extended memory is
fill then remainder of roll memory ( ztta/roll_area – ztta/roll_first)
is used soon..

Unix or Unix like systems Windows
Roll Memory
up to
ztta/roll_area
Roll Memory
up to
ztta/roll_first
|
|
\|/
|
|
\|/
Heap Memory
up to
abap/heap_area_nondia
or HM Exhaust
Extended Memory
up to
ztta/roll_extension
or EM Exhaust
|
|
\|/
|
|
\|/
Extended Memory
up to
ztta/roll_extension
or EM Exhaust
Roll Memory
Remainder of
ztta/roll_area
|
|
\|/
Heap Memory
up to
abap/heap_area_dia
or HM Exhaust

March 7, 2010

SAP Lock concept

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

SAP has an independent locking processover and above the database that it runs on, a LUW on SAP is may have different meaning and execution to what it is on Oracle or DB2.

Read on…

Lock Transaction SM12:

The SAP system is equipped with a special lock mechanism the purpose of the lock mechanism is to prevent two transactions from changing the same data on the database simultaneously.
Locks are defined generically as “lock objects” in the Data Dictionary. Lock entries are usually set and deleted automatically when user programs access a data object and release it again.

The SAP lock mechanism is closely related to the Update Mechanism .

The documentation is divided into the following sections:

SAP Lock Concept: describes how the SAP lock works. You have to understand the concepts described here in order to use the SAP locks when you are programming applications. You can use different types of locks. The lock mode describes what type of lock it is.

S (shared Lock): Several users can access locked data at the same time in display mode. Requests from further shared locks are accepted, even if they are from different users. An exclusive lock set on an object that already has a shared lock will be rejected.

E(Exclusive): An exclusive lock protects the locked object against all types of locks from other transactions. Only the same lock owner can reset the lock .

Important Profile Parameters: A list of the profile parameters relevant for the lock concept.
enque/table_size: Size of the lock table managed by the enqueue server in the main memory. The lock table contains information on which locks are currently held by whom.

In this case, you should check whether the update server is functioning correctly, since the lock table can grow very fast if the update function stops. If no update problems exist, you can use this parameter to increase the size of the lock table.
The Computing Center Management System (CCMS) monitors the status of the lock table constantly and outputs warnings if the space available is not adequate.
Default value: 4096kb

rdisp/wp_no_enq: Number of enqueue work processes that are to run on this instance.
rdisp/enqname: Name of the application server that provides the enqueue service.

Managing Lock Entries: It describes lock management , which you use to display, check, and delete lock entries. This may be necessary if the SAP dispatcher, the operating system, or the network connection fails, and the dispatcher cannot delete lock entries. In this case, invalid lock entries remain effective and block access to the locked data when the system is restarted.

How to monitor a Lock entry:In SM12 check any lock entry older than 2 days, if any outdated entry check the corresponding User and check the user online or offline in AL08 and contact that User (you can get the User info from su01) and inform about the lock else if the user is offline release the table from lock by deleting the lock.

Profile parameter categories in SAP

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

Some important categories of SAP system parameters.

You can view parameters using RZ11 and change them using RZ10.
or use report RSPFPAR through SA38.
* ES/* : Related to extended memory settings
* INSTANCE* : Identify an instance or server
* ABAP/* : Related to program execution, including heap settings
* AUTH/* : Related to authorization
* DBS/<DB Type/* : Database specific parameters
* EM/* : General system related settings
* ENQUE/* : Settings for the enqueue WP (or standalone ENQ server)
* GW/* : SAP Gateway related settings
* ICF/* & ICM/* : Settings for the Internet control framework and ICM
* LOGIN/* : Controls the logon environment (such a multiple sessions etc)
* MS/* : Message server related settings
* RDISP/* : Controls the dispatcher & dispatcher controlled processes
* STAT/* : Statistics collector related parameters
* SCSA/* : Shared common system area parameters
* ZTTA/* : Extended memory related parameters

March 2, 2010

More System Monitoring

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

The Following are the transaction codes used for the System Monitoring:
SM12:
This Traction is used for Check for Lock Entries. There may be old locks still in place from transactions that did not release, or from when the user was cut off from the Network. If any lock entries are exist then we have to check since how long this lock existing. If, this lock existing from more than one day then we should check that particular User is available or not (By using the Transaction Code AL08). If he is not available then Delete that lock. Otherwise we should wait 1 or 2 Days.

SM13 :
This Transaction is used for Check for any Errors in Update Records. A failed or “Update Terminate” is an update to the failed database. These failed Updates occurs when a user entry or transaction is not entered or Updated in database. And we should check Whether Update is ACTIVE or not. And also we should check any Update Records are terminated.

SM21 :
This Transaction is used to check System Logs. After hitting the traction we should goto System log–> Chooseà All Remote System logs, and set Date and time to before the Last log review. And we should check whether any Errors, Warnings, Security Messages, Database, Abends, Any other different Events are there.The log is important because unexpected or unknown warnings and errors could indicate a serious problem.

SM51 :
This Transaction is used to check that all Application Servers are UP. And also This transaction is a central transaction from which you can select the instance to be monitor.

SM50 :
This Transaction is used to check Work Process Overview and for Systems with out Servers. Here all work processes with a “Running” or “Waiting” State. If Batch Jobs are not Running, If all the work processes are in use, this transaction provide a hint of this problem.

ST01 :
This Transaction is used for System Trace. By this transaction we can trace that what are the operations performed on particular file by particular user on which dates.

ST02 :
This transaction is used for Buffer tuning or Buffer Statistics. And it is used to tune Buffer perameters of R/3. The Buffer is important because significant buffer swaping reduces performance. Look under “Swaps” for Red Entries. Regularly check these entries to establish trends and get a feel of the Buffer behaviour. And in this transaction we should Maintain “Hit Ratio” is in between 90 – 100% for all , and “Heap Memory” allocated should be “0” , and “Swaps” is 0.

ST03 :
This Transaction is used to Check Work Load Analysis of . Workload Analysis is used to determine System performance. Check Statistics and Record Trends to get a feel for the System’s Behaviour and Performance. Understanding the System when it is running well helps us to determine what changes may need to be made when it is not.

ST04 :
This Transaction is used for Database Performance Analysis. This transaction provides the ability to Monitor the Database in related to 1) In Shared Pool “SQL Area Get Ratio” should be 90 – 95% 2) In Log Buffer Allocation Retries / Entries <1% 3) In Data Buffer “Quality” should be in 90 – 95% 4) In Sorts Disk / Memory <1% 5) In Table Scan & Fetches “Long Table Scans” should maintain as minimum as possible. And we should check Detailed Analysis then we should hit “Detailed Analysis menu” Button in this screen. In that we can check Database Overview like “Exclusive Lock Waits” , “Wait Events”, “Buffer Busy Waits”, “ File System Request”, “ Database Message logs”, “ SQL Requests”, Summery Report for all activities, etc

ST22 :
This Transaction is used to Analyse ABAP Dumps or Short Dumps. This transaction is also used for Analyse and Determine why the error occurred and take corrective action. It looks for an excessive number of dumps, and also dumps of an unusual nature. A ABAP dump is generated when a report or transaction terminates as a result of a serious error. The system records in the System Log(SM21) and writes a snapshot of the program terminate to a special table.

DB02 :
This transaction is used to check all table Spaces and Indexes. Here we should check table spaces sizes. If any table used space is =>99 then we should increase add the space for particular table space. And this transaction is provides a way to examine database allocation. And this transaction is allows us to monitor items such as: a) DB Space History b) DB Analysis By this transaction we can view Database history by Dates and Times.

DB12 :
This Transaction is used to check database Backups. And in this we should we see successful Backups and Unsuccessful Backups list

AL08 :
This transaction is used to Check the users on the System. This transaction displays User Ids and Terminal Names who are currently logged on the system.

SM37 :
This transaction is used for Monitoring Background Jobs. Background are batch jobs scheduled to run at specific time during the day. Here we should check for cancelled jobs. Here If we want to check particular job then,we should enter the Job Name and enter User name in User name field or ‘*’ and hit execute Button. And verify that all critical jobs are successful.

March 1, 2010

SAP Daily System Monitoring

Filed under: BASIS, SAP — Tags: , — admin @ 8:00 pm

If you haven’t got SAP Solution Manager installed and configured yet, give me a buzz, if you haven’t got the money, use the guide below ;) cheap and cheerful and will keep you busy for a few hours every day.

Daily System Monitoring:

SM51 SAP Servers :
1- Check Availability of All Servers
2- Check Process Lists for All Servers for Unusual Processes or Activities (e.g. Extra-long execution times, too many errored processes, too many sequential reports)

SM66 Global Process Monitor:
1- Check for over-all system process utilization
2- Are Batch id’s taking up too many DIA processes
3- Is one user running too many BGD jobs for the same report
4- Is one server being used heavily compared to others

SM21 System Logs:
1- Is there any repetitive errors in the system log
2- Any unusual repetitive failed login attempts

ST22 Short Dumps:
1- Except ‘Time-Out’ errors, is there any short dumps.

SMLG Logon Groups:
1- Check load distribution (Menu: Goto–>Load Distribution)
2- Are server response times acceptable? (< 2 sec)
3- Is user distribution even among active servers

ST03N Workload Analysis:
1- Check is daily, weekly and monthly totals are being calculated for each server
2- Check for Avg. Dialog Response Times. Is it below 2 secs

SM12 Lock Overview:
1- Check for outdated lock records
2- Verify that these lock records are not actively being used and delete these lock records if they are obsolete

SM13 Update Records:
1- Check if the ‘Update System’ is active.
2- If not active, investigate what happened
3- Activate ‘Update System’ after fixing the problem
4- Review update records of past two days and delete if errored or obsolete

SM37 Background Job log:
1- Check if the are any critical jobs that were canceled
2- Identify/Fix the problem
3- Contact canceled job user for details
4- Reschedule if needed

SP01 Spool Request overview:
1- Check if there unusual number of errors in spool (>100)
2- Check if there are spool request with more then 200 pages
3- Should not be a need to delete any as the daily job should handle, unless too many spools are old.

ST04 Database Activity Monitor:
1- Check ‘Data Buffer’ and ‘Shared Pool Cache’ quality
2- Investigate and make suggestions to the team to improve quality of these buffers

DB02 Database Performance:
1- Check ‘Current Sizes’ to see if any tablespace is above %90
2- Add new datafile to the tablespace if needed
3- Check if there is space-critical objects
4- Check if there is any missing objects in DB or R/3 Data Dictionary

DB16 Database Check, Overview of message:
1- Check if there is any messages
2- Take immediate action to fix the problem
3- Notify the team if there is any parameter changes or assistance needed for Production Systems

DB24 Database Operations Logs:
1- Check if all DB Operations are executed
2- Check if any of the operations generated any errors
3- Fix the problem. Notify team if needed

DB12 Database confirm backup success:
1- Check to see that the previous backup was successful
2- If a backup is currently running check its status
3- If the last backup failed , check the reason correct and resubmit.

ST06 OS Monitor:
1- Click on ‘Detailed Analysis menu’
2- Click on ‘CPU’ in ‘Previous Hours’ Group
3- Check if at any past hours is > %80
4- Notify Team if there is any such case

Powered by WordPress