44 instantiations of ProfilingTelemetry
Aspire.Cli.Tests (44)
Backchannel\AppHostAuxiliaryBackchannelTests.cs (2)
152return await AppHostAuxiliaryBackchannel.CreateFromSocketAsync(new TestAppHostSocket("socket.hash1"), isInScope: true, NullLogger.Instance, new ProfilingTelemetry(new ConfigurationBuilder().Build()), clientSocket, timeout, CancellationToken.None).DefaultTimeout(); 155return await AppHostAuxiliaryBackchannel.CreateFromSocketAsync(new TestAppHostSocket("socket.hash1"), isInScope: true, NullLogger.Instance, new ProfilingTelemetry(new ConfigurationBuilder().Build()), clientSocket, CancellationToken.None).DefaultTimeout();
Backchannel\AppHostCliBackchannelTests.cs (2)
24using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build()); 59using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
Backchannel\AppHostConnectionResolverTests.cs (13)
43new ProfilingTelemetry(new ConfigurationBuilder().Build())); 76new ProfilingTelemetry(new ConfigurationBuilder().Build())); 123new ProfilingTelemetry(new ConfigurationBuilder().Build())); 160new ProfilingTelemetry(new ConfigurationBuilder().Build())); 194new ProfilingTelemetry(new ConfigurationBuilder().Build())); 224new ProfilingTelemetry(new ConfigurationBuilder().Build())); 255new ProfilingTelemetry(new ConfigurationBuilder().Build())); 306new ProfilingTelemetry(new ConfigurationBuilder().Build())); 357new ProfilingTelemetry(new ConfigurationBuilder().Build())); 396new ProfilingTelemetry(new ConfigurationBuilder().Build())); 433new ProfilingTelemetry(new ConfigurationBuilder().Build())); 469new ProfilingTelemetry(new ConfigurationBuilder().Build())); 505new ProfilingTelemetry(new ConfigurationBuilder().Build()));
Backchannel\AuxiliaryBackchannelMonitorTests.cs (2)
163using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build()); 208using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
Commands\AppHostLauncherTests.cs (2)
1011using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 1372new ProfilingTelemetry(new ConfigurationBuilder().Build()),
Commands\PsCommandTests.cs (1)
794return await AppHostAuxiliaryBackchannel.CreateFromSocketAsync(new TestAppHostSocket("socket.hash1"), isInScope: true, NullLogger.Instance, new ProfilingTelemetry(new ConfigurationBuilder().Build()), clientSocket, CancellationToken.None).DefaultTimeout();
Git\GitRepositoryTests.cs (1)
157return new ProfilingTelemetry(configuration);
Npm\NpmRunnerTests.cs (1)
164using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
Projects\AppHostCandidateFinderTests.cs (1)
629return new ProfilingTelemetry(configuration);
Projects\AppHostServerSessionTests.cs (2)
60using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 95using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration(
Projects\GuestAppHostProjectTests.cs (1)
41_profilingTelemetry = new ProfilingTelemetry(_configuration);
Projects\GuestRuntimeTests.cs (2)
42profilingTelemetry ?? new ProfilingTelemetry(new ConfigurationBuilder().Build()), 1717return new ProfilingTelemetry(configuration);
Projects\ProjectLocatorTests.cs (1)
4266new ProfilingTelemetry(new ConfigurationBuilder().Build()),
Projects\RunningInstanceManagerTests.cs (1)
48var manager = new RunningInstanceManager(NullLogger.Instance, new TestInteractionService(), TimeProvider.System, new ProfilingTelemetry(new ConfigurationBuilder().Build()));
Scaffolding\ChannelReseedTests.cs (2)
91profilingTelemetry: new ProfilingTelemetry(new ConfigurationBuilder().Build())); 128profilingTelemetry: new ProfilingTelemetry(new ConfigurationBuilder().Build()));
Telemetry\ProfilingTelemetryContextTests.cs (2)
66using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 102using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration(
Telemetry\ProfilingTelemetryTests.cs (8)
19using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration()); 32using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 51using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 121using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 167using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 292using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 325using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 356using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration(
369 references to ProfilingTelemetry
aspire (90)
Backchannel\AppHostAuxiliaryBackchannel.cs (6)
36private readonly ProfilingTelemetry? _profilingTelemetry; 48ProfilingTelemetry? profilingTelemetry) 135ProfilingTelemetry profilingTelemetry, 160ProfilingTelemetry profilingTelemetry, 169ProfilingTelemetry profilingTelemetry, 253private static async Task<string[]?> FetchCapabilitiesAsync(JsonRpc rpc, ILogger logger, ProfilingTelemetry? profilingTelemetry, CancellationToken cancellationToken)
Backchannel\AppHostCliBackchannel.cs (1)
37ProfilingTelemetry profilingTelemetry) : IAppHostCliBackchannel
Backchannel\AppHostConnectionResolver.cs (1)
51ProfilingTelemetry profilingTelemetry)
Backchannel\AuxiliaryBackchannelMonitor.cs (1)
28ProfilingTelemetry profilingTelemetry) : BackgroundService, IAuxiliaryBackchannelMonitor
Backchannel\ProfilingJsonRpcExtensions.cs (4)
43ProfilingTelemetry? profilingTelemetry, 66ProfilingTelemetry? profilingTelemetry, 90ProfilingTelemetry? profilingTelemetry, 120ProfilingTelemetry.ActivityScope activity,
Commands\AddCommand.cs (9)
33private readonly ProfilingTelemetry _profilingTelemetry; 55public AddCommand(IProjectLocator projectLocator, IntegrationPackageSearchService integrationPackageSearchService, IAddCommandPrompter prompter, IDotNetSdkInstaller sdkInstaller, ICliHostEnvironment hostEnvironment, IAppHostProjectFactory projectFactory, ProfilingTelemetry profilingTelemetry, CommonCommandServices services) 79ProfilingTelemetry.ActivityScope addActivity = default; 249? ProfilingTelemetry.Values.AddPackageMatchKindExact 250: ProfilingTelemetry.Values.AddPackageMatchKindNone; 275? ProfilingTelemetry.Values.AddPackageMatchKindFuzzy 276: ProfilingTelemetry.Values.AddPackageMatchKindNone; 282var promptForSingleFuzzyPackage = packageMatchKind == ProfilingTelemetry.Values.AddPackageMatchKindFuzzy; 2981 when packageMatchKind == ProfilingTelemetry.Values.AddPackageMatchKindExact
Commands\AppHostLauncher.cs (3)
39ProfilingTelemetry profilingTelemetry, 422ProfilingTelemetry.AddActivityContextToEnvironment(activity, environment); 732private LaunchResult CreateChildExitedLaunchResult(IProcessExecution childProcess, ProfilingTelemetry.ActivityScope waitForBackchannelActivity, DateTimeOffset? childStartedAt)
Commands\LsCommand.cs (2)
24private readonly ProfilingTelemetry _profilingTelemetry; 46ProfilingTelemetry profilingTelemetry,
Commands\RunCommand.cs (4)
74private readonly ProfilingTelemetry _profilingTelemetry; 139ProfilingTelemetry profilingTelemetry, 342ProfilingTelemetry.AddCurrentContextToEnvironment(context.EnvironmentVariables); 1032ProfilingTelemetry profilingTelemetry,
Commands\StopCommand.cs (3)
31private readonly ProfilingTelemetry _profilingTelemetry; 64ProfilingTelemetry profilingTelemetry, 519private static int CompleteStopActivity(ProfilingTelemetry.ActivityScope activity, int exitCode)
DotNet\DotNetCliRunner.cs (3)
181ProfilingTelemetry profilingTelemetry, 328ProfilingTelemetry.ActivityScope processActivity) 388ProfilingTelemetry.ActivityScope activity,
Git\GitRepository.cs (1)
17internal sealed class GitRepository(CliExecutionContext executionContext, IEnvironment environment, ILogger<GitRepository> logger, ProfilingTelemetry profilingTelemetry) : IGitRepository
Npm\NpmRunner.cs (1)
15internal sealed class NpmRunner(IEnvironment environment, ILogger<NpmRunner> logger, ProfilingTelemetry profilingTelemetry) : INpmRunner
Profiling\ProfileCaptureService.cs (2)
21using AspireCliProfilingTelemetry = Aspire.Cli.Telemetry.ProfilingTelemetry; 489return string.Equals(attributeName, AspireCliProfilingTelemetry.Tags.ProfilingSessionId, StringComparison.Ordinal) ||
Program.cs (3)
1100var profilingTelemetry = app.Services.GetRequiredService<ProfilingTelemetry>(); 1180ProfilingTelemetry.ActivityScope profileCommandActivity = default;
Projects\AppHostCandidateFinder.cs (5)
55ProfilingTelemetry profilingTelemetry, 118discoveryActivity.SetAppHostDiscoverySource(ProfilingTelemetry.Values.AppHostDiscoverySourceNone); 136discoveryActivity.SetAppHostDiscoverySource(ProfilingTelemetry.Values.AppHostDiscoverySourceGit); 166discoveryActivity.SetAppHostDiscoverySource(ProfilingTelemetry.Values.AppHostDiscoverySourceFilesystem); 389ProfilingTelemetry.ActivityScope walkActivity,
Projects\AppHostRpcClient.cs (3)
26private readonly ProfilingTelemetry? _profilingTelemetry; 28private AppHostRpcClient(Stream stream, JsonRpc jsonRpc, ProfilingTelemetry? profilingTelemetry) 42ProfilingTelemetry? profilingTelemetry,
Projects\AppHostServerSession.cs (7)
36private readonly ProfilingTelemetry? _profilingTelemetry; 58private ProfilingTelemetry.ActivityScope _activity; 67ProfilingTelemetry? profilingTelemetry, 197ProfilingTelemetry.AddCurrentContextToEnvironment(serverEnvironmentVariables); 462/// <see cref="ILogger{AppHostServerSession}"/> and <see cref="ProfilingTelemetry"/>; callers supply 470private readonly ProfilingTelemetry _profilingTelemetry; 472public AppHostServerSessionFactory(IEnvironment environment, ILogger<AppHostServerSession> logger, ProfilingTelemetry profilingTelemetry)
Projects\DotNetAppHostProject.cs (2)
39private readonly ProfilingTelemetry _profilingTelemetry; 80ProfilingTelemetry profilingTelemetry,
Projects\ExtensionGuestLauncher.cs (1)
44ProfilingTelemetry.AddActivityContextToEnvironment(Activity.Current, effectiveEnvironmentVariables);
Projects\GuestAppHostProject.cs (2)
54private readonly ProfilingTelemetry _profilingTelemetry; 85ProfilingTelemetry profilingTelemetry,
Projects\GuestRuntime.cs (8)
25private readonly ProfilingTelemetry _profilingTelemetry; 43ProfilingTelemetry profilingTelemetry, 59public GuestRuntime(RuntimeSpec spec, ILogger logger, Func<string, string?> commandResolver, IEnvironment environment, ProfilingTelemetry profilingTelemetry, FileLoggerProvider? fileLoggerProvider = null) 227? ProfilingTelemetry.Values.GuestCommandPhaseWatchExecute 228: ProfilingTelemetry.Values.GuestCommandPhaseExecute; 267? ProfilingTelemetry.Values.GuestCommandPhasePublishExecute 268: ProfilingTelemetry.Values.GuestCommandPhaseExecute; 298using var activity = _profilingTelemetry.StartGuestExecuteCommand(_spec.Language, _spec.DisplayName, commandSpec.Command, args, directory, ProfilingTelemetry.Values.GuestCommandPhasePreExecute);
Projects\ProcessGuestLauncher.cs (11)
48AddEvent(activity, ProfilingTelemetry.Events.GuestProcessResolveStart); 51ProfilingTelemetry.AddActivityContextToEnvironment(activity, effectiveEnvironmentVariables); 56AddEvent(activity, ProfilingTelemetry.Events.GuestProcessResolveFailed); 64ProfilingTelemetry.SetProcessInvocation(activity, resolvedCommand, args); 65AddEvent(activity, ProfilingTelemetry.Events.GuestProcessResolved, TelemetryConstants.Tags.ProcessExecutablePath, resolvedCommand); 83AddEvent(activity, ProfilingTelemetry.Events.GuestFirstStdout, TelemetryConstants.Tags.ProcessPid, pid); 95AddEvent(activity, ProfilingTelemetry.Events.GuestFirstStderr, TelemetryConstants.Tags.ProcessPid, pid); 140AddEvent(activity, ProfilingTelemetry.Events.GuestProcessStart); 150AddEvent(activity, ProfilingTelemetry.Events.GuestProcessStarted, TelemetryConstants.Tags.ProcessPid, execution.ProcessId); 180AddEvent(activity, ProfilingTelemetry.Events.GuestProcessExited, TelemetryConstants.Tags.ProcessExitCode, finalExitCode); 196return activity?.Source.Name == ProfilingTelemetry.ActivitySourceName ? activity : null;
Projects\RunningInstanceManager.cs (2)
28private readonly ProfilingTelemetry _profilingTelemetry; 34ProfilingTelemetry profilingTelemetry)
Scaffolding\ScaffoldingService.cs (2)
49private readonly ProfilingTelemetry _profilingTelemetry; 59ProfilingTelemetry profilingTelemetry)
Telemetry\ProfilingTelemetry.cs (1)
1161ProfilingTelemetry.SetProcessInvocation(activity, executablePath, args);
Telemetry\TelemetryManager.cs (1)
127_profilingProvider = CreateTracerProviderBuilder(ProfilingTelemetry.ActivitySourceName, resource, tagsSource)
Telemetry\TelemetryServiceCollectionExtensions.cs (1)
46services.AddSingleton<ProfilingTelemetry>();
Aspire.Cli.Tests (279)
Backchannel\AppHostCliBackchannelTests.cs (2)
24using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build()); 59using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
Backchannel\AuxiliaryBackchannelMonitorTests.cs (2)
163using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build()); 208using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
Commands\AppHostLauncherTests.cs (18)
954activity.SetBaggage(ProfilingTelemetry.Baggage.SessionId, "session-1"); 960Assert.Equal("true", environment[ProfilingTelemetry.EnvironmentVariables.Enabled]); 961Assert.Equal("session-1", environment[ProfilingTelemetry.EnvironmentVariables.SessionId]); 963Assert.Equal(activity.Id, environment[ProfilingTelemetry.EnvironmentVariables.TraceParent]); 964Assert.Equal("state-1", environment[ProfilingTelemetry.EnvironmentVariables.TraceState]); 1011using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 1012(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"))); 1021Assert.Equal("true", environment[ProfilingTelemetry.EnvironmentVariables.Enabled]); 1022var sessionId = environment[ProfilingTelemetry.EnvironmentVariables.SessionId]; 1025Assert.Equal(Activity.Current?.Id, environment[ProfilingTelemetry.EnvironmentVariables.TraceParent]); 1039Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.Enabled)); 1040Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.SessionId)); 1041Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.TraceParent)); 1042Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.TraceState)); 1051Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.Enabled)); 1052Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.SessionId)); 1053Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.TraceParent)); 1054Assert.False(environment.ContainsKey(ProfilingTelemetry.EnvironmentVariables.TraceState));
Commands\LsCommandTests.cs (13)
776config[ProfilingTelemetry.EnvironmentVariables.Enabled] = "true"; 777config[ProfilingTelemetry.EnvironmentVariables.SessionId] = sessionId; 781var profilingTelemetry = provider.GetRequiredService<ProfilingTelemetry>(); 791var lsActivity = Assert.Single(startedActivities, activity => IsActivityFromSession(activity, ProfilingTelemetry.Activities.LsCommand, sessionId)); 792Assert.Equal("json", lsActivity.GetTagItem(ProfilingTelemetry.Tags.LsOutputFormat)); 793Assert.Equal(true, lsActivity.GetTagItem(ProfilingTelemetry.Tags.LsIncludeAll)); 794Assert.Equal(1, lsActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 795Assert.Equal(sessionId, lsActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 797var findActivity = Assert.Single(startedActivities, activity => IsActivityFromSession(activity, ProfilingTelemetry.Activities.LsFindAppHosts, sessionId)); 798Assert.Equal(AppHostDiscoveryScope.AllFiles.ToString(), findActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryScope)); 799Assert.Equal(1, findActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 805Equals(sessionId, activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId));
Commands\StopCommandTests.cs (6)
414var profilingTelemetry = provider.GetRequiredService<ProfilingTelemetry>(); 424var stopCommandActivity = Assert.Single(stoppedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.StopCommand); 425Assert.Equal(true, stopCommandActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostStopAll)); 426Assert.Equal(2, stopCommandActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostStopCount)); 429var stopAppHostActivities = stoppedActivities.Where(activity => activity.OperationName == ProfilingTelemetry.Activities.StopAppHost).ToArray();
DotNet\DotNetCliRunnerTests.cs (15)
738config[ProfilingTelemetry.EnvironmentVariables.Enabled] = "true"; 739config[ProfilingTelemetry.EnvironmentVariables.SessionId] = "session-1"; 743var profilingTelemetry = provider.GetRequiredService<ProfilingTelemetry>(); 755Assert.Equal(ProfilingTelemetry.ActivitySourceName, currentActivity.Source.Name); 757Assert.Equal("true", env[ProfilingTelemetry.EnvironmentVariables.Enabled]); 759Assert.Equal("session-1", env[ProfilingTelemetry.EnvironmentVariables.SessionId]); 761Assert.Equal(currentActivity.Id, env[ProfilingTelemetry.EnvironmentVariables.TraceParent]); 797config[ProfilingTelemetry.EnvironmentVariables.Enabled] = "true"; 798config[ProfilingTelemetry.EnvironmentVariables.SessionId] = sessionId; 804var profilingTelemetry = provider.GetRequiredService<ProfilingTelemetry>(); 839.Where(activity => activity.Tags.Any(tag => tag.Key == ProfilingTelemetry.Tags.ProfilingSessionId && tag.Value == sessionId)) 841var processActivity = Assert.Single(sessionActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.Process); 842var backchannelActivity = Assert.Single(sessionActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.BackchannelConnect);
Git\GitRepositoryTests.cs (17)
23using var profilingTelemetry = CreateProfilingTelemetry(); 63using var profilingTelemetry = CreateProfilingTelemetry(); 92using var profilingTelemetry = CreateProfilingTelemetry(); 119using var profilingTelemetry = CreateProfilingTelemetry( 120(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 121(ProfilingTelemetry.EnvironmentVariables.SessionId, sessionId)); 130IsActivityFromSession(activity, ProfilingTelemetry.Activities.Process, sessionId) && 131activity.GetTagItem(ProfilingTelemetry.Tags.GitCommand) as string == "ls-files"); 132Assert.Equal(ProfilingTelemetry.Activities.Process, startedActivity.OperationName); 134Assert.Equal("ls-files", startedActivity.GetTagItem(ProfilingTelemetry.Tags.GitCommand)); 135Assert.Equal(workspace.WorkspaceRoot.FullName, startedActivity.GetTagItem(ProfilingTelemetry.Tags.GitWorkingDirectory)); 138Assert.Equal(new[] { "ls-files", "--cached", "--others", "--exclude-standard", "-z" }, Assert.IsType<string[]>(startedActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 139Assert.Equal(5, startedActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 142Assert.True((int)startedActivity.GetTagItem(ProfilingTelemetry.Tags.GitStdoutLength)! > 0); 143Assert.Equal(sessionId, startedActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 149Equals(sessionId, activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 152private static ProfilingTelemetry CreateProfilingTelemetry(params (string Key, string? Value)[] values)
Npm\NpmRunnerTests.cs (1)
164using var profilingTelemetry = new ProfilingTelemetry(new ConfigurationBuilder().Build());
ProfileCaptureServiceTests.cs (1)
614string sessionTagName = ProfilingTelemetry.Tags.ProfilingSessionId,
Projects\AppHostCandidateFinderTests.cs (34)
219using var profilingTelemetry = CreateProfilingTelemetry( 220(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 221(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1")); 232var discoveryActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.AppHostCandidateDiscovery); 233Assert.Equal(AppHostDiscoveryScope.DefaultFiltered.ToString(), discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryScope)); 234Assert.Equal(ProfilingTelemetry.Values.AppHostDiscoverySourceGit, discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoverySource)); 235Assert.Equal(1, discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryIncludedFileCount)); 236Assert.Equal(1, discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 238var matchActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.AppHostCandidateGitMatch); 239Assert.Equal(ProfilingTelemetry.Values.AppHostDiscoverySourceGit, matchActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoverySource)); 240Assert.Equal(1, matchActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryIncludedFileCount)); 241Assert.Equal(1, matchActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 242Assert.Equal("session-1", matchActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 275using var profilingTelemetry = CreateProfilingTelemetry( 276(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 277(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1")); 293var discoveryActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.AppHostCandidateDiscovery); 294Assert.Equal(ProfilingTelemetry.Values.AppHostDiscoverySourceFilesystem, discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoverySource)); 295Assert.Equal(1, discoveryActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 297var walkActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.AppHostCandidateFilesystemWalk); 298Assert.Equal(ProfilingTelemetry.Values.AppHostDiscoverySourceFilesystem, walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoverySource)); 299Assert.Equal(true, walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoverySkipListEnabled)); 300Assert.Equal(1, walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 301Assert.True((int)walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryWalkFileCount)! >= result.Files.Length); 302Assert.True((int)walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryWalkDirectoryCount)! >= 2); 303Assert.Equal(1, walkActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostDiscoveryWalkSkippedDirectoryCount)); 304Assert.Equal("session-1", walkActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 584private static AppHostCandidateFinder CreateFinder(TestGitRepository? gitRepository = null, ProfilingTelemetry? profilingTelemetry = null) 592var profilingTelemetry = CreateProfilingTelemetry(); 624private static ProfilingTelemetry CreateProfilingTelemetry(params (string Key, string? Value)[] values)
Projects\AppHostServerSessionTests.cs (13)
60using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 61(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 62(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 74Assert.False(environmentVariables.ContainsKey(ProfilingTelemetry.EnvironmentVariables.Enabled)); 79Assert.Equal("true", receivedEnvironmentVariables[ProfilingTelemetry.EnvironmentVariables.Enabled]); 81Assert.Equal("session-1", receivedEnvironmentVariables[ProfilingTelemetry.EnvironmentVariables.SessionId]); 83Assert.StartsWith("00-", receivedEnvironmentVariables[ProfilingTelemetry.EnvironmentVariables.TraceParent], StringComparison.Ordinal); 85receivedEnvironmentVariables[ProfilingTelemetry.EnvironmentVariables.TraceParent], 95using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 96(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 97(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 112Assert.NotEqual(parentActivity.Id, receivedEnvironmentVariables[ProfilingTelemetry.EnvironmentVariables.TraceParent]); 548ProfilingTelemetry? profilingTelemetry = null,
Projects\GuestAppHostProjectTests.cs (1)
35private readonly ProfilingTelemetry _profilingTelemetry;
Projects\GuestRuntimeTests.cs (33)
35ProfilingTelemetry? profilingTelemetry = null, 260using var profilingTelemetry = CreateProfilingTelemetry( 261(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 262(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1")); 288.Where(activity => activity.OperationName == ProfilingTelemetry.Activities.Process && 289activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId) as string == "session-1" && 290activity.GetTagItem(ProfilingTelemetry.Tags.GuestCommandPhase) is not null) 298Assert.Equal(ProfilingTelemetry.Values.GuestCommandPhasePreExecute, preExecuteActivity.GetTagItem(ProfilingTelemetry.Tags.GuestCommandPhase)); 300Assert.Equal("npx", preExecuteActivity.GetTagItem(ProfilingTelemetry.Tags.GuestCommand)); 301Assert.Equal(new[] { "tsc", "--noEmit", "-p", "tsconfig.apphost.json" }, Assert.IsType<string[]>(preExecuteActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 302Assert.Equal(4, preExecuteActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 307Assert.Equal(ProfilingTelemetry.Values.GuestCommandPhaseExecute, executeActivity.GetTagItem(ProfilingTelemetry.Tags.GuestCommandPhase)); 309Assert.Equal("npx", executeActivity.GetTagItem(ProfilingTelemetry.Tags.GuestCommand)); 310Assert.Equal(new[] { "tsx", "--tsconfig", "tsconfig.apphost.json", appHostFile.FullName }, Assert.IsType<string[]>(executeActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 311Assert.Equal(4, executeActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 963using var profilingTelemetry = CreateProfilingTelemetry( 964(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 965(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1")); 977ProfilingTelemetry.Values.GuestCommandPhaseExecute)) 994activity.OperationName == ProfilingTelemetry.Activities.Process && 995activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId) as string == "session-1" && 996activity.GetTagItem(ProfilingTelemetry.Tags.GuestCommand) as string == "dotnet"); 1003Assert.Equal(new[] { "--version" }, Assert.IsType<string[]>(activity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 1004Assert.Equal(1, activity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 1007Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestProcessResolveStart); 1008Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestProcessResolved); 1009Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestProcessStart); 1010Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestProcessStarted); 1011Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestFirstStdout); 1012Assert.Contains(activity.Events, @event => @event.Name == ProfilingTelemetry.Events.GuestProcessExited); 1712private static ProfilingTelemetry CreateProfilingTelemetry(params (string Key, string? Value)[] values)
Telemetry\ProfilingTelemetryContextTests.cs (21)
22activity.SetBaggage(ProfilingTelemetry.Baggage.SessionId, "session-1"); 26ProfilingTelemetry.AddActivityContextToEnvironment(activity, environment); 28Assert.Equal("true", environment[ProfilingTelemetry.EnvironmentVariables.Enabled]); 29Assert.Equal("session-1", environment[ProfilingTelemetry.EnvironmentVariables.SessionId]); 30Assert.Equal(activity.Id, environment[ProfilingTelemetry.EnvironmentVariables.TraceParent]); 31Assert.Equal("state-1", environment[ProfilingTelemetry.EnvironmentVariables.TraceState]); 43ProfilingTelemetry.AddActivityContextToEnvironment(null, environment); 57ProfilingTelemetry.AddActivityContextToEnvironment(activity, environment); 66using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 67(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 68(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"), 69(ProfilingTelemetry.EnvironmentVariables.TraceParent, "00-0102030405060708090a0b0c0d0e0f10-1112131415161718-01"), 70(ProfilingTelemetry.EnvironmentVariables.TraceState, "state-1"))); 76var startedActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.RunCommand); 78Assert.Equal("session-1", startedActivity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId)); 79Assert.Equal("session-1", startedActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 92var isEnabled = ProfilingTelemetry.IsProfilingEnabled(CreateConfiguration( 93(ProfilingTelemetry.EnvironmentVariables.Enabled, enabled))); 102using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 112var startedActivity = Assert.Single(startedActivities, activity => activity.OperationName == ProfilingTelemetry.Activities.RunCommand); 114Assert.Equal("session-1", startedActivity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId));
Telemetry\ProfilingTelemetryTests.cs (89)
19using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration()); 32using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 33(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 34(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 41Assert.Equal(ProfilingTelemetry.ActivitySourceName, startedActivity.Source.Name); 42Assert.Equal("session-1", startedActivity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 43Assert.Equal("session-1", startedActivity.GetTagItem(ProfilingTelemetry.Tags.LegacyStartupOperationId)); 44Assert.Equal("session-1", startedActivity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId)); 51using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 52(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 53(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 81Assert.Equal(ProfilingTelemetry.Activities.Process, spawnActivity.OperationName); 85Assert.Equal(new[] { "run", "--project", "AppHost" }, Assert.IsType<string[]>(spawnActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 86Assert.Equal(3, spawnActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 90Assert.Equal(ProfilingTelemetry.Activities.Process, npmActivity.OperationName); 94Assert.Equal(new[] { "exec", "--", "tsx", "apphost.ts" }, Assert.IsType<string[]>(npmActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 95Assert.Equal(4, npmActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 99Assert.Equal(ProfilingTelemetry.Activities.Process, dotnetActivity.OperationName); 103Assert.Equal(new[] { "run", "--project", "AppHost" }, Assert.IsType<string[]>(dotnetActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 104Assert.Equal(3, dotnetActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 108Assert.Equal(ProfilingTelemetry.Activities.Process, gitActivity.OperationName); 112Assert.Equal(new[] { "ls-files", "--cached" }, Assert.IsType<string[]>(gitActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 113Assert.Equal(2, gitActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 121using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 122(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 123(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 148Assert.Equal(new[] { "run", "--apphost", "AppHost", "--", "<redacted>", "<redacted>" }, Assert.IsType<string[]>(spawnActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 149Assert.Equal(6, spawnActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 153Assert.Equal(new[] { "run", "--project", "AppHost", "--", "<redacted>", "<redacted>" }, Assert.IsType<string[]>(dotnetActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 154Assert.Equal(6, dotnetActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 158Assert.Equal(new[] { "--from-msbuild", "value", "<redacted>", "<redacted>" }, Assert.IsType<string[]>(directActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgs))); 159Assert.Equal(4, directActivity.GetTagItem(ProfilingTelemetry.Tags.ProcessCommandArgsCount)); 167using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 168(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 169(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 192selectPackageActivity.SetAddPackageMatch(1, ProfilingTelemetry.Values.AddPackageMatchKindExact); 221Assert.Equal(ProfilingTelemetry.Activities.AddCommand, addActivity.OperationName); 222Assert.Equal("redis", addActivity.GetTagItem(ProfilingTelemetry.Tags.AddIntegrationName)); 223Assert.Equal(true, addActivity.GetTagItem(ProfilingTelemetry.Tags.AddVersionSpecified)); 224Assert.Equal(true, addActivity.GetTagItem(ProfilingTelemetry.Tags.AddSourceSpecified)); 225Assert.Equal(true, addActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostProjectFileSpecified)); 226Assert.Equal(1, addActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 227Assert.Equal("csharp", addActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostLanguage)); 228Assert.Equal(42, addActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageSearchResultCount)); 229Assert.Equal("Aspire.Hosting.Redis", addActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageId)); 230Assert.Equal("13.4.0", addActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageVersion)); 231Assert.Equal("daily", addActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageChannel)); 235Assert.Equal(ProfilingTelemetry.Activities.AddFindAppHost, findAppHostActivity.OperationName); 236Assert.Equal(true, findAppHostActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostProjectFileSpecified)); 237Assert.Equal(1, findAppHostActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostCandidateCount)); 241Assert.Equal(ProfilingTelemetry.Activities.AddGetConfiguredChannel, configuredChannelActivity.OperationName); 242Assert.Equal("daily", configuredChannelActivity.GetTagItem(ProfilingTelemetry.Tags.AddConfiguredChannel)); 246Assert.Equal(ProfilingTelemetry.Activities.AddSearchPackages, searchPackagesActivity.OperationName); 247Assert.Equal("daily", searchPackagesActivity.GetTagItem(ProfilingTelemetry.Tags.AddConfiguredChannel)); 248Assert.Equal(42, searchPackagesActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageSearchResultCount)); 252Assert.Equal(ProfilingTelemetry.Activities.AddSelectPackage, selectPackageActivity.OperationName); 253Assert.Equal("redis", selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddIntegrationName)); 254Assert.Equal(true, selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddVersionSpecified)); 255Assert.Equal(1, selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageMatchCount)); 256Assert.Equal(ProfilingTelemetry.Values.AddPackageMatchKindExact, selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageMatchKind)); 257Assert.Equal("Aspire.Hosting.Redis", selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageId)); 258Assert.Equal("13.4.0", selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageVersion)); 259Assert.Equal("daily", selectPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageChannel)); 263Assert.Equal(ProfilingTelemetry.Activities.AddSelectPackagePrompt, promptActivity.OperationName); 267Assert.Equal(ProfilingTelemetry.Activities.AddStopExistingInstance, stopRunningInstanceActivity.OperationName); 268Assert.Equal("NoInstanceFound", stopRunningInstanceActivity.GetTagItem(ProfilingTelemetry.Tags.AppHostRunningInstanceResult)); 272Assert.Equal(ProfilingTelemetry.Activities.AddPackage, addPackageActivity.OperationName); 273Assert.Equal("Aspire.Hosting.Redis", addPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageId)); 274Assert.Equal("13.4.0", addPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageVersion)); 275Assert.Equal(true, addPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddSourceSpecified)); 276Assert.Equal(true, addPackageActivity.GetTagItem(ProfilingTelemetry.Tags.AddPackageSuccess)); 281Assert.Equal("session-1", activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 282Assert.Equal("session-1", activity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId)); 292using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 293(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"))); 298parentActivity.SetBaggage(ProfilingTelemetry.Baggage.SessionId, "session-1"); 312Assert.Equal("session-1", activity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId)); 313Assert.Equal("session-1", activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 325using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 326(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"))); 342var sessionId = parentActivity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId); 348Assert.Equal(sessionId, activity.GetBaggageItem(ProfilingTelemetry.Baggage.SessionId)); 349Assert.Equal(sessionId, activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)); 356using var profilingTelemetry = new ProfilingTelemetry(CreateConfiguration( 357(ProfilingTelemetry.EnvironmentVariables.Enabled, "true"), 358(ProfilingTelemetry.EnvironmentVariables.SessionId, "session-1"))); 365Assert.Equal("session-1", traceContext.Baggage[ProfilingTelemetry.Baggage.SessionId]); 370return [.. activities.Where(activity => Equals(sessionId, activity.GetTagItem(ProfilingTelemetry.Tags.ProfilingSessionId)))];
TestServices\TestProcessExecutionFactory.cs (3)
298serviceProvider.GetRequiredService<ProfilingTelemetry>(), 329serviceProvider.GetRequiredService<ProfilingTelemetry>(), 362serviceProvider.GetRequiredService<ProfilingTelemetry>(),
Utils\CliTestHelper.cs (10)
137services.AddSingleton<ProfilingTelemetry>(); 475var profilingTelemetry = serviceProvider.GetRequiredService<ProfilingTelemetry>(); 551return new ScaffoldingService(appHostServerProjectFactory, serverSessionFactory, languageDiscovery, interactionService, serviceProvider.GetRequiredService<IEnvironment>(), logger, executionContext, serviceProvider.GetRequiredService<ProfilingTelemetry>()); 563var profilingTelemetry = serviceProvider.GetRequiredService<ProfilingTelemetry>(); 593var profilingTelemetry = serviceProvider.GetRequiredService<ProfilingTelemetry>(); 677var profilingTelemetry = serviceProvider.GetRequiredService<ProfilingTelemetry>();