A method for monitoring performance of applications at transaction level in a computer network, the method comprising: receiving from a user, by a processor, information related to an application, the received information comprising at least application definition and information related to application protocol; generating, by the processor, a template for the application based on the received information, wherein the generated template includes protocol configuration information including offsets, request message information and response message information; sending, by a network interface, transactional data packets associated with the application to an ASI, Adaptive Session Intelligence, extender associated with a primary memory device; receiving, by the ASI extender and from the network interface, the transactional data packets associated with the application; generating ASI, data sets from the received transactional data packets in the ASI extender associated with the primary memory device, wherein the generating of the ASI data sets comprises processing the received transactional data packets using the generated template, wherein the ASI data sets comprise data enabling extraction of network, service- and user-related metrics, wherein, if a transaction ID does not exist for a particular application transaction, the ASI extender determines a start/end of a transaction comprising a pair of request/response messages without a transaction ID based on offsets of the request/response messages, and wherein the ASI extender keeps track of transaction performance metrics related to number of transactions, transaction responsiveness, status and error codes; sending, by the ASI extender, the transactional data packets to a secondary memory device; storing the ASI data sets in the secondary memory device; monitoring, by the ASI extender, performance of the application, at transaction level, using the generated template; determining, by the ASI extender, a failure of the application at transaction level utilizing the ASI data sets from an error code that was included in a response to an original transactional request;; and determining, by the ASI extender, a recovery action for the determined failure of the application by mapping the failure to a recovery action. receiving from a user, by a processor, information related to an application, the received information comprising at least application definition and information related to application protocol; generating, by the processor, a template for the application based on the received information, wherein the generated template includes protocol configuration information including offsets, request message information and response message information; sending, by a network interface, transactional data packets associated with the application to an ASI, Adaptive Session Intelligence, extender associated with a primary memory device; receiving, by the ASI extender and from the network interface, the transactional data packets associated with the application; generating ASI, data sets from the received transactional data packets in the ASI extender associated with the primary memory device, wherein the generating of the ASI data sets comprises processing the received transactional data packets using the generated template, wherein the ASI data sets comprise data enabling extraction of network, service- and user-related metrics, wherein, if a transaction ID does not exist for a particular application transaction, the ASI extender determines a start/end of a transaction comprising a pair of request/response messages without a transaction ID based on offsets of the request/response messages, and wherein the ASI extender keeps track of transaction performance metrics related to number of transactions, transaction responsiveness, status and error codes; sending, by the ASI extender, the transactional data packets to a secondary memory device; storing the ASI data sets in the secondary memory device; monitoring, by the ASI extender, performance of the application, at transaction level, using the generated template; determining, by the ASI extender, a failure of the application at transaction level utilizing the ASI data sets from an error code that was included in a response to an original transactional request;; and determining, by the ASI extender, a recovery action for the determined failure of the application by mapping the failure to a recovery action.