The Business transactions are an integral part of every flowpath. Each flowpath is identified as a business transaction. Business transaction provides a logical grouping of all incoming requests. To identify any business transaction, several types of rules are available.

It is further classified into two sections:

- Global Configuration:
  1. Configure Rules
  2. Tags
- Pattern Configuration

## Global Configuration

- Configuration Rule: These rules are used to create business transaction names using URI and dynamic request properties (HTTP methods, query parameters, and others) for all agent types. Detailing of further configurations within this:
  URI used in Transaction Name: This could be complete or custom defined.
  - Complete: In this case, all the URIs are captured.
  - Custom Defined: In this case, you can specify whether to use first segments, last segments, or the specified segment number of URIs in business transactions. Enter the segment(s) of URI in valid format. In case of multiple segment numbers, separate them by comma. For example - 2,4,6.
- Transaction Response Time Threshold Value: Specify the threshold value (in ms) of transaction’s response time for slow and very slow transactions.
- Select Dynamic Request properties: When enabled, you can use either:
  1. Query Parameter: When enabled, provide the request parameter value.
  2. HTTP request method (GET/POST/PUT) in transaction names.
  3. Specified HTTP Header: When enabled, provide the HTTP header name.
  4. Segment Number: When enabled, provide the segment number.

#### Tags

Tags categorize data from numerous sources or accounts, identifying teams, roles, environments, or regions for accountability. They streamline dashboard organization and workload searches, aiding in querying and charting APM data. Tags offer a high-level organization while allowing for finer details, like capturing user names or other high-cardinality values.

Users can also add a new tag by clicking the button. The following page opens user need to provide the details of the following fields:

- Name: Enter the desired name of the tag.
- Namespace: Select the required header name in this field.
- Field: Enter the field name in the space provided.
- You can also Edit( ) or Delete once you add the tags.

## Pattern Configuration

The rules defined in this section provide patterns of URL and dynamic request properties (HTTP methods, query parameters, and others) to identify business transactions.

Note: In pattern only ‘*’ is supported.

A list of business transaction patterns is displayed with the following details:

- BT Name: Name of the business transaction.
- Match Type: Match type could be either “exact match” or “starts with”.
- URL: URL pattern to be captured.
- BT Name: Name of the business transaction.
- BT Included: It is the business transaction included or excluded.
- Slow Transaction Threshold (ms): Transaction response-time threshold value for slow transactions.
- Very Slow Transaction Threshold (ms): Transaction response-time threshold value for very slow transactions.
- Query HTTP Parameters Key: Denotes the request parameter key.
- HTTP Method Type: Denotes the HTTP method type, such as GET, POST, PUT, DELETE, etc.
- HTTP Request Headers Key: Denotes the headers key for HTTP request.
- BT Method: Denotes the BT method type.
- BT Request Headers: Denotes the headers key for BT request.
- BT Response Headers: Denotes the headers key for BT response.
- BT HTTP Body: Denotes the HTTP body of the business transaction.

## The operations for the Business transaction pattern

- Configure Global Threshold Value(s): Defining thresholds here will overwrite the thresholds for individual business transactions that are used to categorize a transaction as slow or very slow.
- Browse from the File Manager: Used for uploading the file.
- Add a BT pattern: Use this option to provide a URL pattern as a base to capture business transactions. Any URL matching the specified pattern is considered as a business transaction.

## Configure Detection Rules

- Business Transaction Name: Provide an appropriate name for the business transaction that will be captured when the pattern is detected e.g: addToCart
- URL Pattern: Provide a URL pattern that will be parsed to identify matching URLs and to create business transactions
- Exclude BT: Select this option to Exclude this business transaction from being captured by the agent.
- Select Mode: Select the mode for capturing the Business Transaction following options are available :
  1. Exact Match: The application agent considers business transactions only when the transaction URL matches exactly with the provided pattern.
  2. Starts Match: It captures all the Business Transactions that start with the given URL pattern.
- Asynchronous Transaction: In asynchronous flows and operations, the transaction may first return a status of pending before returning a final status indicating the success or failure of the transaction request. By selecting this option all the asynchronous transactions will be captured.
- Select Dynamic HTTP Request Properties: Enable this option to detect business transactions by capturing the dynamic request for the HTTP callout.
  1. Request Parameter Key: Request parameters are part of the URL . Enter the parameter key and its corresponding value which will be used to detect the business transaction i.e. whenever this key value pair is detected in the request parameter, a business transaction will be created.
  2. HTTP Request Headers Key : A request headers key is an HTTP header key that the client sends to the server. .
  3. HTTP Method Type: The primary or most-commonly-used HTTP methods are POST, GET, PUT, HEAD,TRACE, CONNECT,DELETE and OPTIONS. These correspond to create, read, update, and delete (or CRUD) operations, respectively. Select the HTTP method type here against which the business transaction will be captured. For e.g. if you select GET, all GET requests will be considered as business transactions.
- Transaction Response Time Threshold Value: Transaction Response Time value represents the time taken for the application to complete a defined transaction or business process. Here you can categorize how to define a slow or a very slow transaction by providing the corresponding values in ms. Any business transaction matching the values provided are categorized as slow or very slow accordingly.
- Apply Global Threshold Value(s): Activate this option if you want to apply the global threshold values to categorize slow or very slow transactions. After enabling, it overrides the value defined under transaction response time threshold value and considers the value defined in global configuration. It will reflect all the configured threshold values after enabling global threshold value .
- HTTP Body Capture: Provides options to either capture the HTTP request & response body or not. Captures the HTTP message body that is the data bytes transmitted in an HTTP transaction message immediately following the headers if there are any (in the case of HTTP/0.9 no headers are transmitted). We can select the following options:
  1. Disable, do not capture body of request and response.
  2. Capture only request body
  3. Capture only response body
  4. Capture both request and response body
- Threshold Counter: Threshold counter can be used for example to get alerted if, in a specified time range, a Transaction is not executed at all.
- Method Instrument Level: User can set Method Instrument Level as per specified threshold counter Value .
- Log level: Logging levels explain the most common logging levels including FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL, and OFF. Select the appropriate log level to be captured against the configured business transactions. Do note that since this setting involves overhead, be careful while selecting the log level.

## Split by Method Execution

Business transactions are created based on the method executing these transactions. There are several methods which you can use to create a rule for capturing business transactions via methods. Click on the Add icon and you will be redirected to the popup where the following options are available:

- Fully Qualified Method Name: The fully qualified method name is the combination of package, class, and method name. The BT rule selected will be applied on the method provided here. For example, org.apache.commons.dbcp.BasicDataSource.getRemoveAbandonedTimeout()I,248
- BT Rule Based on Return Type: When selected, provide the business transaction name and add a matching criteria among <The match criteria is the selected operation for the added BT request header> followed by providing a value with which the name will be matched. Once matched, a business transaction will be created on the basis of the method return type.
- BT Rule Based on Argument: Provide the index of the method argument with which you want to create the transaction. For example: Configure Argument value as per method callout requirement.
- BT Rule Based on Method Invocation: In this case, provide a method ()and as the method is invoked, a corresponding business transaction will be created. For i.e org.apache.commons.dbcp.BasicDataSource.getRemoveAbandonedTimeout()I,248 .
- BT Rule Based on Method Return Invocation: The business transaction rule based on the method return invocation rules is the result of method return type calls.

## Split by Request Headers

Business transaction(s) are created based on headers. You can specify the headers by provides configuration for Business Transaction based on request headers, for monitoring using the specified headers.

The application agent creates business transactions for the headers specified by two ways:

- a) If we select Value then the BT will be on its value specific.
- b) Else BT will be on the others like- Equals, Occurrence etc.

This section provides configuration for Business Transaction based on request headers, for continuously monitoring these headers. Click on the add icon to add a business transaction header rule. Once clicked, you will be able to see the added request header rules denoting the following:

- BT Name: Name of the business transaction that is added to the BT request header
- Match Criteria: The match criteria is the selected operation for the added BT request header
- Match Value: The match value is the specified pattern that is added to the business transaction

In case you want to add a new request header rule, provide the following values:

- Header Name: Provide the name of the request header.
- BT Name: Enter the name of the business transaction that you will define via request headers.
- Select operation: Operation for the BT like Equals, Occurs, Value, etc.
- Pattern: You can give headers on operations selected.

Note that any request matching the rules you have provided here will be categorized as a business transaction.

## Split by Response Headers

Business transaction(s) are created based on headers in the response. The application agent creates business transactions for the headers by providing configuration for Business Transaction based on response headers, for continuously monitoring these headers.

This section provides configuration for Business Transaction based on response headers, for continuously monitoring these headers.

Click on the add icon to add a business transaction header rule. Once clicked, you will be able to see the added request header rules denoting the following:

Click on the add icon to add a business transaction header rule. Once clicked, you will be able to see the added request header rules denoting the following:

- BT Name: Name of the business transaction that is added to the BT response header
- Match Criteria: The match criteria is the selected operation for the added BT response header
- Match Value: The match value is the specified pattern that is added to the business transaction

In case you want to add a new response header rule, provide the following values:

- Header Name: Provide the name of the response header for example ProductUI/productSummary.
- BT Name: Enter the name of the business transaction that you will define via response headers.
- Select Operation: Operation for the BT like Equals, Occurs, Value etc.
- Pattern: The operating policies and procedures will identify the transaction pattern(s) and the specifications required to implement each transaction pattern.
- Response Header Rule(s): Rule list defined for the Response Header.

#### Tags

Tags organize data coming from a large number of sources and/or to a large number of accounts. It identifies teams, roles, environments, or regions to know who's responsible for what and also organizes and searches dashboards and workloads to Query and chart APM data. Tags are useful for organizing data at a high level to add more fine-grained detail, like capturing user names or other high-cardinality values. This functions the same as described in global configuration tags.

Note:

- All the BT configured names are displayed in the same place in the BT Pattern table. You can browse, add, edit, and delete a business transaction pattern. You can add a new one under the following four categories:
- Edit Response header: Editing response headers involves modifying the metadata sent by a web server along with the actual content of a requested resource. This can include adjusting parameters like content type, caching directives, or security settings.
- Delete Response header: Users can delete a specific response header by selecting the checkbox and clicking the delete button.