77978889eb
Closes https://github.com/dart-lang/sdk/pull/51143 GitOrigin-RevId: 9e21c99a222d588e4fc95980725a2f8c9784965c Change-Id: If0870e8936c7649935dce7e23cd783d62aa5610c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/279916 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: Alexander Thomas <athom@google.com>
102 lines
2.8 KiB
Markdown
102 lines
2.8 KiB
Markdown
# Instrumentation
|
|
|
|
This document explains how to gather instrumentation logs and other diagnostic
|
|
information from a running Dart Analysis Server (DAS) process.
|
|
|
|
## Collect an instrumentation log
|
|
|
|
To collect an instrumentation log, DAS needs to be launched with the
|
|
`--instrumentation-log-file` option, specifying a path for the log file. Since
|
|
the IDE launches DAS, the steps are different for each IDE.
|
|
|
|
### IntelliJ IDEA and Android Studio
|
|
|
|
1. In IntelliJ IDEA, click **Help** > **Find Action**, type "Registry" and
|
|
open the "Registry..." item.
|
|
2. Scroll down to the `dart.server.additional.arguments` property, and set it's
|
|
value to `--instrumentation-log-file=/some/file.txt`. If there are other
|
|
arguments listed, which you wish to keep, add this new argument to the
|
|
existing value, separated by whitespace.
|
|
3. In the **Dart Analysis** panel, click the
|
|
<img src="restart-das-icon-light.png#gh-light-mode-only"
|
|
style="width:16px" /><img src="restart-das-icon.png#gh-dark-mode-only"
|
|
style="width:16px" /> **Restart Dart Analysis Server** button.
|
|
|
|
After doing those steps, DAS will write an instrumentation log to the specified
|
|
file (`/some/file.txt` above).
|
|
|
|
### VS Code
|
|
|
|
See the steps outlined at the [Dart Code
|
|
documentation](https://dartcode.org/docs/logging/#analyzer-instrumentation).
|
|
|
|
## Open the analyzer diagnostics pages
|
|
|
|
DAS serves a variety of "diagnostics pages" as a website on `localhost`. Since
|
|
the IDE launches DAS, the method of opening this website is different for each
|
|
IDE.
|
|
|
|
### IntelliJ IDEA and Android Studio
|
|
|
|
1. In the **Dart Analysis** panel, click the
|
|
<img src="gear-icon-light.png#gh-light-mode-only" style="width:16px" /><img
|
|
src="gear-icon.png#gh-dark-mode-only" style="width:16px" /> **Analyzer
|
|
Settings** button on the left with the gear icon. Note, this is different
|
|
from the "Show Options Menu" button at the top, which also has a gear icon.
|
|
2. Click the **View analyzer diagnostics** link. The analyzer diagnostics
|
|
website should open in an external browser.
|
|
|
|
### VS Code
|
|
|
|
1. Open the command palette (Ctrl+Shift+P) and type "Dart: Open Analyzer
|
|
Diagnostics". The analyzer diagnostics website should open in an external
|
|
browser.
|
|
|
|
## Using the analyzer diagnostics pages
|
|
|
|
### Status
|
|
|
|
The first of the analyzer diagnostics pages is the **Status** page. This page
|
|
shows general information about the DAS process, including version information.
|
|
|
|
### Code Completion
|
|
|
|
TODO
|
|
|
|
### Communications
|
|
|
|
TODO
|
|
|
|
### Contexts
|
|
|
|
TODO
|
|
|
|
### Environment Variables
|
|
|
|
This page shows all system environment variables as seen from DAS.
|
|
|
|
### Exceptions
|
|
|
|
TODO
|
|
|
|
### LSP Capabilities
|
|
|
|
This page is available when DAS is launched as an LSP server, and shows the
|
|
current Client and Server LSP Capabilities.
|
|
|
|
### Memory and CPU Usage
|
|
|
|
This page shows current memory and CPU usage of DAS.
|
|
|
|
### Plugins
|
|
|
|
TODO
|
|
|
|
### Subscriptions
|
|
|
|
TODO
|
|
|
|
### Timing
|
|
|
|
TODO
|