Avo provides a number of tools that help you verify that the events you’ve implemented are correct according to how you’ve defined them in your Avo Tracking Plan.
Avo’s validation functionalities are built on top of two product offerings, Avo Inspector and Avo Functions.
🔒 While Avo offers powerful tools for data quality monitoring and observability, Avo never receives or processes any PII data about the customers of Avo customers. Avo never receives or processes your actual analytics events, only the schemas.
For every source that has the Inspector installed, you can validate if the implementation is according to the tracking plan using the Inspector dashboard and/or the Inspector implementation in your tracking plan.
If you don’t have the Inspector installed yet, you can learn more about how to get started with the Inspector here:
The Inspector dashboard compares your tracking calls to the Tracking Plan on your current branch. If the Inspector finds any discrepancies between the tracking calls and the Tracking Plan, an issue is shown on the dashboard.
Here’s how you can validate tracking implementation for a particular branch using the Inspector dashboard:
Example: Inspector dashboard
Example: Discrepancies in the event tracking
For every source the Inspector is installed on, you’ll find an implementation status in the Avo Tracking Plan. When looking at from which sources an event is sent from in your Tracking Plan you will notice green, yellow or red status indicator lights next to each source name. This is the implementation status.
You can hover over the source pill in the events table, or click into the event, to learn more about the implementation status.
Learn more about how to read the Inspector implementation status:
For all tracking implemented with Avo Functions, you can validate if the implementation is according to the tracking plan using four methods, each with its own purpose.
If you’re not using Avo Functions already, you can learn more about how to get started here:
All tracking code implemented with Avo Functions is type-safe and has built in runtime validation. This gives the developer instant feedback on whether the tracking implementation is according to the tracking plan or not. Any type issues are surfaced by the code compiler, and runtime validations are surfaced via console logs and the Avo debugger.
Learn more about how validations in Avo Functions work here:
The Avo In-app Debugger is an addition on top of Avo Functions that gives you better visibility into which events are being sent, which properties are attached, and whether any issues were detected or not.
Example: Web debugger example
The Avo debugger is available on Web, iOS, Android and React Native. Learn more about the Avo debugger here:
The Avo CLI has a command, ´avo status´, that will report on where the Avo Functions are being called from, and which events have not been implemented yet.
We recommend adding the ´avo status´ check to your CI pipeline, and configure it to throw an error if an event that is supposed to be sent with Avo Functions, is not found in the codebase.
TerminalCopy> avo statusinfo Currently on branch 'main'└─ java android (musicplayerexample/src/main/java/sh/avo/Avo.java)├─ appOpened│ └─ used in musicplayerexample/src/main/java/app/avo/musicplayerexample/MusicPlayerExampleApplication.kt: 1 time├─ login│ └─ ✖ no usage found├─ logout│ └─ ✖ no usage found├─ pause│ └─ used in musicplayerexample/src/main/java/app/avo/musicplayerexample/ExampleMusicPlayerActivity.kt: 1 time├─ play│ └─ used in musicplayerexample/src/main/java/app/avo/musicplayerexample/ExampleMusicPlayerActivity.kt: 3 times├─ playNextTrack│ └─ used in musicplayerexample/src/main/java/app/avo/musicplayerexample/ExampleMusicPlayerActivity.kt: 1 time└─ playPreviousTrack└─ used in musicplayerexample/src/main/java/app/avo/musicplayerexample/ExampleMusicPlayerActivity.kt: 1 timeinfo 5 of 7 events seen in codeerror 2 missing events└─ java android (musicplayerexample/src/main/java/sh/avo/Avo.java)├─ login: no usage found└─ logout: no usage found
Example: The ´avo status´ command in Avo CLI
You can learn more about using the Avo CLI in CI/CD here:
For every source the Avo Functions are installed on, you’ll find an implementation status in the Avo Tracking Plan. When looking at from which sources an event is sent in your Tracking Plan you will notice green, yellow or red status indicator lights next to each source name. This is the implementation status.
You can hover over the source pill in the events table, or click into the event, to learn more about the implementation status.
Example: Implementation status in the event table of the tracking plan
You can also find a branch implementation status for Avo Functions in the top right corner of the branch review screen.
Example: Implementation status on the branch review screen
Learn more about how to read the Avo Functions implementation status: