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.
- Each metric has a format and name. These are provided when a transaction is registered and do not change afterwards.
- The metric values may vary per transaction instance.
- The metric values are provided at any or all of when a transaction starts, stops, or is updated between the start and stop.
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
typedef struct arm_metric_binding arm_metric_binding_t |
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