Skip to content

autometrics-dev/vscode-autometrics

Repository files navigation

Autometrics

This extension enhances integration between your codebase and Autometrics enhanced functions. If you're new to autometrics, please see our documentation

Currently supported languages:

More languages will be supported in the future.

Features

After decorating your code with autometrics, this extension will enrich the information displayed for a given function on hover.

Enhanced autometrics information

Extension Settings

This extension contributes the following settings:

  • autometrics.prometheusUrl: configure your Prometheus URL. This URL is used to create links to your Prometheus including useful autometrics based queries

  • autometrics.experimentalRustSupport: this option allows you to use the embedded graphs with rust. However currently all functions are assumed to have been decorated with the autometrics macro. You probably don't want to enable this feature.

  • autometrics.graphPreferences: this option allows you to configure what to use to render graphs. The possibilities are:

  • embedded graph (which are demonstrated in the animation above)
  • prometheus (which links out to the prometheus UI)
  • autometrics explorer (which links to the web interface that is bundled with the autometrics CLI: see also local development)
  • autometrics.webServerURL this option is only relevant if you've configured autometrics.graphPreferences to use autometrics explorer. The autometrics CLI serves the web interface on port 6789, however if you use a different port or don't run it on localhost you can update this setting to point to whatever you want.

Developing this extension

This extension is built using:

In order to test the extension locally, you may want to install the following extensions:

If you want to install a release from GitHub manually, open the command palette via cmd + shift + p and pick the install visx option and point the filepicker to your local extension.

How to release a new version

Create a new release using Github which matches the version number it should be released under.

After tagging and releasing, merge main into the release branch. (The release branch should always reflect the latest released version on VSCode marketplate.)