search: track type and index of selected search results
Created by: stefanhengl
The goal of this PR is to track the quality of our ranking over time.
We send the type and index of the selected search result to Prometheus. The data is not persisted in Postgres and is not part of the ping data. This is a very basic measure to get us started. In a follow-up PR we will add a Grafana dashboard to visualize the average position of a selected search result as well as the distribution of search result types.
Note: We only track clicks on top-level items (file match, diff/commit, repo) for now and not individual line matches.
The commits are split in frontend and backend changes and can be reviewed separately.