Skip to content

Latest commit

 

History

History
55 lines (48 loc) · 2.61 KB

tracking-events.md

File metadata and controls

55 lines (48 loc) · 2.61 KB

Tracking Events

To add a new event, the event name has to be added as an enum in the AnalyticsTracker. Tracking the event looks like this:

class OrderDetailViewModel {
    fun onRefreshRequested() {
        AnalyticsTracker.track(Stat.ORDER_DETAIL_PULLED_TO_REFRESH)
    }
}

Having the values in the AnalyticsTracker enum helps us with comparing the events being tracked in WooCommerce iOS.

Custom Properties

If the event has custom properties, tracking the event would now look like this:

class OrderDetailViewModel {
    fun onRefreshRequested() {
        AnalyticsTracker.track(
            PRODUCT_IMAGE_UPLOAD_FAILED,
                 mapOf(
                      AnalyticsTracker.KEY_ERROR_CONTEXT to this::class.java.simpleName,
                      AnalyticsTracker.KEY_ERROR_TYPE to event.error?.type?.toString(),
                      AnalyticsTracker.KEY_ERROR_DESC to event.error?.message
                 )
            )
    }
}

Naming Conventions

Name Token Associated Property Event Type Description
_action type Action When there are multiple actions
_add * Action User request to add something new such as an order note
_change "from: to:" Action When a value changes
_confirmation_dialog_result result="positive negative" View
_date range: Action For a date range switcher in a graph or list
_failed "errorContext:$initiated-classname
        errorType:$errorType
        errorDescription:$errorDescription" | Data | Errors for user initiated requests |

| _filter | * | Action | A list has been filtered or searched | | _loaded | * | Data | The data to populate a view has loaded | | _open | * | Action | An item from a list was opened by the user | | _pulled_to_refresh | type | View | User gesture to do a manual refresh of the view | | _reselected | * | View | The user reselected a bottom bar, tab, or dropdown/list option, option. Typically preceded by tab or bar | | _selected | type | View | The user selected a bottom bar, tab, or dropdown/list option, option, Typically preceded by tab or bar | | _show | name: | Action | Tracks views shown to the user | | _success | * | Data | A successful user initiated request | | _tapped | * | View | The user clicked on a clickable view, typically preceeded by button, link, _menu | | _toggled | state="on|off" | View | User toggled an option | | _undo | | Action | The user chose to undo a previous action or change |