The Data Manager feature is available in Countly Lite, Countly Enterprise, and built-in Flex. However, Countly Lite offers limited access.
The Data Manager feature can be used to plan, manage, edit, delete, and modify Events and Event Segmentations, including performing actions such as transformations on Events or User Properties and managing their data types. The Manage Events View is now part of Data Manager.
Getting Started
First of all, make sure Data Manager is enabled. To do so, go to the Sidebar > Management > Feature Management and enable the Data Manager toggle.
Then, to access Data Manager at any time, on the Main Menu, go to Utilities > Data Manager.
Data Manager Overview
Understanding Data Manager Actions
Before we jump into a detailed, step-by-step guide on how to use Data Manager, let us first delve into some of the aspects that the feature touches upon. These include:
- Event: An Event is any interaction between your users and the app that you have selected to track. To know more about Events, click here.
- Event key: It is the unique key used for defining each event, and it is case-sensitive.
- Segmentation: Segmentation involves the application of segments - key qualifiers that help in filtering data - to Events. To know more about Segmentation, click here.
- Segmentation Type: Segmentation type can be any / list / boolean / string / integer (number).
- Event Groups: Event Groups allow you to create and manage groups of existing Events. This helps you visualize Events that are highly related when compared to other Events, while also making it easier to work with events when using other features.
- Validations: This allows users to keep their data clean by ensuring that no Event or Segmentation is set and sent via the SDK or API by mistake. Through Validations, Countly checks Events before using it for aggregated or granular data against set Event Segment keys.
- Segmentation value regex validation: This is used to detect PII data (like phones, social security numbers). If a user expects some fields may contain PII information, they can set up a regex to detect it, like email address or PII data (social security number which has pattern, etc.) and Countly would ignore or validate it.
- Transformations: Transformations is available only in Countly Enterprise and can be undertaken by any user with update permissions. A transformation modifies the target data as defined by a created rule. Two types of transformations can be applied to Events, Event Segmentation, or custom User Properties: Rename and Merge. This process is retroactive so when the transformation is applied, historical data and new data will be updated. It provides the ability to correct any mistakes on implementation or easy re-structuring of data on UI without the need for any effort on the code side or running a script. Details of transformations for each tab of Data Manager are discussed in the relevant sections below.
-
Status: This can be created, approved, live, blocked, or unplanned, and you can update the status of events or segmentation from the bottom bar that appears when you select any event or segmentation from the tables.
- Created: Not approved but planned events are shown with "Created" status. It means that the event is not live, not visible to users (e.g., on Drill or All events etc.), not in use in charts, tables, drop-downs, and Countly hasn't started to track it yet.
- Approved: Controlled by users and is has recently begun to track, but not visible to users on the event or segmentation list, not be in use on charts, tables etc.
- Live : Events that are tracked and counted, visible to users (on Events page, drop-downs etc.), is in use on charts, tables etc.
- Blocked: Event data is no longer collected, visible to users for historical data (on Events page etc.), but is in use on charts, tables, drop-downs, etc., due to historical data.
- Unplanned: Event data that are sent via SDK or API which are not on the Event Scheme. If developers or different departments create an event without planning it on UI, it is assumed as unplanned.
Using Data Manager
In Data Manager, you can manage your Events, Segmentations, Event Groups, Validations, and Transformations, including data types. To start, go to the Main Menu > Utilities > Data Manager. We will go through each section in detail below.
Events
You can see a list of your Events in Data Manager under the Events tab, along with some key information:
- Event name: It is the display name of an event, and is editable. An event name input field is limited to the SDK limits.
- Description: It is used to describe the event and segmentation. A description input field is limited to the SDK limits.
- Category: It is used to categorize and manage events. If any category is not defined, events are shown as “uncategorized”.
- Count: This shows the number of times the event has occurred.
- Status: It is a predefined field that shows the status of an even and can be Created, Approved, Live, Blocked, Unplanned, or Deleted.
- Visibility: It shows the visibility of an event and can be Visible or Hidden.
- Last modified: The date and time this event was most recently modified by a user. The format is DD/MM/YY hh:mm.
- Last modified by: The name of the user who last modified the event.
- First Triggered: The date this event data was first received by Countly. Date format is DD/MM/YY.
- Last Triggered: The date this event was most recently received by Countly. Date format is DD/MM/YY.
- Custom input column: This column can be created by users for their own internal notes like business goals or other purposes.
Some of the columns are shown on the table by default. The remaining are customizable, and can be added to the table by any user with the permission to do so. Click on the 3-line button to select and deselect the columns as per your preference.
Note: Last modified by and last modified date are fetched from the Audit log feature. If Audit logs is disabled, these data aren’t shown. A notification is displayed on the page to inform users to enable the Audit Logs feature to see this data.
On the Events tab in Data Manager, you can:
- View event details with their segmentations
- View the event key
- Edit visibility
- Edit status
- Edit the event name
- Edit the event description
- Edit the event properties name (count, sum, and duration, but not segmentations)
- Categorize event(s)
- Delete event(s)
- Search for an event
- Filter events by Status, Category, Visibility (or Search bar may be used for Visibility and category)
- Export event list with all data shown on the table
- Customize columns to add different columns to the table
- Transform
- Create an event
- Undertake a Bulk Edit via The Event Schema file
Note:
- Blocking any events can be applied by using the Filtering Rules feature. On the Data Manager feature, users can only see which events/segmentations are blocked.
- The Event tab is accessible to users of the Community Edition, except for the Transformation feature.
Creating an Event
You can create an event on the Events tab in Data Manager, but SDK implementation requirements will still be valid.
To create an event, simply follow the below steps:
- Click the Create New button and then select the Create New Event option.
- Give your (display) name to the event, which is a mandatory field.
- Enter a unique event key, which is a mandatory field. Event_key of the events sent via SDK will be matched over event_key on UI. event_key is case sensitive. Note that if event_key doesn’t exactly match with event key sent via SDK, all requests for this event will be shown as “Unplanned” on Validation and a warning message will be shown.
- Enter a description by considering the applicable character limitations. Description is an optional field.
- Select a category (this is not mandatory; if it is not selected, the event is automatically listed as “uncategorized”)
- Add segmentation (this is not mandatory) to your events if it needed and desired, by clicking on Add more.
- Check the “Required” option if segmentation is mandatory.
- Enter segmentation name and segmentation description. Make the description field mandatory if the “Required” option is checked.
- Enter segmentation description. Make this field mandatory if the “Required” option is checked.
- Set the type of each segmentation.
- Click Save Changes.
Created events are listed with “Created” status on the Event table.
Editing and Managing Event Category
You can edit the Event category in two ways:
Edit Event from drawer:
You can edit the category of any Event from the drawer on the Event Detail page by following these steps:
- Open event details page by clicking on the 3-dot ellipsis menu next to any event and clicking the Edit button.
- Select any category from the Category drop-down
- Click the Save button to complete the process.
Shortcut: Event overview table
- Select the event by checking the box next to the event name from the event table
- Click the Change Category button on the action bar that will be appeared at the bottom of the page
- Select any category from the Category drop-down
- Click the save button to complete the process.
Editing and Managing Events
Some Event details can be edited directly from the Events tab or the Event Details page. These include:
- display name
- description
- category
- status
- event properties name
- visibility
Note that event_key cannot be updated from the drawer. Editable display event name is used on Countly for better UX and taxonomy.
To update any Event field, follow the below steps:
- Click on the 3-dot ellipsis menu at the right on any Event
- Click on Edit
- Click the Event Display name and enter the new display name for the event.
- Click the description field to update the description
- Select any category from the drop-down list to update the category of the event (not available for Community Edition)
- Click on “Add event segmentation” to add more segmentation if you need.
- Select Status from the drop-down list. Updated event status will be directly applied to segmentation status. Please use Segmentation tab to edit each segmentation status if you need to keep it different from the event status.
You can also update the category and status by checking the box next to the Event name, followed by selecting any action (update category/status/visibility) you need from the action bar.
Deleting an Event
Available in both Countly Lite and Countly Enterprise, deleting an event will remove the historical data and remove the event from the Events feature and other query builder drop-downs, such as Drill. This means that you will no longer be able to query on the event. Keep in mind that when you delete an event, it will remove existing data from your historical data. If new event data is sent via SDK after it was deleted, Countly will count it from zero right after the first data is received via SDK. Deleted events and segmentations will no longer be available in drop-downs of query builders or filters unless it is blocked from filtering rules or it will show up again as an unplanned event (for Enterprise Edition users).
Follow the below steps to delete any event
- Click the checkbox next to the event name on Events tab.
- Click Delete from the action bar at the bottom of the page.
- A verification modal will appear for the deletion process. Confirm your deletion request.
OR
- Click the 3-dot ellipsis menu on the right of the relevant Event row.
- Select the Delete option and confirm the warning message
Blocking Events
You can stop Countly from collecting event data by blocking it. When you block an event, Countly will immediately stop processing data for it until you decide to unblock it. Countly provides a Filtering Rules plugin feature for this purpose. This feature is used for blocking or unblocking any event instead of doing it with Data Manager.
Transformation
Transformation on Events can be applied to merge events. Event transformation allows users to merge multiple events or merge into one if an event already exists. It is simply renaming one event as another, as in, changing the event key to another event key. If these events have different segmentations from the events that will be merged, then these events’ segmentations simply add as a new segmentation to the event. But if the segmentations are the same, then the first one’s description is used for listing and reporting.
Important Note: Transformation is permanent, so it cannot be reversed for existing data. Transformation can be disabled from the UI but historical raw data cannot be reversed. Only new incoming data will be updated when the transformation is disabled.
You can merge events in either of the following ways:
Merging by selecting events (for existing events)
This is useful for merging a few events into an existing event or a new event name. You can select the event from the dropdown and merge the selected events to this existing event. To use this method, follow the below steps:
- Click the Create New button and then click on Create New Transformation
- Select the Merge by selecting events option
- Select the events
- Select the event which will be used to rename and merge selected events
- Click the Save button to complete the transformation.
Merging by Regex
If you need to merge multiple events to one event, like renaming 1200 event keys and merging them to a new event or existing event, it would be easier to do so by regex, rather than handling each case separately.
This option allows you to rename multiple event keys by Regular expressions instead of selecting them manually. Events are selected by regex for event keys and changed with the provided value. As a result, multiple events would be merged.To use this method, follow the below steps:
- Click the Create New button and then click on Create New Transformation
- Select the Merge by Regex option
- Enter regular expression in the input field to select event_keys
- Then enter the new value you want to use for event_keys and Save.
Use Case
Event |
Segmentation 1 |
Segmentation 2 |
Event1: add_card_item |
item_name |
purchase_count |
Event2: add_card_category |
category_name |
purchase_count |
Event 3: Add_card |
item_name |
page_title |
If a user needs to merge Event1 and Event2 to Event3 with the purpose of no longer tracking the same user behavior with different events and seeing the correlation between these data under a single event, the user should use Transformation. After transformation, the user sees Event 3 on both aggregated data (e.g., Events charts) and granular data (e.g., Drill queries). Note that it will be valid for both existing and incoming data.
The new structure would still show separate event documents (e.g., Drill has a separate document for each occurred event):
Event |
Segmentation 1 |
Segmentation 2 |
Event1: Add_card |
item_name |
purchase_count |
Event2: Add_card |
category_name |
purchase_count |
Event 3: Add_card |
item_name |
page_title |
But for meta information it would show all these segments. For example, in the Drill query dropdown for Add_card event it would show all the segments to be able to select.
Event 3: Add_card |
Segmentation |
Segmentation 1 |
item_name |
Segmentation 2 |
page_title |
Segmentation 3 |
purchase_count |
Segmentation 4 |
category_name |
- Event 1 had a segmentation (item_name) that matched that of Event 3 (item_name), so the segmentation with the same and unique segmentation name was directly merged to the existing segmentation of Event 3.
- Event 1 and Event 2 had the same segmentation with the same segmentation (purchase_count) but Event 3 didn’t have this segmentation before the transformation. So, purchase_count data of both Event 1 and Event 2 was merged to the new segmentation of Event 3 named Purchase Count with purchase_count segmentation.
- categoryName segmentation of Event 2 was added to Event 3 as a new segmentation.
Users can disable/enable/edit or delete transformations from the UI. When a transformation is deleted, transformation on existing data cannot be reverted. But transformation on incoming data will stop.
Segmentation
Event segmentations can be found on the Segmentation tab in the Data Manager. The list of segmentations contains some key information:
- Segmentation name: The name of the segmentation
- Event name: Event name of the segmentation
- Status: It is a predefined field and can be Created, Approved, Live, Unplanned, or Deleted
- Last modified: The date and time this event was most recently modified in the format of DD/MM/YY hh:mm
- Last modified by: The name of the user who last modified the segmentation
- Visibility: Visibility status, as inherited from the parent event.
- Segmentation type
Some of these columns are shown on the table by default. The rest are customizable and can be added to the table as per requirements.
On this tab, you can:
- View all segmentations with their events
- Edit status
- Edit segmentation description
- Omit segmentations
- Delete segmentations
- Search for an event or segmentation
- Filter segmentations by status, name, and event
- Export segmentation list with all data shown on the table
- Transform
Note:
- The Segmentation tab is accessible by Countly Lite users with only the Omit option on the action button. Transformation will not be accessible by Countly Lite users.
Editing and Managing Segmentations
Users can update the below fields in segmentations:
- description
- Status
- Type
- Required (When the validation checks an incoming event with a segment key defined as required then the segment key should be in the segmentation object of this event. If the required segmentation key is not present, then a validation error should be triggered, flagging the missing segmentation field and its parent event)
To update any fields of the segmentation, follow the below steps:
- Click the segmentation you want to edit
- Click the Edit Segmentation button on the Segmentation detail panel
- Type in description field to update the description
- Update the segmentation type from the drop-down list
- Update the status from the drop-down list
- Uncheck or check the Required button to update this option
Note: The segmentation detail page is not available for Countly Lite users.
You also have the option to update status by selecting the event from the checkbox, and then selecting the action (update status or delete) you need from the action bar.
Deleting Segmentation
This is available only for Countly Enterprise users. Deleting a segmentation will remove the segmentation from the Events feature and other query builder drop-downs like Drill, which means that you will no longer be able to query on the segmentation or see data for the deleted segmentation. The same logic described on the Delete Event topic is valid for the Segmentation delete process.
To delete segmentations, you need to follow the below steps:
- Click the checkbox next to the event name in the table on the Segmentations tab.
- Click Delete from the action bar at the bottom of the page.
- A verification modal will appear for the deletion process. Confirm your deletion request.
Alternatively, you can delete a segmentation from the segmentation detail page by clicking on the 3-dot ellipsis button to the right of the relevant row, and clicking Delete.
Transformation
You can apply transformations on segmentations to:
- Merge segmentations
- Rename segmentation
- Modify segmentation values
Merging segmentation
This allows you to merge multiple segmentations into a new segmentation. The values for segmentations will be replaced (overwritten) by the segmentation being merged. See the example below:
Before merge:
Event: contactButtonclick |
|||
Segmentation 1= page |
Segmentation 2= trigger |
||
Value |
Count |
Value |
Count |
/ |
256 |
ab-testing-plugin-link |
1 |
/about |
8 |
academic-program-contact |
1 |
/academic-program |
1 |
apply-for-partnership |
4 |
/academy |
3 |
automated-push-notifications-plugin-link |
1 |
The new structure will be the same on DB, but still have separate segmentation documents (like Drill has a separate document for each occurred segmentation)
Event: contactButtonclick |
|||
Segmentation 1= page |
Segmentation 2= trigger |
||
Value |
Count |
Value |
Count |
/ |
256 |
ab-testing-plugin-link |
1 |
/about |
8 |
academic-program-contact |
1 |
/academic-program |
1 |
apply-for-partnership |
4 |
/academy |
3 |
automated-push-notifications-plugin-link |
1 |
For meta information, however, it would show only the new segmentation For example, in the All Events drop-down for the linkClick event, it would show one segmentation (new one) to be able to select.
Event: contactButtonclick |
|
New Segmentation = pageTriggers |
|
Value |
Count |
/ |
256 |
/about |
8 |
/academic-program |
1 |
/academy |
3 |
ab-testing-plugin-link |
1 |
academic-program-contact |
1 |
apply-for-partnership |
4 |
automated-push-notifications-plugin-link |
1 |
You can merge segmentations by following the below steps:
- Click the Create New button and then select Create new Transformation
- Choose the Merge option by checking the radio button
- Select the event from the drop-down
- Select the segmentations to merge
- Enter the new segmentation name
- Select a transformation method that will apply to the data (existing data, incoming data, or both)
- Click the Save button to complete the transformation.
A transformation is permanent, so modifying all the data cannot be reversed. Transformation can be disabled from the UI but historical raw data cannot be reversed. Only new incoming data will be updated when the transformation is disabled.
Renaming segmentation
This is used to rename segmentation for incoming data. Note that if you rename a segmentation from the Schema , it will only cover the existing data, not incoming data. But with Transformations, you can choose the transformation option for existing or incoming data, or both. In case both existing and incoming data are renamed, then both Rename options should be performed to rename both existing and incoming data.
To rename segmentations, follow the below steps:
- Click the Create New button and then select Create Transformation
- Choose the Rename option by checking the radio button
- Choose “Rename with Specific Value” or “Rename with Regex” with Specific Value”
- If the “Rename with Specific Value” option is chosen:
- Select the event from drop-down
- Select the segmentation from drop-down
- Enter the new segmentation name (if it is renamed to segmentation that already exists, then it would overwrite the value in existing segmentation. Countly display a warning message after checking for conflict)
- If the “Rename with Regex” is chosen:
- Enter regular expression to select segmentations for the transformation
- Enter the new segmentation name (if it is renamed to segmentation that already exists, then it would overwrite the value in existing segmentation. Countly display a warning message after checking for conflict)
- Click the Save button to complete the transformation.
After the process is completed, the Schema is automatically regenerated in the background.
Modifying Segmentation Value
This allows the modification of event segmentation values (only values). To modify the segmentation value, follow the below steps:
- Click the Create New button and then select Create Transformation
- Select the Modify segmentation value option from Transformation types.
- Select the segmentation from drop-down
- Enter regular expressions to find values, like (title) for the given example above
- Enter new value
- Click the Save button to complete the transformation.
Use Case:
Keep consistency for taxonomy on segmentations:
value 1= pageTitle
value 2=page_title
value 3=title
Select and modify them as PageTitles.
Omitting Segmentation
This allows you to delete segmentations from aggregated data only, and keep recording granular data as string. Omitted segments will not be saved in the future, and past data for these segments will be purged immediately after you save these settings. Data for omitted segments will still be stored in Drill.
To omit segmentation value, you need to follow the below steps:
- Select segmentation by clicking the checkbox next to the segmentation name on the Segmentations tab.
- Click the Omit button from the action bar at the bottom.
- A verification modal will appear, instructing you to type in a confirmation phrase to continue with the omit process. Confirm your omit request.
Bulk Edit
Bulk edit is a great feature for when you have hundreds of events and need to update the event-based data structure. Using Event Schema, you can update event and segmentation fields over a CSV file.
Note: Bulk Edit is only available for Events and Event Segmentations for now.
The fields that can be planned/updated via Event Schema are:
- Category
- Event Key
- Event Display Name
- Event Description
- Input Field (if required)
- Status
- The number of Segmentation Event includes
- Event Segmentation
- Segmentation Description
- Segmentation Type
- Segmentation Status
- Segmentation Is Required
- Segmentation Is Array
- Segmentation List Options
- Segmentation Regex
You can export and import the Event Schema via CSV to plan or update events and event segmentations. Please check the table below to see the structure.
Updating Status
To update the status, follow the below steps:
- Export Event Scheme as CSV file
- Type one of the available statuses – Created, Approved, Live, Deleted, or Unplanned. For blocked events, you have to use the Filtering Rules feature. Even if you change the status of blocked events (e.g., blocked to created) and see the updated status on UI, Countly will keep blocking it until you disable Filtering Rules.
- If the unplanned status is changed to created or Created, Approved, or Live, it means that these events or segmentations with unexpected status are approved. For live status, Countly uses these events/segmentations data for all charts and tables.
- Avoid breaking the sheet structure to cause import problems.
- Upload updated schema as CSV file and preview changes before publishing them. Click the Publish button to approve all changes.
Updating Description, Category, and Input Fields
These fields can be updated via a CSV file by following the below steps:
- Type in description or category or input field user-defined to update them.
- All input fields are limited to the SDK limits. Don’t use special characters.
- If the “Segmentation Required” cell is set to “True” for any segmentation, the description field of that segmentation will be a mandatory field. Therefore, you cannot leave description fields empty for required segmentations.
- Empty cells in the Category column will be shown as “uncategorized” on event overview table on the UI.
Adding New Input Field
Input fields are used to classify events or add description/tag to groups, and for easy identification of them. To add a new input field, you will need to do so by adding a new column. Add a new column for extra definitions or notes, by following the below steps:
- Add a new column in the CSV file and type in its title (business goal), limited to the SDK limits. All input fields are assumed as input text fields by Countly.
- Enter text for each cell to the added input field.
- A maximum of 2 new columns can be added. If you add more, only the first 2 of them are imported to the Countly UI. The order of the columns is considered while selecting the input fields from more than 2 columns.
Updating Segmentation List Options
The Segmentation list option is used for “list” type segmentation, to provide list items. If you update any item from the list, these options will be updated automatically on the Events chart and drill. This update is retroactive and affects historical data.
Segmentation Regex Validation
Segmentation Regex on the Event Schema is used to validate segmentation values. You can set a regular expression to define a certain pattern for segmentation value.
Examples:
- User can set regex for segmentation value that included only data from a provided list like Sign up with email or Signup with Google or Signup with Twitter.
- PII Data Validation, where all segment values should be validated for PII data. If any PII is found, the validation warning message should indicate this.
Bulk Edit Draft |
|||||||||||||||
Event Key** |
Event Display Name |
Event Description |
category |
Input Field (e.g., Business Goal) |
Status |
#of S Event includes |
Event S Name |
S. Description |
S Type |
S Status |
S Is Required |
S List Options |
S Regx |
S Regx condition |
|
Example set |
login |
Log in |
When login form is sent. |
User Account |
Will be triggered on /login page |
live |
3 |
type |
which type of login option is used |
list |
live |
TRUE |
email, Facebook, Twitter |
email|Facebook|Twitter |
match |
errorID |
which Error code is shown for fields |
list |
live |
FALSE |
200 400 404 513 |
||||||||||
errorMessage |
list |
created |
FALSE |
Responded successfully. Request is malformed. Not found. Server error. |
*S = Segmentation. Due to narrow cell size, Segmentation was shown as S but it will be given as Segmentation on the CSV file.
Validations
An event is any type of action that you can send to a Countly instance. All data passed to the Countly server via the SDK or API should be in UTF-8. So, it is not possible to collect data not sent by SDK if:
- event_key doesn’t match exactly (with the event_key set on Event Schema); response warning message and store data as “unplanned”, or
- segmentation type doesn’t match exactly (with the segmentation type on Event Schema); response warning message and store data as “unplanned”, or
- segmentation name doesn’t match exactly (with the segmentation name on Event Schema); response warning message and store data as “unplanned”, or
- event name doesn’t match exactly (with the event name on Event Schema); response success message and count it for the event that matches the event_key of the sent data, or
- PII data is detected; drop it and show the error message for the source and destination, or
When the validation checks an incoming event with a segment key defined as required then the segment key should be in the segmentation object of this event. If the required segmentation key is not present, then a validation error should be triggered, flagging the missing segmentation field and its parent event.
Use Case
User A plans an event on Countly Data Manager and makes it status as live:
event_key = submit_button
Event (display) name = Click Submit Button
Segmentation name= button_ID
Segmentation type = string
But User B implements them to SDK and data is sent via SDK as given below:
event_key = submitButton
Event (display) name = Click Submit Button
Segmentation name= buttonID
Segmentation type = string
Countly checks all sent event and segmentation data before using it on your data, and validates them with the Event Schema. Checklist of this validation process is:
- Event_key
- Segmentation name
- Segmentation type
- Status (for both segmentation and event)
- PII data
For this example:
❌ event_keys of planned event on UI and sent via SDK don’t match
➖ Event display names are same but doesn’t matter for validation, i.e., out of the checklist
❌. Segmentation type of planned event on UI and sent via SDK don’t match
✅ Segmentation types of both are same
✅ Status of the event created on UI is live
So, Countly triggers a warning message on UI and doesn’t inject sent data to user data. But Countly still keeps counting sent data till you block it. If you approve the unplanned data, it is injected to user data and this event is listed on Event Schema; it will be visible on Events, Drill, and other drop-downs using events.
If Segmentation Regex is used to detect PII data or manage segmentation value in a defined pattern, a warning message is triggered for any error. Countly doesn’t save or collect data, and instantly drop it.
List of Validation Errors
Error message |
Explanation |
Unexpected event |
Event status is NOT live Or Unplanned event |
Unexpected segmentation |
Segmentation status is NOT live Or Unplanned event segmentation |
PII data |
PII data was detected and dropped |
Missing data |
Required segmentation is missing |
Mismatch |
Event segmentation does not match data type |
Countly provides 2 options as validation rules:
- Allow unexpected events and automatically use it in the Event Schema: If you select this option as a validation rule, Countly doesn’t show any warning on UI and assumes it as a new event or segmentation. So it is automatically triggered, without any warning, and added to the Event Schema.
- Trigger a warning and hide the data: If you select this option as a validation rule, Countly shows a warning on UI, marks it as unplanned, and keeps it on the Validation page until you approve it or block it from Filtering Rules. If you approve it from the Validation page, then it is added to Event Schema as approved but it still won’t be used with other data until it you move it to live status. During this stage, Countly counts and saves it but doesn’t inject this data to used data on UI (tables, charts etc.)
You need to send these from Settings.
Note: You can set up alerts for warnings by using the button on the Validation tab. When you click this button, you will be directed to the Alerts feature. For this feature, the Alert feature must be enabled. If it is disabled, the Alert button will be disabled.
Expected Behavior for Existing Events and Default Settings for v22.x
For Countly Enterprise
All events and segmentations created before this release (existing events) will be assumed as status=live for once, and you won’t get any notification (validation error) on the product. Any events sent after upgrade time, will be flagged as unexpected. Also, Validation on the Management/Settings view is set as Allow unexpected events and automatically use it in the Event Schema by default. So, you won’t get any notification for existing events and if you send a new event data, you can see new event’s data on their dataset but Countly flags them as unexpected on Event Schema (Data Manager/Events and Segmentation).
For Countly Lite
All events and segmentations created before this release (existing events) will be assumed as status=live and you won’t get any notification (validation error) on the product. Any events sent after upgrade time will be flagged as live. Validation configuration isn’t available in Countly Lite.
Data Type
Available only for Countly Enterprise, this allows you to change the data type of both event segmentations and user properties, including custom properties. In this way, data types are updated without any need for custom script coding to fix a mistake made at implementation.
This feature was part of the 20.11 release. However, with Countly 22.03, it has been added to the Segmentation tab and Manage User Properties detail page.
- Edit Event Segmentation Type: Event segmentation type can be changed from segmentation detail page. Default data type is also shown. You can select a new data type from the drop-down.
- Edit User Property Data Type: On the User Property tab, you can update data type of user properties and custom properties. Default data type is also shown. You can select a new data type from the drop-down.
Example:
A user can change the string data type of “location” property to list type. Then, it is shown as drop-down on query builders and user selects an item from the list.
Data Regeneration
Data regeneration is generally needed after any changes are applied to metadata or aggregated data. For example, if a user has some missing fields in Drill, or if the user has switched data type to a big list and they now want to populate it with data, they can regenerate metadata to populate those inputs. Or if you deleted a lot of granular data, modified granular data, or over reported users or new users, you can regenerate aggregated data to get new fresh stats directly from the current state of granular data.
Two data regeneration options are provided:
- Regenerate Metadata
- Regenerate Aggregated Data
When regenerating aggregated data one of three data types from Sessions, Events, and Views are selected. If Events or Views are selected a further selection must be made regarding which Event or View is to be regenerated as only a single one can be regenerated at a time.
To regenerate data, follow the below steps:
- Click the 3-dot ellipsis button on the top right side of the page
- Click on Regenerate Data
- Select one of the choices for the regeneration process:
- Regenerate Meta Data
- Regenerate Aggregated Data
- If Regenerate Aggregated Datais selected, choose the Data Type to be either Session, Event, or View
- If Event is selected, pick an event from the drop-down list.
- If View is selected, pick a page from the drop-down list.
- Select the time period for which the data regeneration should happen using the date-picker
- Click the Save button at the bottom of the page
Interaction with Other Features
Event, segmentation, and user properties tables are automatically created on Data Manager for existing users after the Countly 22.03 upgrade. For Enterprise Edition users, Event Schema is initialized when the first validation rule is set or during the first export of the Event Schema. All visible events with live status should be available on the Event feature (e.g., drop-down on All Events) and query builders that use Events. If any event is hidden on Data Manager, the event will be hidden on the Events feature.
User Roles and Permissions on Data Manager
The Data Manager feature will be available for both Countly Enterprise and Cuntly Lite users; however, the Countly Lite version will be limited to features of Manage Events as in Countly 20.11.
The following table show which "Manage Events" actions (vertical) will be possible with the given user permissions (horizontal):
Create | Read | Update(Edit/Write) | Delete | |
View | - | ● | - | - |
Plan Event | ● | - | - | - |
Download Schema Template | - | ● | - | - |
Export Schema | - | ● | - | - |
Import Schema | - | - | ● | - |
Export Event Table | - | ● | - | - |
Edit Event | - | - | ● | - |
Delete Event | - | - | - | ● |
Transformation | - | - | ● | - |
Change Category | - | - | ● | - |
Change Status | - | - | ● | - |
Change Visibility | - | - | ● | - |
Omit (for segmentation) | - | - | - | ● |
The following table show which "Validation" actions (vertical) will be possible with the given user permissions (horizontal):
Create | Read | Update(Edit/Write) | Delete | |
View | - | ● | - | - |
Approve Warning | - | - | ● | - |
Delete Warning | - | - | - | ● |
Set Validation Rule | - | - | ● | - |
Update Validation Rule | - | - | ● | - |