Obtaining a snapshot

Before you can write and run queries to analyze a project, you need a snapshot of that project. Each snapshot contains a database for a single language. If a project uses multiple languages, then you can have a snapshot for each language.


A snapshot is usually saved and used as a zip archive. However, to use the snapshot in QL for Visual Studio you need to unzip it first. Once you've unzipped a snapshot, you can select it when running a query.

Here are a few ways to obtain a snapshot to use in QL for VS:

Downloading a snapshot from LGTM

You can download snapshots to analyze in QL for Visual Studio from any project that is visible to you in LGTM Enterprise using the Integrations tab on the project page. The QL snapshot for local analysis section contains the available snapshots for each language that has been detected.


You may find that some snapshots available to download from LGTM.com have been built by a more recent analysis process than the one available in QL for Visual Studio. If this is the case, you may not be able to run queries against these snapshots.

However, even if a new snapshot is not compatible with QL for Visual Studio, you can still analyze it in the query console on LGTM.com.

Exporting a database from Semmle Core

Every time you analyze a project using Semmle Core, a snapshot is created. You can convert this Semmle Core snapshot into a QL for VS snapshot using the export command:

To export a snapshot from Semmle Core
  1. Open a command prompt on a server where Semmle Core is running.
  2. Check that the environment is set up correctly.
  3. Run odasa export --project projects/<project> --latest where projects/<project> is the relative or absolute path for the project that you want to export.

This creates a snapshot in the directory where you ran the export command.


The --latest flag means that you export the most recently analyzed snapshot for the project that you specified. If you want to export an older snapshot, see the other available flags in the export command reference.

If you create a project using the bootstrap command, you can also choose to export a snapshot automatically at the end of the process.

Related Topics Link IconRelated Topics