Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add instrumentation support to the typescript code #12991

Open
wants to merge 16 commits into
base: main
Choose a base branch
from

Conversation

fearthecowboy
Copy link
Member

This adds the instrumentation support to enable performance testing and monitoring.

It:

  • cleaned up some calls to logging so that we're not over-importing in typescript
  • patches the logging so that log messages are sent to the collector.
  • adds calls to monkey-patch vscode, the client and the providers so that we get monitoring events for as much as possible.
  • if the PERFECTO_LAUNCH_SETTINGS environment variable is not set, everything here is a no-op
  • the actual instrumentation code is loaded by the perfecto tool

@fearthecowboy fearthecowboy requested a review from a team as a code owner November 22, 2024 21:30
Extension/src/Debugger/configurationProvider.ts Outdated Show resolved Hide resolved
Extension/src/LanguageServer/lmTool.ts Outdated Show resolved Hide resolved
Extension/src/LanguageServer/references.ts Outdated Show resolved Hide resolved
Extension/src/logger.ts Outdated Show resolved Hide resolved
Extension/src/logger.ts Outdated Show resolved Hide resolved
Extension/src/logger.ts Outdated Show resolved Hide resolved
Extension/src/platform.ts Outdated Show resolved Hide resolved
Extension/src/instrumentation.ts Outdated Show resolved Hide resolved
}

export function getLoggingLevel() {
return getNumericLoggingLevel(vscode.workspace.getConfiguration("C_Cpp", null).get<string>("loggingLevel"));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since we can't pull CppSettings into this module, maybe we need to split out the validation code because we shouldn't be reading raw settings in the extension anymore. Apparently this file was skipped due to it not using CppSettings.

This isn't necessarily your problem. I'm just thinking out loud.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Pull Request
Development

Successfully merging this pull request may close these issues.

2 participants