Patent ID: 8346922

Claim:
A machine-implemented method comprising: gathering one or more performance metrics for a first peer node, wherein the first peer node is one of a plurality of peer nodes included in a transaction tracking framework, and wherein one or more of the plurality of peer nodes, including the first peer node, have one or more assigned transaction tracking responsibilities, the assigned transaction tracking responsibilities corresponding to monitoring one or more software applications; determining, based on the gathered performance metrics for the first peer node, that the first peer node is performing at a non-optimal level; in response to the determining, transmitting a load balance request from the first peer node to one or more of the plurality of peer nodes; receiving, at the first peer node, one or more responses from the one or more of the plurality of peer nodes; determining, based on the received responses, whether to handover a selected one or more of the transaction tracking responsibilities assigned to the first peer node; identifying a second peer node selected from the one or more of the plurality of peer nodes, the identifying performed in response to the determination being to handover the selected one or more transaction tracking responsibilities assigned to the first peer node; sending a handover message from the first peer node to the second peer node, wherein the handover message assigns at least one of the first peer node's assigned transaction tracking responsibilities from the first peer node to the second peer node; receiving, at the first peer node, data collected by a first monitored software application; identifying a peer node with responsibility to collect data corresponding to the first monitored software application; storing a form of the received data at the first peer node in response to identifying that the first peer node has the responsibility to collect the data corresponding to the first monitored software application; and forwarding the received data to the second peer node in response to identifying that the second peer node has the responsibility to collect the data corresponding to the first monitored software application.