The log and diagnostic information available to you depends on the method you use for code scanning in your repository. You can check the type of code scanning you're using in the Security tab of your repository, by using the Tool drop-down menu in the alert list. To access this page, see Bewerten von Warnungen der Codeüberprüfung für das Repository.
Logs on GitHub
You can see analysis and diagnostic information for code scanning run using CodeQL analysis on GitHub.
- Analysis information is shown for the most recent analysis in a header at the top of the list of alerts. See Bewerten von Warnungen der Codeüberprüfung für das Repository.
- Diagnostic information is displayed in the GitHub Actions workflow logs and consists of summary metrics and extractor diagnostics. To access these logs, see Viewing code scanning logs from GitHub Actions.
Summary metrics
Zusammenfassungsmetriken enthalten Folgendes:
- Codezeilen in der Codebase (als Baseline) vor Erstellung und Extrahierung der CodeQL-Datenbank
- Codezeilen in der CodeQL-Datenbank, die aus dem Code extrahiert wurden, einschließlich externer Bibliotheken und automatisch generierter Dateien
- Codezeilen in der CodeQL-Datenbank ohne automatisch generierte Dateien und externe Bibliotheken
Source code extraction diagnostics
Die Extraktordiagnose deckt nur Dateien ab, die während der Analyse ermittelt wurden. Metriken:
- Anzahl erfolgreich analysierter Dateien
- Anzahl von Dateien, die während der Datenbankerstellung Extraktorfehler generiert haben
- Anzahl von Dateien, die während der Datenbankerstellung Extraktorwarnungen generiert haben
You can see more detailed information about CodeQL extractor errors and warnings that occurred during database creation by enabling debug logging. See Protokolle sind nicht detailliert genug.
Diagnostic information for private package registries
Code scanning default setup workflows include a Setup proxy for registries step. When you are looking at a workflow run for default setup, you can expand this step to view the corresponding log. This contains information about which private package registry configurations were available to the analysis. Additionally, the log contains some diagnostic information which may help with troubleshooting if the private package registries are not successfully used by code scanning default setup. Look for the following messages:
-
Using registries_credentials input.At least one private registry is configured for the organization. This includes configurations for private registry types which are not supported by code scanning default setup. For more details about supported registry types, see Gewähren des Zugriffs auf private Registrierungen für Sicherheitsfeatures. -
Credentials loaded for the following registries:- If no list of configurations follows, then no private registry configurations supported by code scanning default setup were found.
- Otherwise, one line for each supported configuration that was successfully loaded is shown. For example, a line containing
Type: nuget_feed; Host: undefined; Url: https://nuget.pkg.github.com/; Username: undefined; Password: true; Token: falseindicates that a private NuGet Feed configuration was loaded. - The information about the configuration in the log may not match exactly what is configured for the organization in the UI. For example, the log may indicate that a
Passwordis set, even though aTokenis configured in the UI.
-
Proxy started on 127.0.0.1:49152The authentication proxy that is used by code scanning default setup to authenticate to the configured private package registries was started successfully. -
Following this, there may be messages about the outcomes of connection tests which try to reach the configured private package registries through the authentication proxy. This is a best-effort process. If these checks are not successful for some registries, it does not necessarily mean that the relevant configurations are not working. However, if you find that code scanning default setup is unable to successfully access dependencies in the private registries during the analysis, then this may provide some information to help troubleshoot the issue.
If the output from the Setup proxy for registries step is as expected, but code scanning default setup is unable to successfully access dependencies in the private registries, you can obtain additional troubleshooting information. See Protokolle sind nicht detailliert genug.
For more information about giving code scanning default setup access to private registries, see Gewähren des Zugriffs auf private Registrierungen für Sicherheitsfeatures.
Logs for the CodeQL CLI
If you're using the CodeQL CLI outside GitHub, you'll see diagnostic information in the output generated during database analysis. This information is also included in the SARIF results file.
Logs in VS Code
Progress and error messages are displayed as notifications in the bottom right corner of the Visual Studio Code workspace. These link to more detailed logs and error messages in the "Output" window.
You can access separate logs for the CodeQL extension, language server, query Server, or tests. The Language Server log contains more advanced debug logs for CodeQL language maintainers. You should only need these to provide details in a bug report.
To access these logs, see Accessing logs for CodeQL in Visual Studio Code.