Tracking Background Transactions
In a typical web application, the user communicates with the application via HTTP requests; these requests access the application server and render the requested data back to the user. Aside from these web transactions, there could be a number of transactions being executed in an application. These transactions may not be triggered by the user but they're still vital for the application to properly function. In general, transactions that do not come under user purview are considered background transactions.
Common examples include data collection, data archiving, data alerting, etc. Since these transactions run in the background, it's easy to overlook their performance. You often won't know if these transactions are successful or not unless a major issue bogs down your entire application. This is why monitoring background transactions is essential for quickly debugging errors.
This document covers:
- How to monitor background transactions
- Metrics captured
1. How to monitor background transactions
Unlike web transactions, which are implemented using known frameworks like Struts, Play, Spring, etc., background transactions are custom coded by developers to meet their specific needs and requirements. These are not captured by the APM Insight agent by default but can be monitored using custom instrumentation.
With custom instrumentation, you can use defined methods and classes. Include the specified code at the beginning of a method or class, and the agent will start tracking its performance.
PHP agent tracks background transactions by default.
2. Metrics captured
Access the parameters for background transactions by logging in to Site24x7, then going to APM Insight >Your application > Edit > Go to Configuration Profile > APM Agent Configuration Profile >Edit > Background Transactions Configurations.
![apm-bg-config Background transactions configuration for APM Insight Java agent](/help/images/apm-bg-config.png)
Refer here to view the parameters captured and their default values.