Skip to content

benchmark Sourcegraph.com search performance

Notifications You must be signed in to change notification settings

isabella232/search-blitz

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

  1. 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
  2. Deploy

How to deploy

  1. Merge your changes to main
  2. Build and upload a new docker image:
    ./scripts/build.sh <next-version, e.g. 0.0.2>
    
  3. 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

open http://localhost:3000

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.

About

benchmark Sourcegraph.com search performance

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 89.9%
  • Dockerfile 5.8%
  • Shell 4.3%