search-blitz
The purpose of search-blitz is to provide a baseline for our search performance. We call Sourcegraph.com for typical queries in regular intervals collecting performance metrics relevant for search. The set of queries is fixed. The queries are segmented by type, and performance metrics are available for each segment on dedicated instances of Prometheus and Grafana. The raw data, including links to Jaeger traces, are available as logs (stream and file).
How to track your query
- Create a new file in
./data
- give it a name that is descriptive for the type of queries you want to track. The file name without extension is used as label for prometheus metrics.
- add 1 query per line
- Deploy
How to deploy
- Merge your changes to main
- Build and upload a new docker image:
./scripts/build.sh <next-version, e.g. 0.0.2>
- Update the image tag in deploy-sourcegraph-dot-com
./scripts/update-deploy-sourcegraph-dot-com.sh <next-version, e.g. 0.0.2>
How to access the Grafana dashboard
kubectl port-forward search-blitz-0 3000:3000 -n monitoring
How to download logs
Logs are stored in search-blitz-data/logs
on the persistent volume which is attached to all containers.
kubectl cp monitoring/search-blitz-0:search-blitz-data/logs -c search-blitz .
Logs are rotated every 10 mb.