Combine MonitorInstrumentation into Monitor#2087
Merged
srnagar merged 12 commits intomicrosoft:mainfrom Mar 19, 2026
Merged
Conversation
srnagar
reviewed
Mar 17, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR consolidates the previously separate Azure Monitor Instrumentation tool area into the existing Azure Monitor tool, updating command registration, tool IDs/CLI paths, and relocating instrumentation resources and unit tests accordingly.
Changes:
- Removed the standalone
Azure.Mcp.Tools.MonitorInstrumentationproject/area setup and registered its commands undermonitor instrumentation. - Updated tool IDs / CLI docs / e2e prompts to use
monitor_instrumentation_*andazmcp monitor instrumentation .... - Moved instrumentation models/pipeline/generators/detectors/resources into
Azure.Mcp.Tools.Monitorand updated unit tests and resource paths.
Reviewed changes
Copilot reviewed 61 out of 84 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tools/Azure.Mcp.Tools.MonitorInstrumentation/tests/Azure.Mcp.Tools.MonitorInstrumentation.UnitTests/Azure.Mcp.Tools.MonitorInstrumentation.UnitTests.csproj | Removed obsolete unit test project for the standalone area. |
| tools/Azure.Mcp.Tools.MonitorInstrumentation/src/MonitorInstrumentationSetup.cs | Removed standalone area setup/command registration. |
| tools/Azure.Mcp.Tools.MonitorInstrumentation/src/GlobalUsings.cs | Removed standalone global usings. |
| tools/Azure.Mcp.Tools.MonitorInstrumentation/src/Azure.Mcp.Tools.MonitorInstrumentation.csproj | Removed standalone tool project. |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Tools/SendBrownfieldAnalysisToolTests.cs | Updated test namespaces/usings to the merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Tools/OrchestratorToolTests.cs | Updated test namespaces/usings to the merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Tools/ListLearningResourcesToolTests.cs | Updated namespaces and adjusted test resource output path (Instrumentation/Resources). |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Tools/GetLearningResourceToolTests.cs | Updated namespaces and adjusted test resource output path (Instrumentation/Resources). |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Models/OnboardingSpecValidatorTests.cs | Updated model namespace references to the merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/tests/Azure.Mcp.Tools.Monitor.UnitTests/Instrumentation/Models/OnboardingSpecBuilderTests.cs | Updated model namespace references to the merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Tools/Instrumentation/SendBrownfieldAnalysisTool.cs | Re-namespaced tool into Azure.Mcp.Tools.Monitor.Tools. |
| tools/Azure.Mcp.Tools.Monitor/src/Tools/Instrumentation/OrchestratorTool.cs | Re-namespaced tool into Azure.Mcp.Tools.Monitor.Tools. |
| tools/Azure.Mcp.Tools.Monitor/src/Tools/Instrumentation/ListLearningResourcesTool.cs | Updated resource base path to Instrumentation/Resources and namespace. |
| tools/Azure.Mcp.Tools.Monitor/src/Tools/Instrumentation/GetLearningResourceTool.cs | Updated resource root to Instrumentation/Resources and namespace. |
| tools/Azure.Mcp.Tools.Monitor/src/Options/Instrumentation/MonitorInstrumentationOptionDefinitions.cs | Moved option definitions into Azure.Mcp.Tools.Monitor.Options. |
| tools/Azure.Mcp.Tools.Monitor/src/Options/Instrumentation/CommandOptions.cs | Moved command option POCOs into Azure.Mcp.Tools.Monitor.Options. |
| tools/Azure.Mcp.Tools.Monitor/src/MonitorSetup.cs | Registers instrumentation services/commands and adds monitor instrumentation subgroup. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ServiceOptionsTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/SamplingTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ProcessorTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/OnboardingSpecValidator.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/OnboardingSpecBuilder.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/OnboardingSpec.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/OnboardingJsonContext.cs | Updated source-gen context namespace and referenced types. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/OnboardingAction.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/InitializerTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ImplementationTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/GeneratorConfigLoader.cs | Updated embedded resource prefix for merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/Enums.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/Decision.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/Constants.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ClientUsageTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ClientUsageEntryTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/BrownfieldFindings.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/AnalysisTemplate.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/Analysis.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/ActionDetailsExtensions.cs | Re-namespaced model into Azure.Mcp.Tools.Monitor.Models. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/migration/dotnet/appinsights-2x-to-3x-no-code-change.md | Added migrated learning resource content under Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/migration/dotnet/appinsights-2x-to-3x-code-migration.md | Added migrated learning resource content under Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/generator-configs/templates/aspnetcore/instrumentation-code.cs | Added code template used by generator config. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/generator-configs/aspnetcore-greenfield.json | Added generator config for ASP.NET Core greenfield. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/generator-configs/aspnet-classic-greenfield.json | Added generator config for ASP.NET classic greenfield. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/examples/dotnet/aspnetcore-setup.md | Added example learning resource under Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/concepts/dotnet/opentelemetry-pipeline.md | Added concept learning resource under Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/concepts/dotnet/azure-monitor-distro.md | Added concept learning resource under Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/WithTracing.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/WithMetrics.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/WithLogging.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/UseAzureMonitorExporter.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/UseAzureMonitor.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/SdkCreateTracerProviderBuilder.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/Sampling.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/OpenTelemetrySdkCreate.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/LogProcessors.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/ConfigureResource.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/ConfigureOpenTelemetryProvider.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/AzureMonitorExporter.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/AddOpenTelemetry.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/AddApplicationInsightsTelemetry.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Resources/api-reference/dotnet/ActivityProcessors.md | Added API reference learning resource. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Pipeline/WorkspaceAnalyzer.cs | Updated namespaces for pipeline entrypoint. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Generators/IGenerator.cs | Updated namespaces for generator interface. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Generators/AspNetCoreGreenfieldGenerator.cs | Updated namespaces for generator implementation. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Generators/AspNetCoreBrownfieldGenerator.cs | Updated namespaces for generator implementation. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Detectors/PythonInstrumentationRegistry.cs | Updated namespaces for detector support code. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Detectors/IDetectors.cs | Updated namespaces for detector interfaces. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Detectors/DotNetLanguageDetector.cs | Updated namespaces for detector implementation. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Detectors/DotNetInstrumentationDetector.cs | Updated namespaces for detector implementation. |
| tools/Azure.Mcp.Tools.Monitor/src/Instrumentation/Detectors/DotNetAppTypeDetector.cs | Updated namespaces for detector implementation. |
| tools/Azure.Mcp.Tools.Monitor/src/GlobalUsings.cs | Added System.CommandLine.Parsing global using for moved commands. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/SendBrownfieldAnalysisCommand.cs | Updated command namespace/usings to merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/OrchestratorStartCommand.cs | Updated command namespace/usings to merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/OrchestratorNextCommand.cs | Updated command namespace/usings to merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/MonitorInstrumentationJsonContext.cs | Updated JSON context namespace for commands. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/ListLearningResourcesCommand.cs | Updated command namespace/usings to merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Commands/Instrumentation/GetLearningResourceCommand.cs | Updated command namespace/usings to merged Monitor tool. |
| tools/Azure.Mcp.Tools.Monitor/src/Azure.Mcp.Tools.Monitor.csproj | Embedded/copies instrumentation resources and templates in merged project. |
| servers/Azure.Mcp.Server/src/Resources/consolidated-tools.json | Updated tool IDs to monitor_instrumentation_*. |
| servers/Azure.Mcp.Server/src/Program.cs | Removed registration of the standalone MonitorInstrumentation area. |
| servers/Azure.Mcp.Server/docs/e2eTestPrompts.md | Updated tool names/prompts to new monitor_instrumentation_* IDs. |
| servers/Azure.Mcp.Server/docs/azmcp-commands.md | Updated CLI examples to azmcp monitor instrumentation .... |
| servers/Azure.Mcp.Server/README.md | Updated Monitor instrumentation section placement/description. |
| servers/Azure.Mcp.Server/CHANGELOG.md | Documented breaking change and tool/CLI rename. |
| Microsoft.Mcp.slnx | Removed MonitorInstrumentation projects from the solution. |
Comments suppressed due to low confidence (1)
tools/Azure.Mcp.Tools.Monitor/src/Models/Instrumentation/GeneratorConfigLoader.cs:82
LoadConfigbuilds the manifest resource name usinggeneratorTypeverbatim, but the generator types passed in include hyphens (e.g.,aspnetcore-greenfield). MSBuild’s default manifest resource naming sanitizes file names/paths (commonly converting-to_), so this lookup is likely to fail at runtime withFileNotFoundException. Consider normalizinggeneratorType(e.g., replace-with_) when constructingresourceName, so it matches the embedded resource logical name.
You can also share your feedback on Copilot code review. Take the survey.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
srnagar
reviewed
Mar 18, 2026
srnagar
approved these changes
Mar 18, 2026
srnagar
reviewed
Mar 18, 2026
chidozieononiwu
approved these changes
Mar 19, 2026
srnagar
approved these changes
Mar 19, 2026
colbytimm
pushed a commit
to colbytimm/microsoft-mcp
that referenced
this pull request
Apr 20, 2026
* Move files into Azure.Mcp.Tools.Monitor folder * Only namespace renames * Merge project commands * Update changelog * Address PR feedback * `dotnet format Microsoft.Mcp.slnx` to fix error in "pullrequest (Build Analyze)" check * ran ToolDescriptionEvaluator * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Use CONTRIBUTING.md#adding-a-new-command for updating changelog * update changelog * add more details in changelog --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
[Provide a clear, concise description of the changes]Combine the
tools/Azure.Mcp.Tools.MonitorInstrumentationfolder introduced by #1960 intotools/Azure.Mcp.Tools.Monitor.[Any additional context, screenshots, or information that helps reviewers]GitHub issue number?
[Link to the GitHub issue this PR addresses]Pre-merge Checklist
servers/Azure.Mcp.Server/CHANGELOG.mdand/orservers/Fabric.Mcp.Server/CHANGELOG.mdfor product changes (features, bug fixes, UI/UX, updated dependencies)servers/Azure.Mcp.Server/README.mdand/orservers/Fabric.Mcp.Server/README.mddocumentationeng/scripts/Process-PackageReadMe.ps1. See Package README/servers/Azure.Mcp.Server/docs/azmcp-commands.mdand/or/docs/fabric-commands.md.\eng\scripts\Update-AzCommandsMetadata.ps1to update tool metadata in azmcp-commands.md (required for CI)ToolDescriptionEvaluatorand obtained a score of0.4or more and a top 3 ranking for all related test promptsconsolidated-tools.jsonbreaking-changelabel/servers/Azure.Mcp.Server/docs/e2eTestPrompts.mdcrypto mining, spam, data exfiltration, etc.)/azp run mcp - pullrequest - liveto run Live Test Pipeline