Understanding Pivoting Mechansim (Tall to Wide Format)


Operations data retrieved from certain sources may require additional configuration at the destination mediator in order for the data to be consumable by the destination.  One common configuration change is to translate "tall" data presented by the source to "wide" format required by the destination.  This example uses AppDynamics to Micro Focus OBA.

Step-by-step guide

AppDynamics API provides data to StreamWeaver in tall format. StreamWeaver needs to convert the data into wide format in order for it to be consumed by Micro Focus OBA. The tall to wide conversion is performed by the StreamWeaver distributor. This is done by aggregating all the rows of data that have identical timestamps and keys into 1 row.


Tall Format simplified example:

timestamp,Application,Tier,BusinessTransaction,metricName,metricValue
001,Online Banking,Web Tier,Login,Average Response Time (ms),20
001,Online Banking,Web Tier,Login,Calls per Minute,80
001,Online Banking,Web Tier,Login,Errors per Minute,2
001,Online Banking,Web Tier,Main Page,Average Response Time (ms),60
001,Online Banking,Web Tier,Main Page,Calls per Minute,120
001,Online Banking,Web Tier,Main Page,Errors per Minute,4
001,Online Banking,DB Tier,Login,Average Response Time (ms),10
001,Online Banking,DB Tier,Login,Calls per Minute,80
001,Online Banking,DB Tier,Login,Errors per Minute,1
002,Online Banking,Web Tier,Login,Average Response Time (ms),40
002,Online Banking,Web Tier,Login,Calls per Minute,90
002,Online Banking,Web Tier,Login,Errors per Minute,4

Same data converted in wide format (keys = Application,Tier, BusinessTransaction):

timestamp,Application,Tier,BusinessTransaction,Average Response Time (ms),Calls per Minute,Errors per Minute
001,Online Banking,Web Tier,Login,20,80,2
001,Online Banking,Web Tier,Main Page,60,120,4
001,Online Banking,DB Tier,Login,10,80,1
002,Online Banking,Web Tier,Login,40,90,4


Note: the timestamp field always behaves as a key even though it is not implicitly declared as one.


Available fields - destination mediator config


The destination mediator will output only the timestamp, followed by the fields that are specified in the "keys", "attributes" and "metrics" sections (in this order). The order of the fields within each section is maintained.

Example header:  timestamp,key1,key2,key3,attribute1,attribute2,metric1,metric2,metric3,metric4

In this example, the following fields are available to be added as keys or attributes in the destination config: Application,Tier,BusinessTransaction,Node,targetName,TierType

The fields in the "metrics" section are obtained by concatenating the "category", "group" and "metricName" fields, separated by "|" characters.
If the group field is empty for that particular metric path, the value "NoGroup" is used.

Example:
    Metric Path:
    "Application Infrastructure Performance|*|Individual Nodes|*|JVM|Memory|Non-Heap|Used %"
    Fields:
    category="Application Infrastructure Performance"
    group="Non-Heap"
    metricName="Used %
    Metric:
    "Application Infrastructure Performance|Non-Heap|Used %"

You may also want to use visual panels to communicate related information, tips or things users need to be aware of.

Related articles

Related articles appear here based on the labels you select. Click to edit the macro and add or change labels.



 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*