How the ARM Interface Works

The ARM API is an application programming interface that a vendor, such as SAS, can implement to monitor the availability and performance of transactions in distributed or client/server applications. The ARM API consists of definitions for a standard set of function calls that are callable from an application.
You determine the transactions within your application that you want to measure. To log specific SAS subsystem transactions, simply use the ARMSUBSYS= system option to turn on the transactions that you want to log.
You insert performance macros at strategic points in the application's code where you want transaction response times and other statistics collected. The performance macros generate calls to the ARM API function calls within the ARM agent. The SAS program accepts the function call parameters, checks for errors, and passes the ARM data to the ARM agent to calculate the statistics and to log the records.
Typically, an ARM API function call occurs just before a transaction is initiated to signify the beginning of the transaction. Then, an associated ARM API function call occurs in the application where the transaction is known to be completed. Basically, the application calls the ARM agent before a transaction starts, and then calls again after it ends, enabling the transaction to be measured and monitored. The transaction's response time and statistics are routed to the ARM agent, which logs the information.
In addition to the ARM API, SAS implemented several key elements that create the ARM environment. These key elements include:
ARMAGENT= system option
is an executable module that contains an implementation of the ARM API. See ARMAGENT= System Option.
ARM macros
are macros that are placed strategically in SAS programs to create and manage ARM transactions. You must create the user-defined metrics and correlators. See ARM Macros.
ARMSUBSYS= system option
enables you to collect ARM data on internal SAS components, such as procedures and DATA steps. See ARMSUBSYS= System Option.
default user metrics
are metrics that are collected in ARM transaction details using the performance macros. See Default User Metrics and Performance Macros.
default correlators
are correlators that are collected in ARM transaction details using the performance macros. See Default Correlators.
performance macros
are macros that are placed strategically in SAS programs to create and manage ARM transactions. Default user metrics and correlators are included in the performance macros. See Using Performance Macros.
SAS logging facility
can produce one log or several logs that contain ARM transaction details. See SAS Logging Facility.