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.

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

Downloading a snapshot from LGTM

You can download snapshots to analyze in the licensed version of QL for Eclipse 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 can also download snapshots from any project on LGTM.com for analysis in both the free-to-use and licensed versions of QL for Eclipse.

Important

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 your licensed version of QL for Eclipse. 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 your licensed version of QL for Eclipse, you can still analyze it using the most recent free-to-use version of QL for Eclipse. If you do want to install both the free-to-use and licensed versions of QL for Eclipse, we recommend that you use separate Eclipse installations, so that you still can use both versions to analyze snapshots.

Once you have a snapshot, see Importing a snapshot to find out how to use it in QL for Eclipse.

Exporting a database from Semmle Core (Enterprise only)

Every time you analyze a project using Semmle Core, a snapshot is created. You can convert this Semmle Core snapshot into a QL for Eclipse 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.

Note

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.

Once you have a snapshot, see Importing a snapshot to find out how to use it in QL for Eclipse.

What next?

Once you have obtained and imported a snapshot, you are ready to start running QL queries.

To find out more about snapshots, and how they are created, see What is a snapshot?

Related Topics Link IconRelated Topics