Many industries have complex workflows and user journeys that span multiple transactions and event types, such as logs and End User Monitoring (EUM) data. These workflows typically take a long time to manifest and cannot be measured using transactions alone. Business Journeys are a way to monitor and correlate the data flow across multiple event sources and track the total end-to-end time for defined business workflows.
Typical multi-step workflows from different industries include:
- Payment transfers, credit card approval, and loan approval in financial services industries
- Cellphone activation and data recharge (pre-paid) in the Telco sector
- Insurance application through policy approval and insurance claims approval for insurance companies
About Business Journeys
An AppDynamics Business Journey is a composite event type based on complex and long business workflows. A Business Journey can include events from multiple analytics event types, such as logs, business transactions, custom events, and EUM data.
The following image depicts an example Business Journey configuration for a loan approval workflow.
You create a Business Journey, as shown above, by defining the following:
- Milestones and the events comprising the milestones.
Milestones are the steps in your business workflow.
- Fields to be captured from each milestone event.
A field indicates a category of information pertaining to the event.
- The primary key field that uniquely ties the events together.
A primary key correlates the milestones for your Business Journey. The primary key value must be present in each milestone event.
- Additional fields that allow you to segment on different dimensions of the business workflow, such as loan types or payment amounts.
- Health thresholds for monitoring the Business Journey performance.
Application Analytics starts collecting the Business Journey events after you have defined and enabled a Business Journey. Analytics does not go back in time to collect Business Journey composite events. To define specific Business Journeys, you may need to configure the collection of additional fields from your source analytics events. See Data Prerequisites for Defining Business Journeys for more information. Once the Business Journey events are being collected, you can view them from the Analytics Search UI in the same manner as other Analytics events. Because Business Journey events are, by their nature, potentially long-running processes, useful data might take some time to appear in the Analytics events list. Business Journey events are reported even when only one milestone is completed and the event is updated over time as subsequent events complete.
Business Journey Milestones
A milestone is an event marking a significant stage in a business workflow. For example, in a loan application, the first milestone might be a user submitting a loan application. The second milestone might be document verification, followed by credit approval, insurance underwriting, and finally, loan approval. In each Business Journey milestone, you can add filters to specify the events that constitute a milestone and add fields to capture additional information about the workflow. You can use these events and fields to run ADQL queries and narrow down your searches.
As you create milestones, a flow map detailing the business workflow is automatically displayed in the Business Journey page. For more information, see Enable Flow Maps.
When creating a Business Journey, you must use the same data type for the Primary Keys of all Milestones in that Business Journey.
Business Journey Health Thresholds
A threshold is a boundary of acceptable or normal performance. Business Journey authoring provides default health thresholds against which it compares the performance of the business workflow. The health thresholds are based on the total time to complete all the milestones in your Business Journey. The threshold values are calculated by determining the standard deviation from the simple moving average over an interval of time. The default time interval is two hours. This means that if the average end-to-end time for the last two hours is N milliseconds, and if the Business Journey takes time equal to the standard deviation over N milliseconds (ms), it violates threshold.
Consider a simple moving average that is 1500 ms with a standard deviation of 100 ms. If you set the threshold to three, it means that the threshold is three times the standard deviation. In other words, a transaction that takes more than 1500 + (3*100) or 1800 ms violates the health threshold.
Before configuring health threshold for a Business Journey definition, consider the following:
Fields and Filters
Filters allow you to extract event data for a selected milestone based on selected criteria. For example, loan applications submitted in New York. Filters define the scope of a milestone by limiting associated events.
The last 15 days of data is used to populate mandatory filter values. If no analytics data has been collected during the last 15 days, the drop-down menus for the mandatory fields will be empty. Besides the mandatory filters for each event type, Analytics allows you to optionally select additional filters by using the Filter By option. All the fields that are part of the filters and the additional filters that you optionally choose are automatically collected. You can use them to run ADQL queries later on.
A field indicates a category of information pertaining to the event. The Extract Fields section collect additional relevant information from each milestone. You can use this data to query desired events and visualize metrics. The fields are categorized into mandatory and optional fields. The only mandatory field you must enter is the primary key. It is the unique identifier that ties milestones together to constitute a Business Journey.
In addition to the primary key, you can optionally add additional fields. These fields provide context for your Business Journey definition. For example, loan amount, loan type, customer name, customer id, and so on provide further details about a loan application. You can use these additional field values to slice and dice business transaction data later on. You must provide unique fields for each milestone. Validation fails if you create more than one milestone with the same set of fields or with the same set of mandatory and optional filters.
For each milestone, a field called
milestoneReached is added to the associated event. The value is true if the milestone has been reached, otherwise it is null. You can use this field to query all events for which a milestone has been reached. You can also use
milestoneReached to build a funnel widget that shows dropoffs for each milestone.
The milestone name is appended to the field name as follows:
Likewise, the default fields and filters are also appended with and namespaced by milestone name.
At the Business Journey level, a field named
completed tracks the status of the workflow using the boolean values. True represents a completed Business Journey, whereas False indicates that the journey is in progress or is incomplete. Use the Analytics Search UI or an ADQL query for the desired Business Journey with the query string
completed to view the status of the associated events.
The end-to-end time of the milestones comprising the Business Journey is represented by the
totalTime field. This field will be empty when the Business Journey is partially complete. As each milestone completes and the event data is captured in the Business Journey event, the total time is updated.
Mandatory filters, mandatory fields, and fields extracted by default depend on the event type as shown in the following table.
|Event Type||Required Filters||Required Fields||Fields extracted by Default|
Business Transaction Name
Network Request Name
|Custom Events||Source Type||none||eventTimestamp|