Skip to main content

Poorly Written Situations Lead to High CPU Usage on the TEMS

 Technote (troubleshooting)
 
Problem(Abstract)
A poorly written situation can have a surprisingly large impact on CPU usage on a TEMS. Using wildcard characters (*) in situations is one of the most common mistakes made in writing situations. Using fields longer than required can also cause additional work to evaluate the situation. Making the changes below have, in some instances, reduced CPU usage on a TEMS from close to full utilization to nearly completely idle. The CPU usage manifests itself in the kdsmain process.
 
Symptom
kdsmain uses large amounts of CPU. Agents may appear offline, agent deployments may fail and other symptoms may occur.
 
Resolving the problem
There are several ways to improve the situations used in ITM environments. Following these five guidelines can drastically reduce CPU usage on the TEMS:

1) Avoid using wildcard characters in situations whenever possible.

2) Use the simplest field possible that will provide the required value. Look at the attributes under consideration in the TEP prior to writing the situation. There may be a field that gives the required value without performing a search operation on that field.

3) If a situation requires searching for a phrase within a field, use 'Scan for string within a string'

4) When performing a 'Count of group members' operation, use a short field for the count. The field selected will not change the result, but will cause less data to be handled to derive it.

5) Avoid using Unicode fields unless they are required. They require more processing then their non-Unicode counterparts.

Below are a few examples of how to rewrite some sample inefficient situations.

Scenario 1) Situation ensures syslogd is running.

Original Situation: MISSING(Process Command (Unicode)) == ( '*syslogd*' )

Revised Situation: MISSING(Base Command) == ( 'syslogd' )

Reasoning: The revised situation is better for several reasons. First, it removes the wildcard characters from the situation. Second, it uses a non-Unicode field. Third, it does not require any searching operation as the 'Base Command' field returns exactly the required phrase.

Scenario 2) Situation checks for free space on multiple mount points starting with /opt/IBM

Original Situation: Mount Point == '/opt/IBM*' AND Space Available Percent < 5

Revised Situation: SCAN(Mount Point) == '/opt/IBM' AND Space Available Percent < 5

Reasoning: The revised situation removed the wildcard character and used the more efficient SCAN function.

Scenario 3) Situation checks for more than 3 tecad_logfile processes

Original Situation: Process Command (Unicode) == *tecad_logfile* AND COUNT(Process Command (Unicode)) > '3'

Revised Situation: Base Command == 'tecad_logfile' AND COUNT(Base Command) > '3'

Reasoning: The revised situation uses 'Base Command' instead of a search or wildcard characters to find the required value. It also uses a shorter field to perform the count operation and avoids Unicode fields.

 
Related information
Situation Writing Guide on OPAL
 
 
Product Alias/Synonym
ITM
Monitoring
 
 
 

Copyright and trademark information

IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.

Rate this page

Please take a moment to complete this form to help us better serve you.

This material provides me with the information I need.






This material is clear and easy to understand.






Did the information help you to achieve your goal?

What updates, improvements, or related information would you like to see in this document?

Your response will be used to improve our document content. Requests for assistance, if applicable, should be submitted through your normal support channel as we cannot respond from this site.


Input the verification number to submit feedback:



Maintenance Window

Unscheduled Maintenance Window

There is no unscheduled maintenance scheduled at this time.

Document information

Product categories:

Software

Systems and Asset Management

Application Performance & Availability

IBM Tivoli Monitoring


Operating system(s):

AIX, HP-UX, Linux, Solaris, Windows, z/OS


Software version:

6.2, 6.2.1


Reference #:

1379943


IBM Group:

Software Group


Modified date:

2009-04-21

Translate my page