Classes | |
class | arm4::ArmIdentityProperties |
Contains metadata attributes that are part of the identity of an application or a transaction. More... | |
class | arm4::ArmIdentityPropertiesTransaction |
Extends ArmIdentityProperties for transactions by adding a URI property. More... | |
Modules | |
Identity properties | |
Context properties |
Detailed Description
ARM 4.0/4.1 uses two types of properties to describe applications and transactions: "identity" properties (for applications and transactions), and "context" properties (for applications and transactions). Each property consists of a name string and a value string.
They differ based on when the names and/or values are set, as shown in the following table
Type of Property | Same for all Instances | May Vary per Instance |
---|---|---|
Identity Property (applications and transactions) | Name and Value | |
Context Property (applications and transactions) | Name | Value |
When deciding which property type to use, instrumenters should be aware of the trade-offs:
- Processing of identity properties can generally be optimized more than processing of context properties because it can be done once at registration time for both the names and the values and apply to all transaction instances.
- Processing of context property values may occur for every transaction instance. This increases overhead but it is a good practice if each transaction "flavor", where a flavor represents a different combination of properties, is a slight variation on the same type of transaction. An implementation that does not process the context properties could still provide useful reports if the performance characteristics of each flavor are similar.