diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/McpCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/McpCommand.cs index ca448e7da9..95500c17e0 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/McpCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/McpCommand.cs @@ -15,6 +15,8 @@ using Volo.Abp.Cli.Commands.Models; using Volo.Abp.Cli.Commands.Services; using Volo.Abp.Cli.Licensing; using Volo.Abp.DependencyInjection; +using Volo.Abp.Internal.Telemetry; +using Volo.Abp.Internal.Telemetry.Constants; namespace Volo.Abp.Cli.Commands; @@ -28,6 +30,7 @@ public class McpCommand : IConsoleCommand, ITransientDependency private readonly McpServerService _mcpServerService; private readonly McpHttpClientService _mcpHttpClient; private readonly IMcpLogger _mcpLogger; + private readonly ITelemetryService _telemetryService; public ILogger Logger { get; set; } @@ -36,13 +39,15 @@ public class McpCommand : IConsoleCommand, ITransientDependency AuthService authService, McpServerService mcpServerService, McpHttpClientService mcpHttpClient, - IMcpLogger mcpLogger) + IMcpLogger mcpLogger, + ITelemetryService telemetryService) { _apiKeyService = apiKeyService; _authService = authService; _mcpServerService = mcpServerService; _mcpHttpClient = mcpHttpClient; _mcpLogger = mcpLogger; + _telemetryService = telemetryService; Logger = NullLogger.Instance; } @@ -58,6 +63,8 @@ public class McpCommand : IConsoleCommand, ITransientDependency return; } + await using var _ = _telemetryService.TrackActivityAsync(ActivityNameConsts.AbpCliCommandsMcp); + // Check server health before starting _mcpLogger.Info(LogSource, "Checking ABP.IO MCP Server connection..."); var isHealthy = await _mcpHttpClient.CheckServerHealthAsync(); diff --git a/framework/src/Volo.Abp.Core/Volo/Abp/Internal/Telemetry/Constants/ActivityNameConsts.cs b/framework/src/Volo.Abp.Core/Volo/Abp/Internal/Telemetry/Constants/ActivityNameConsts.cs index 64b22ef78f..aabbf142e3 100644 --- a/framework/src/Volo.Abp.Core/Volo/Abp/Internal/Telemetry/Constants/ActivityNameConsts.cs +++ b/framework/src/Volo.Abp.Core/Volo/Abp/Internal/Telemetry/Constants/ActivityNameConsts.cs @@ -1,4 +1,4 @@ -namespace Volo.Abp.Internal.Telemetry.Constants; +namespace Volo.Abp.Internal.Telemetry.Constants; public static class ActivityNameConsts { @@ -68,6 +68,7 @@ public static class ActivityNameConsts public const string AbpCliCommandsInstallModule = "AbpCli.Comands.InstallModule"; public const string AbpCliCommandsInstallLocalModule = "AbpCli.Comands.InstallLocalModule"; public const string AbpCliCommandsListModules = "AbpCli.Comands.ListModules"; + public const string AbpCliCommandsMcp = "AbpCli.Comands.Mcp"; public const string AbpCliRun = "AbpCli.Run"; public const string AbpCliExit = "AbpCli.Exit"; public const string ApplicationRun = "Application.Run";