When triggered, an event is a situation or condition that is identified in data that is captured by Tealeaf that causes an action. An event definition specifies the hit attribute or other data that must appear in the request, response, or session as a whole.
Using an event, you can detect and report on one or more conditions that occur in a single session. Events do not work across multiple sessions.
An event is defined as a combination of a trigger, a condition (such as a matching hit attribute), and an action. For example, an event can be configured to trigger at the start of a page to look for a specific set of HTML tags in the response and, if the tags are found, to store the value in between the tags.
A Tealeaf event can be the appearance or absence of a specific data element or value in the request or the response. Resulting actions can include setting values and generating alerts.
Some events are specific to a hit, while others can be processed only with the entire session in hand. As each hit is added to a session in the Short-Term Canister, event definitions are compared against the data in the hit. When a session ends and is written to the Long-Term Canister, events that are associated with an entire session are evaluated.
Event definitions
Events are a combination of triggers, conditions, actions, and dimensions.
The components of an event include:
Trigger - The page- or session-level state at when the event is evaluated.
Condition - The event, session attribute, or hit attribute that is searched for in the session data. If the condition is detected, the event fires, and the specified value or values are recorded.
Action - The data to record and the method of recording. The specification of the action indicates the type of value and the instance of it to record to the database. Event-related data is written to the Short-Term Canister and can be aggregated into the reporting database. Recorded values can be used in reporting or to trigger a condition in a later event.
Dimensions - In addition to the values stored with an event, such as the current value of the shopping cart, an event can store other contextual information available at the time of the event. These contextual dimensions can include values such as the username, the browser type, or almost any data from a tracked data set.
Event relationships
Event-related components relate to the reporting capabilities of the Report Builder. Each event is defined by the trigger, the condition, the action, and values and dimensions to record.
Values can be a count, a numeric value, or a text string.
- Numeric values that are associated with the events can be graphed in the Report Builder.
- The text values can be used as instances of a dimension.
Based on when evaluation of an event occurs, conditions can depend on different data objects. Since some events are contingent upon various combinations of hit attributes or other events, the Event Manager provides for various combinations of conditions.
In practice, almost all conditions are based on a text pattern that appears in the data stream.
Session attributes: In addition to managing events, hit attributes, and dimensions, the Event Manager also enables configuration of session attributes that can be read and set by events, which are used in alerts fired based on events, and tracking of major movers (deviations). Session attributes are used to save interesting session state information with the session for later conditions or reporting.
Event types
Tealeaf supports two types of events, standard and canister.
Standard Event: A typical event is triggered based on pattern data that is detected in the capture stream.
Canister Event: Associated with each session in the Canister, Tealeaf maintains a set of events that track useful session-related information for you. These events cannot be configured. You can create alerts that are based on them.
Through the Event Manager, you can create events.
An event can also be a combination of one or more other events. For example, if the visitor received a specific error code and completed a purchase, you can record the occurrence of that event. You can create an alert that is based on an event firing. Alerts deliver information to Tealeaf users in one of multiple formats.
Trigger
An event can be triggered in any of the following situations, which are listed in the order of occurrence during a visitor session:
Trigger | Description |
---|---|
First Hit of Session |
Evaluated when a new visitor's session begins. |
Every Hit |
Evaluated before any part of a new hit is evaluated. |
After Every Hit |
Evaluated after all parts of a hit are evaluated. |
Last Hit |
Evaluated after the last hit of the session is captured and evaluated. |
End of Session |
Evaluated when a visitor's session ends, either as defined by event or system timeout. |
Conditions
The condition defines the event, hit attribute, or session attribute that is searched in the session data. This data element is evaluated against criteria you define to yield a true
or false
value.
The conditions are evaluated at the Trigger time and are based on the context. There are two contexts: one for the hit triggers and one at session end.
- Hit conditions include any text patterns in the current hit, the existence or value of any event that occurs in the session, or any session attributes defined.
- Event conditions exclude the ability to evaluate hit attributes that occur in any hit but include support for the other conditions.
Evaluation criteria depend on the type of data.
- Conditions that evaluate numeric data have comparison and equivalency operators, null tests, and inclusion/exclusion tests. You can test first, last, count, and found patterns of the numeric data.
- Conditions that evaluate text data have equivalency operators, null tests, and inclusion/exclusion tests.
Conditions that evaluate as true
cause the action that is specified in the event to be taken.
Event dependencies
As part of the configuration of the conditions for an event, you can require the presence of another event or event value, which creates an event dependency.
There are two available methods for creating dependencies between events:
- Implicit dependency - Tealeaf events can be triggered at the start of session, first page, end of page, on the last page or at the end of the session. These discrete points of evaluation can be used to create implied dependencies. For example, you can guarantee that any event configured to trigger on the last page can reference the output that is generated by any event that is triggered at the start of the session.
- Explicit dependency - As one of the conditions of the event, you can specify that another event or event value must be present. Explicit dependencies are only valid between events that share a trigger point. For example, an event that is configured to be triggered at
Every Hit
cannot reference events that are triggered atLast Hit
.
Explicit dependencies can be reviewed through the Event Manager.
Action
In the event action, a value can be stored when the event occurs, which can be the count of the event that occurs, the text or numeric string that is obtained with a hit attribute, or the contents of a previous event value or a session attribute.
The action defines:
- The value or values that are recorded.
- Values that are tracked for recording are defined in the Event Summary of the Event Wizard of the Event Manager.
- Values that are recorded are defined in the Value step of the Event Wizard of the Event Manager.
- The availability of the data for search and reporting.
Event testing
Since the number and complexity of events can affect system load, it is important to ensure that events produce the wanted data. The Event Manager includes an integrated tester to test your defined events against session data before it deploys them in the live environment.
Event execution
After objects are created or edited with the Event Manager are saved, the event definitions are replicated to the Processing Servers (Canisters) where they are run. Searchable and aggregated reporting data is generated when the event fires. The time lag between saving changes and being able to see results depends on both system configuration and load.
Planning events
Before you begin building events, you must spend some time to consider how events can be used to model the business processes reflected in your web application. There are several up-front considerations in how to build events to manage important categories of information about your web application.
KPIs
Key Performance Indicators (KPIs) are the metrics that you define for measuring success toward strategic goals. Before you begin, you must attempt to identify conceptually what are the metrics to determine whether your web application is pursuing and reaching enterprise goals.
These goals can include:
- Increase revenue from the site
- Increase brand awareness among visitors
- Increase the size of your site user base
- Decrease the volume of calls in your call center.
Specific goals include the following metrics:
- Conversion rates for the checkout process
- Average order value
- Percentage of search engine searches that use a sponsored or branded keyword
- Site registrations per campaign clickthrough
- Average number of call center calls per site visit
You can also use KPIs to identify aspects of the site that did not work, such as:
- Number of declined credit cards
- General failures to convert business process (start process but never complete)
- Server generation time takes too long
- Application-level errors
- System errors
Sometimes, identifying these conditions for building events to track them is not intuitive. For example, depending on how your web application is constructed, the basic user event of "abandon checkout process" can include the following events as failure steps:
- Moving back to product pages
- Clicking a Contact Us link
- Opening FAQ pages
If you develop separate events on these items and then consolidate them into a single "Abandon Process" event, you can quickly analyze the most common sources of customer abandonment.
You can also create events that are identified as abandoned, but the reason for which is not known. For example, you can create an event checks for the general abandonment condition and the NOT conditions of the identified methods of abandonment. By identifying the unknown, you can explore the reasons why it is not known.
KPIs are typically defined as one or more linked events, which are surfaced in reports or scorecards.
cxView supports the development and publication of KPI scorecards.
Errors
Tealeaf monitors and reports on errors that are encountered during a visitor's experience with your web application.
Errors can be categorized into the following types:
Type | Description |
---|---|
System errors | Tealeaf provides a set of events for tracking HTTP Status Code errors (4xx/5xx). These events are enabled by default. You can explore how to use these events through the end-to-end scenarios. |
Application errors | These errors typically cause an error message to be generated and displayed in the response for visitors to your web application. Since these errors are specific to the web application, no default events are provided. Example application errors include JavaScript™ errors, other code exceptions, and services or APIs being unavailable. |
Business rule errors | Business rule errors are violations of how data is expected to be submitted, which can result in things like rejected credit card numbers. |
Usability errors | Usability errors are typically issues in which the submitted data fails validation, such as when a required form field is submitted with an empty value. |
The preceding categorization covers a broad range of potential issues with any web application. As part of your event development, you must look to group errors into categories, by using group lists. For example, suppose that your web application generates over 2000 error messages. You can group error messages into categories to simplify reporting. Instead of looking at individual log error messages, for example, report consumers can analyze the counts of log error messages in reporting.
- Error messages can be categorized by storing their values in a dimension, which uses group lists to define the groupings of values.
- The error messages can be uploaded by a tab-delimited file to populate the available dimension values.
UI capture tracking
If you are using the UI Capture solution to track events in the client interface, you can create events to capture and record these actions for reporting. Since the data that is submitted to Tealeaf from the client interface is different from the data that is submitted through standard browser capture, you might be required to create special events for these actions and, if desired, other events to normalize them to your standard reporting data.
- When creating events from UI Capture data, verify that your events are configured to match on the
Last Match Per Hit
value. - The value of these events can be used to populate dimensions.
- Particularly for form fields, UI Capture can be instrumental in identifying areas of customer struggle, allowing you to redesign the sequence of fields or remove unused or confusing fields.
Performance monitoring
Tealeaf provides several events for monitoring application performance.
These events enable tracking of the following types of application performance metrics:
- ReqCancelled by client or by server
- Server generation time
- Network time
- Roundtrip time
- Render time
Some of the preceding metrics are not available in standard HTML traffic. You must deploy the UI Capture solution to track render time in the client.
Through Tealeaf reporting, you can compute average, minimum, and maximum values for these metrics. These reports are available through a separate reporting interface.
These events can be linked to other business process or performance events. For example, you can track the frequency of incidents when a large render time resulted in a client-initiated ReqCancelled event. Those events can then be correlated to your abandonment processes to identify if visitors are quitting because of performance issues and whether those issues apply to a specific page.
Segmentation
You can use dimensions to identify poor or well-performing segments.
Example segments include:
- Process flows/abandonment
- Visitor acquisition (campaign, keywords) tracking
- Technical delivery of content that is based on browser version, platform, operating system, and so on.
- Different landing pages
- Internal marketing campaigns
- Internal search/failed search tracking
- Third party tools or site tools usage
- Customer profiling and loyalty
- Multi-channel conversion
- Time-of-day analysis
Tealeaf provides a number of default calendar dimensions.
Before you begin, you must consider the segments of your users that you want to analyze in reporting, which drive the events that you create and enable in Tealeaf.