This guide walks you through installing the Dynatrace Extensions add-on for Visual Studio Code, connecting to your Dynatrace environment, and publishing your first extension using the built-in VS Code workflows.
You can find Dynatrace Extensions in the Visual Studio Code marketplace. Install it from there or via the VS Code extension search.
Our VS Code add-on automates many operations around extensions development by using the Dynatrace API.
To get the most out of it, create an API Access Token with the following scopes:
WriteConfigReadConfigcredentialVault.readcredentialVault.writeextensions.readextensions.writeextensionEnvironment.writeextensionEnvironment.readextensionConfigurations.readextensionConfigurations.writemetrics.readentities.readsettings.readsettings.writeThe Dynatrace UI provides a dedicated template called Extension Development, which applies these exact token scopes.
Required only if your Dynatrace environment is accessible through a dedicated URL that uses a custom-signed or a self-signed SSL certificate.
To configure the connectivity settings for your Dynatrace environment:
Open the Extensions view in Visual Studio Code and find the Dynatrace Extensions section.
For details, see Use extensions in Visual Studio Code.
Search for DynatraceExtensions tenant in the search bar to find the Tenant Connectivity Settings, then select Edit in settings.json.
Register your dedicated environment URL in the file you've opened and either provide the path to your CA file or turn off SSL verification.
For example:
{"dynatraceExtensions.tenantConnectivitySettings": [{"tenantUrl": "https://my.custom.dynatrace/e/abcd-123","certificatePath": "/tmp/certificates/ca.crt"}]}
For more details, see Tenant connectivity settings.
To connect your Dynatrace environment:
Go to Dynatrace Extensions in the Extensions view in Visual Studio Code, then select the Add environment button.
Provide the base URL to access Dynatrace. It should follow one of these patterns:
https://<Id>.live.dynatrace.com for SaaS environments.https://<Domain>/e/<Id> for Managed environments. Replace <Id> with your environment ID and <Domain> with your managed environment domain.https://<Id>.apps.dynatrace.com for the latest Dynatrace Platform.Provide the API Access Token you prepared earlier and optionally provide a label.
Set this as your current environment.
The add-on displays your environment in the list and uses the current environment for all API operations. Visit Environments to learn more about using the Environment view.
It's time to create your first project. If you have to open a different workspace folder, select Open folder. Otherwise, select the Initialize workspace button to start.
To learn how to use the Workspaces view, visit Extension 2.0 workspaces.
The workflow starts with your target schema version. Choose any from the list. It ensures that we can validate your extension manifest while you're writing it, allowing you to spot any issues early on.
Developer certificates are used to sign and package your extension. Choose Generate new ones to generate a new set of certificates kept in VS Code's storage.
Check the extension's settings to get the exact path to where your credentials are stored.
The workflow offers some additional convenience steps:
Whether to use these certificates as defaults for all workspaces:
Whether to upload the new CA certificate to the Dynatrace Credentials Vault.
Whether to upload the new CA certificate to locally installed OneAgents and ActiveGates.
To learn how to use your existing developer certificates, visit Credentials.
The final step of the workflow is to choose the type of project you want to start. It allows the extension to generate relevant files.
Since this is your first extension, choose Extension 2.0 ⭐ at this step.
This option is the default choice for new projects and creates the following starting setup:
extension - the folder where all extension assets are placed.extension/extension.yaml - this is your extension's manifest file.To learn more about the other types of projects, visit Project templates.
In addition, all templates also create the following folders and files:
.vscode - a folder for storing workspace-specific VS Code settings.dist - a folder for storing all extension packages.config - a folder for storing your monitoring configuration files..gitignore - a file containing useful rules for ignoring unnecessary items from your git repository.Start by opening up the extension manifest and making some changes. Give your extension a name, and add yourself as the author.
For example, update the extension/extension.yaml file with the following information:
name: custom:my.first.extensionversion: "0.0.1"minDynatraceVersion: "1.265.0"author:name: <Your-Name>
Replace <Your-Name> with the author's name.
Finally, perform the following steps to upload your extension to Dynatrace.
dist folder.Congratulations. You created, built, uploaded, and activated your first Extension 2.0. You can view this in the Dynatrace UI by navigating to Extensions.
ExtensionsInfrastructure Observability