To better understand the impact of Search on our users, we want to have a few high level metrics that give us visibility on how Search is used.
See https://docs.google.com/document/d/1p8CTKnYnuGKxeNcE0rNXAOAXiu5xdagaxVFVwdJXs9s/edit#heading=h.o9e996ds23up for more details.
This is a tracking task, specific metrics will be tracked in sub-tasks.
Scope
- General purpose metrics
- Audiences
- People external to the Search Platform team who want some understanding of how well Search is performing and what impact it has. This includes upper management, product management, and to a lesser extent our communities
- Search Engineers who want to have a high level understanding of Search
Dimensions
For all metrics proposed below, we should be able to slice the data by multiple dimensions:
- By time (obviously), in particular, we want monthly numbers (X millions of searches per month is more relatable to understand the overall impact) as well as more granular numbers (days or minutes)
- By wiki
- By editor status (for logged in users, we should be able to find the number of edits, even if we can’t associate a specific search to an edit or read workflow)
- By bot / non bot
- By media (desktop web, mobile web, android app, IOS app, portal, direct API calls) and type of search (full text search, autocomplete, morelike): this might get a bit tricky, since there isn’t complete alignment. For example, mobile apps use autocomplete search to present a search result page. We might need to refine what we exactly mean here, or what dimensions make the most sense.
Proposed implementation
To limit dependencies to other teams, we propose a first implementation based on Jupyter notebooks, which allows fast iteration cycles with a technical stack that is well understood by the Search Platform team.
Should we find those metrics useful to expose more widely, we might require support from Product Analytics to put in place Superset dashboards, or other more user friendly ways of accessing them.