1 instantiation of SpanWaterfallViewModel
Aspire.Dashboard (1)
Model\Otlp\SpanWaterfallViewModel.cs (1)
181
var viewModel = new
SpanWaterfallViewModel
94 references to SpanWaterfallViewModel
Aspire.Dashboard (68)
Components\Controls\Chart\PlotlyChart.razor.cs (1)
159
title =
SpanWaterfallViewModel
.GetTitle(exemplar.Span, Resources);
Components\Controls\SpanActions.razor.cs (1)
55
public required
SpanWaterfallViewModel
SpanViewModel { get; set; }
Components\Dialogs\ExemplarsDialog.razor.cs (1)
57
?
SpanWaterfallViewModel
.GetTitle(exemplar.Span, Content.Resources)
Components\Pages\TraceDetail.razor.cs (21)
39
private List<
SpanWaterfallViewModel
>? _spanWaterfallViewModels;
45
private FluentDataGrid<
SpanWaterfallViewModel
> _dataGrid = null!;
185
internal ValueTask<GridItemsProviderResult<
SpanWaterfallViewModel
>> GetData(GridItemsProviderRequest<
SpanWaterfallViewModel
> request)
195
return ValueTask.FromResult(new GridItemsProviderResult<
SpanWaterfallViewModel
>
202
private IEnumerable<
SpanWaterfallViewModel
> GetVisibleSpanViewModels()
206
var visibleViewModels = new HashSet<
SpanWaterfallViewModel
>();
207
foreach (
var
viewModel in _spanWaterfallViewModels)
217
foreach (
var
descendent in matchedDescendents.Where(d => !d.IsHidden))
255
var
spanVm = _spanWaterfallViewModels.SingleOrDefault(vm => vm.Span.SpanId == SpanId);
288
if (_dataGrid != null && FluentDataGridHelper<
SpanWaterfallViewModel
>.TrySetMaxItemCount(_dataGrid, 10_000))
321
_spanWaterfallViewModels =
SpanWaterfallViewModel
.Create(_trace, result, new
SpanWaterfallViewModel
.TraceDetailState(OutgoingPeerResolvers.ToArray(), _collapsedSpanIds, _resources));
387
private string GetRowClass(
SpanWaterfallViewModel
viewModel)
404
private async Task OnToggleCollapse(
SpanWaterfallViewModel
viewModel)
410
private void SetSpanCollapsedState(
SpanWaterfallViewModel
viewModel, bool isCollapsed)
438
private async Task OnShowPropertiesAsync(
SpanWaterfallViewModel
viewModel, string? buttonId)
497
foreach (
var
viewModel in _spanWaterfallViewModels)
516
foreach (
var
viewModel in _spanWaterfallViewModels)
544
private static bool IsGenAISpan(
SpanWaterfallViewModel
spanViewModel)
564
foreach (
var
vm in visibleSpanViewModels.Where(IsGenAISpan))
Components_Controls_SpanDetails_razor.g.cs (1)
2180
?
SpanWaterfallViewModel
.GetTitle(context.Span, ViewModel.Resources)
Components_Pages_TraceDetail_razor.g.cs (25)
1198
SpanWaterfallViewModel
1204
__builder4.AddComponentParameter(123, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1221
__builder4.AddComponentParameter(124, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1238
__builder4.AddComponentParameter(125, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1247
__builder4.AddComponentParameter(126, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1264
__builder4.AddComponentParameter(127, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1272
), (global::Microsoft.FluentUI.AspNetCore.Components.GridItemsProvider<
SpanWaterfallViewModel
>)(
1281
__builder4.AddComponentParameter(128, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1289
), (global::System.Func<
SpanWaterfallViewModel
, global::System.String>)(
1298
__builder4.AddComponentParameter(129, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1315
__builder4.AddComponentParameter(130, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1332
__builder4.AddComponentParameter(131, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1349
__builder4.AddComponentParameter(132, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1366
__builder4.AddComponentParameter(133, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1374
), (global::System.Func<
SpanWaterfallViewModel
, global::System.Object>)(
1383
__builder4.AddComponentParameter(134, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>.
1391
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Microsoft.AspNetCore.Components.EventCallback<global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGridRow<
SpanWaterfallViewModel
>>>(global::Microsoft.AspNetCore.Components.EventCallback.Factory.Create<global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGridRow<
SpanWaterfallViewModel
>>(this,
1401
global::__Blazor.Aspire.Dashboard.Components.Pages.TraceDetail.TypeInference.CreateAspireTemplateColumn_1(__builder5, 136, default(
SpanWaterfallViewModel
)!, 137,
2031
global::__Blazor.Aspire.Dashboard.Components.Pages.TraceDetail.TypeInference.CreateAspireTemplateColumn_4(__builder5, 200, default(
SpanWaterfallViewModel
)!, 201,
2115
global::__Blazor.Aspire.Dashboard.Components.Pages.TraceDetail.TypeInference.CreateAspireTemplateColumn_5(__builder5, 215, default(
SpanWaterfallViewModel
)!, 216,
2599
__builder6.AddContent(338,
SpanWaterfallViewModel
.GetTitle(context.Span, _resources)
2630
global::__Blazor.Aspire.Dashboard.Components.Pages.TraceDetail.TypeInference.CreateAspireTemplateColumn_6(__builder5, 345, default(
SpanWaterfallViewModel
)!, 346,
2694
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Aspire.Dashboard.Model.Otlp.
SpanWaterfallViewModel
>(
2756
= (global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
SpanWaterfallViewModel
>)__value;
Model\GenAI\GenAIVisualizerDialogViewModel.cs (1)
62
Title =
SpanWaterfallViewModel
.GetTitle(spanDetailsViewModel.Span, spanDetailsViewModel.Resources),
Model\Otlp\SpanWaterfallViewModel.cs (16)
13
public required List<
SpanWaterfallViewModel
> Children { get; init; }
51
public bool MatchesFilter(string filter, TelemetryFilter? typeFilter, Func<OtlpResourceView, string> getResourceName, [NotNullWhen(true)] out IEnumerable<
SpanWaterfallViewModel
>? matchedDescendents)
59
foreach (
var
child in Children)
71
bool Filter(
SpanWaterfallViewModel
viewModel)
92
static IEnumerable<
SpanWaterfallViewModel
> GetWithDescendents(
SpanWaterfallViewModel
s)
94
var stack = new Stack<
SpanWaterfallViewModel
>();
99
var
current = stack.Pop();
102
foreach (
var
child in current.Children)
113
foreach (
var
child in Children)
119
private readonly record struct SpanWaterfallViewModelState(
SpanWaterfallViewModel
? Parent, int Depth, bool Hidden);
128
public static List<
SpanWaterfallViewModel
> Create(OtlpTrace trace, List<OtlpLogEntry> logs, TraceDetailState state)
130
var orderedSpans = new List<
SpanWaterfallViewModel
>();
137
var
viewModel = CreateViewModel(span, s.Depth, s.Hidden, state, spanLogs, ref currentSpanLogIndex);
147
static
SpanWaterfallViewModel
CreateViewModel(OtlpSpan span, int depth, bool hidden, TraceDetailState state, List<OtlpLogEntry>? spanLogs, ref int currentSpanLogIndex)
181
var
viewModel = new SpanWaterfallViewModel
Model\SpanDetailsViewModel.cs (1)
50
Title =
SpanWaterfallViewModel
.GetTitle(span, resources),
Aspire.Dashboard.Components.Tests (6)
Pages\TraceDetailsTests.cs (6)
136
var grid = cut.FindComponent<FluentDataGrid<
SpanWaterfallViewModel
>>();
150
var grid = cut.FindComponent<FluentDataGrid<
SpanWaterfallViewModel
>>();
204
var grid = cut.FindComponent<FluentDataGrid<
SpanWaterfallViewModel
>>();
231
var grid = cut.FindComponent<FluentDataGrid<
SpanWaterfallViewModel
>>();
286
var grid = cut.FindComponent<FluentDataGrid<
SpanWaterfallViewModel
>>();
376
var data = await cut.Instance.GetData(new GridItemsProviderRequest<
SpanWaterfallViewModel
>());
Aspire.Dashboard.Tests (20)
Model\SpanWaterfallViewModelTests.cs (20)
32
var vm =
SpanWaterfallViewModel
.Create(trace, [], new
SpanWaterfallViewModel
.TraceDetailState([], [], []));
63
var vm =
SpanWaterfallViewModel
.Create(trace, [log], new
SpanWaterfallViewModel
.TraceDetailState([], [], []));
92
var vm =
SpanWaterfallViewModel
.Create(trace, [], new
SpanWaterfallViewModel
.TraceDetailState([new BrowserLinkOutgoingPeerResolver()], [], []));
142
var
vm =
SpanWaterfallViewModel
.Create(
145
new
SpanWaterfallViewModel
.TraceDetailState([], [], [])).First();
202
var
vm =
SpanWaterfallViewModel
.Create(
205
new
SpanWaterfallViewModel
.TraceDetailState([], [], [])).First();
237
var vms =
SpanWaterfallViewModel
.Create(trace, [], new
SpanWaterfallViewModel
.TraceDetailState([], [], []));
238
var
parent = vms[0];
239
var
child = vms[1];
259
var vms =
SpanWaterfallViewModel
.Create(trace, [], new
SpanWaterfallViewModel
.TraceDetailState([], [], []));
260
var
parent = vms[0];
261
var
child = vms[1];