ARM 4.0 Metrics
[ARM 4.0]

User defined metrics can be associated with transaction instances. More...

Data Structures

struct  arm_metric
 used to pass a metric value to the ARM implementation. More...
struct  arm_metric_binding
 binds a metric definition (id) to a certain transaction metric slot. More...
struct  arm_subbuffer_metric_bindings
 used to associate metrics to a transaction More...
struct  arm_subbuffer_metric_values
 used to pass a metric values to the ARM implementation. More...

Modules

 ARM 4.0 counter metric
 

A counter is a monotonically increasing non-negative value up to its maximum possible value, at which point it wraps around to zero and starts again.


 ARM 4.0 gauge metric
 

A gauge value can go up and down, and it can be positive or negative.


 ARM 4.0 numeric id metric
 

A numeric ID is a numeric value that is used as an identifier, and not as a measurement value.


 ARM 4.0 string metric
 

A string is used in the same way that a numeric ID is used.


Typedefs

typedef arm_int32_t arm_metric_divisor32_t
 32-bit integer metric divisor type
typedef struct arm_metric arm_metric_t
 used to pass a metric value to the ARM implementation.
typedef struct arm_metric_binding arm_metric_binding_t
 binds a metric definition (id) to a certain transaction metric slot.



#define ARM_METRIC_FORMAT_RESERVED   0
 Reserved metric format.
#define ARM_METRIC_FORMAT_COUNTER32   1
 arm_int32_t counter
#define ARM_METRIC_FORMAT_COUNTER64   2
 arm_int64_t counter
#define ARM_METRIC_FORMAT_CNTRDIVR32   3
 arm_int32_t counter + arm_int32_t divisor
#define ARM_METRIC_FORMAT_GAUGE32   4
 arm_int32_t gauge
#define ARM_METRIC_FORMAT_GAUGE64   5
 arm_int64_t gauge
#define ARM_METRIC_FORMAT_GAUGEDIVR32   6
 arm_int32_t gauge + arm_int32_t divisor
#define ARM_METRIC_FORMAT_NUMERICID32   7
 arm_int32_t numeric ID
#define ARM_METRIC_FORMAT_NUMERICID64   8
 arm_int64_t numeric ID
#define ARM_METRIC_FORMAT_STRING32   10
 string (null-terminated) of a maximum length of 32 characters (33 including the null termination character)
#define ARM_METRIC_USE_GENERAL   0
 a metric without a specified usage.
#define ARM_METRIC_USE_TRAN_SIZE   1
 a metric that indicates the "size" of a transaction.
#define ARM_METRIC_USE_TRAN_STATUS   2
 a metric that further explains the transaction status such as a sense code that explains why a transaction failed.
#define ARM_METRIC_MIN_ARRAY_INDEX   0
 minimum array index for metric values and bindings.
#define ARM_METRIC_MAX_ARRAY_INDEX   6
 maximum array index for metric values and bindings.
#define ARM_METRIC_MAX_COUNT   7
 maximum array count for metric values and bindings.
#define ARM_METRIC_STRING32_MAX_CHARS   31
 maximum characters for a string metric
#define ARM_METRIC_STRING32_MAX_LENGTH   (ARM_METRIC_STRING32_MAX_CHARS*3+1)
 maximum bytes for a string metric

Detailed Description

User defined metrics can be associated with transaction instances.

Metrics are provided for transaction instances.

ARM supports nine data types. The data types are grouped in four categories. The categories are counters, gauges, numeric IDs, and strings.


Define Documentation

#define ARM_METRIC_USE_GENERAL   0

a metric without a specified usage.

Most metrics are described with a GENERAL usage.

#define ARM_METRIC_USE_TRAN_SIZE   1

a metric that indicates the "size" of a transaction.

The "size" is something that would be expected to affect the response time, such as the number of bytes in a file transfer or the number of files backed up by a "backup" transaction. ARM implementations can use this knowledge to better interpret the response time.

#define ARM_METRIC_USE_TRAN_STATUS   2

a metric that further explains the transaction status such as a sense code that explains why a transaction failed.

The metric is a status code (numeric ID) or text message (string). It would typically be used with arm_stop_transaction() or arm_report_transaction() to provide additional details about a transaction status of Failed.


Typedef Documentation

binds a metric definition (id) to a certain transaction metric slot.

See also:
arm_subbuffer_metric_bindings_t
typedef struct arm_metric arm_metric_t

used to pass a metric value to the ARM implementation.

See also:
arm_subbuffer_metric_values_t
 All Data Structures Files Functions Variables Typedefs Defines