Chapter 15: Monitoring Performance Using Application Response Measurement (ARM)

Introduction to ARM

What Is ARM?

Application Response Measurement (ARM) enables you to monitor the availability and performance of transactions within and across diverse applications.

Why Is ARM Needed?

There are many techniques for measuring response times, but only ARM measures them accurately. Other approaches, although useful in other ways, can only measure business service levels by making assumptions or guesses about what is a business transaction, and when it begins and ends. Also, other approaches cannot provide important information that ARM can, such as whether a transaction completed successfully.

Using ARM, you can log transaction records from an application in order to

  • determine the application response times

  • determine the workload/throughput of your applications

  • verify that service level objectives are being met

  • determine why the application is not available

  • verify who is using an application

  • determine why a user is having poor response time

  • determine what queries are being issued by an application

  • determine the subcomponents of an application's response time

  • determine which servers are being used

  • calculate the load time for data warehouses.

Definitions for ARM


  • a computer program that processes data for a specific use such as for payroll, inventory, and billing. It is the program for which you want to monitor performance.

Application Response Measurement (ARM) API

  • an application programming interface that is used to implement software in order to monitor the availability and performance of transactions within and across diverse applications. The API is an open , vendor-neutral approach to monitor the performance of distributed and client/server applications. The ARM API consists of definitions for a standard set of function calls that are callable from an application. The ARM API was jointly developed by the industry partnership Computer Measurement Group , Inc. (CMG).

ARM agent

  • a software vendor's implementation of the ARM API. Each ARM agent is a set of executable routines that can be called by applications. The ARM agent runs concurrently with SAS. The SAS application passes transaction information to the agent, which collects the ARM transaction records and writes them to the ARM log.

ARM log

  • an external file that contains records of ARM transactions.

ARM macros

  • a group of SAS macros that provide user control for identifying transactions that you want to log. You insert the macro calls into your SAS program at strategic points; the macros generate calls to the ARM API function calls.

ARM system options

  • a group of SAS system options that control various aspects of the SAS ARM interface.

ARM subsystem

  • a group of internal SAS processing transactions such as PROC and DATA step processing and file input/output processing. You use the ARM system option ARMSUBSYS= to turn on a subsystem or all subsystems.

SAS ARM interface

  • an interface that can be used to monitor the performance of SAS applications. In the SAS ARM interface, the ARM API is implemented as an ARM agent. In addition, SAS supplies ARM macros, which generate calls to the ARM API function calls, and ARM system options, which enable you to manage the ARM environment and to log internal SAS processing transactions.


  • a unit of work that is meaningful for monitoring an application's performance. A transaction can be started and stopped one or more times within a single execution of an application. For example, in a SAS application, a transaction could be a step that updates a customer database. In SAS/MDDB Server software, a transaction might be a query on a subcube. Another type of transaction might be internal SAS processing that you want to monitor.

SAS 9.1 Language Reference. Concepts
SAS 9.1 Language Reference Concepts
ISBN: 1590471989
EAN: 2147483647
Year: 2004
Pages: 255 © 2008-2017.
If you may any questions please contact us: