3 writes to Dimensions
Aspire.Dashboard (2)
Components\Controls\Chart\MetricInstrumentDataCache.cs (1)
79Dimensions = dimensions,
Otlp\Storage\SqliteTelemetryRepository.Metrics.Reads.cs (1)
161Dimensions = dimensions,
Aspire.Dashboard.Tests (1)
ChartDataCalculatorTests.cs (1)
963Dimensions = dimensions,
125 references to Dimensions
Aspire.Dashboard (9)
Components\Controls\Chart\ChartContainer.razor.cs (1)
189await _instrumentViewModel.UpdateDataAsync(instrument.Summary, instrument.Dimensions, instrument.HasOverflow);
Components\Controls\Chart\MetricInstrumentDataCache.cs (5)
17var cursors = new List<MetricDimensionCursor>(data.Dimensions.Count); 18foreach (var dimension in data.Dimensions) 47var dimensions = new List<DimensionScope>(refreshed.Dimensions.Count); 48foreach (var refreshedDimension in refreshed.Dimensions) 50var cachedDimension = cached.Dimensions.FirstOrDefault(dimension => AttributesEqual(dimension.Attributes, refreshedDimension.Attributes));
Model\TelemetryExportService.cs (3)
506DataPoints = ConvertNumberDataPoints(instrumentData.Dimensions) 512DataPoints = ConvertNumberDataPoints(instrumentData.Dimensions), 519DataPoints = ConvertHistogramDataPoints(instrumentData.Dimensions),
Aspire.Dashboard.Tests (116)
ChartDataCalculatorTests.cs (3)
890merged.Dimensions[0].Values.Cast<MetricValue<long>>(), 894Assert.Equal(4, Assert.IsType<MetricValue<long>>(Assert.Single(merged.Dimensions[1].Values)).Value); 920Assert.Single(merged.Dimensions).Values.Cast<MetricValue<long>>(),
Integration\OtlpHttpJsonTests.cs (1)
779var dimension = Assert.Single(instrumentData.Dimensions);
TelemetryRepositoryTests\HistogramTests.cs (62)
59var value = Assert.Single(Assert.Single(instrument.Dimensions).Values); 73Assert.Equal(expectedTimestamps, Assert.Single(Assert.Single(merged.Dimensions).Values).Exemplars.Select(exemplar => exemplar.TimeUnixNano)); 85Assert.Equal(expectedTimestamps, Assert.Single(Assert.Single(filtered.Dimensions).Values).Exemplars.Select(exemplar => exemplar.TimeUnixNano)); 96Assert.Empty(Assert.Single(Assert.Single(afterSamples.Dimensions).Values).Exemplars); 111Assert.Equal(expectedTimestamps, Assert.Single(Assert.Single(imported.Dimensions).Values).Exemplars.Select(exemplar => exemplar.TimeUnixNano)); 142var value = Assert.Single(Assert.Single(instrument.Dimensions).Values); 171var snapshot = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)); 214var snapshot = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)); 251var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 259Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 263var rolledUpValue = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(rolledUp.Dimensions).Values)); 297var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 318Assert.Equal([10ul, 20ul, 25ul], Assert.Single(instrument.Dimensions).Values.Select(value => value.Count)); 320Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 347var value = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)); 377var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 386var countData = calculator.CalculateChartValues(instrument.Dimensions, chartTime, value => value, "Count"); 389var percentileData = calculator.CalculateHistogramValues(instrument.Dimensions, chartTime, value => value, "ms"); 447var values = Assert.Single(histogram.Dimensions).Values.Cast<HistogramValue>().ToArray(); 507var values = Assert.Single(histogram.Dimensions).Values.Cast<HistogramValue>().ToArray(); 510Assert.True(ChartDataCalculator.TryCalculatePoint(histogram.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 522Assert.Collection(Assert.Single(gauge.Dimensions).Values, 556var value = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)); 611var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 614Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 686var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 694Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 758var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().OrderBy(value => value.AggregationId).ToArray(); 775Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 822var values = Assert.Single(imported.Dimensions).Values.Cast<HistogramValue>().OrderBy(value => value.AggregationId).ToArray(); 837Assert.True(ChartDataCalculator.TryCalculatePoint(imported.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 886Assert.Collection(Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>(), 899Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 916Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 943Assert.Equal(2, Assert.Single(instrument.Dimensions).Values.Count); 945Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 947Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start.AddSeconds(1), s_start.AddSeconds(2), out count)); 998Assert.Single(raw.Dimensions).Values.Select(value => value.Start)); 999Assert.Equal([100d, 1d, 2d], Assert.Single(raw.Dimensions).Values.Select(value => Assert.Single(value.Exemplars).Value)); 1011var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1021Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start.AddMilliseconds(1500), boundary, out var count)); 1023Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, boundary, s_start.AddSeconds(5), out count)); 1026.CalculateChartValues(instrument.Dimensions, new DateTimeOffset(boundary), value => value, "Count"); 1047var mergedValues = Assert.Single(merged.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1062var partialValue = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(partial.Dimensions).Values)); 1065Assert.False(ChartDataCalculator.TryCalculatePoint(partial.Dimensions, s_start, boundary, out _)); 1095var snapshot = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)); 1098Assert.False(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddMilliseconds(3500), out _)); 1127var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1133Assert.True(ChartDataCalculator.TryCalculatePoint(instrument.Dimensions, s_start, s_start.AddSeconds(1), out var count)); 1148var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1183firstId = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)).AggregationId; 1194var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1229var finalValues = Assert.Single(finalInstrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1317var values = Assert.Single(imported.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1383Assert.Empty((await GetInstrumentAsync(context.Repository, rollup: false)).Dimensions); 1420Assert.Equal(2, Assert.Single(instrument.Dimensions).Values.Count); 1441Assert.Equal([10d, 100d], Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument.Dimensions).Values)).ExplicitBounds); 1507Assert.Collection(Assert.Single(instrument.Dimensions).Values, 1526Assert.Collection(Assert.Single(instrument.Dimensions).Values, 1540var values = Assert.Single(instrument.Dimensions).Values.Cast<HistogramValue>().ToArray(); 1586Assert.True(ChartDataCalculator.TryCalculateHistogramPoints(instrument.Dimensions,
TelemetryRepositoryTests\MetricsTests.cs (47)
194var dimensionAttributes = instrument.Dimensions.Single().Attributes; 275var dimensionAttributes = instrument.Dimensions.Single().Attributes; 322Assert.Single(instrument.Dimensions).Attributes); 404Assert.Equal(5, instrumentData.Dimensions.Count); 405Assert.All(instrumentData.Dimensions, dimension => Assert.Equal(1, Assert.IsType<MetricValue<long>>(Assert.Single(dimension.Values)).Value)); 406var dimensionWithoutAttributes = Assert.Single(instrumentData.Dimensions, dimension => dimension.Attributes.Length == 0); 426Assert.Equal(3, filteredInstrumentData.Dimensions.Count); 427Assert.All(filteredInstrumentData.Dimensions, dimension => 489var dimensions = instrument.Dimensions.ToDictionary(dimension => Assert.Single(dimension.Attributes).Value); 580var dimension = Assert.Single(instrument.Dimensions); 696instrument.Dimensions.OrderBy(dimension => Assert.Single(dimension.Attributes).Value), 871var resource1Test1Dimensions = Assert.Single(resource1Test1Instrument.Dimensions); 916var resource2Test1Dimensions = Assert.Single(resource2Test1Instrument.Dimensions); 931var resource2Test3Dimensions = Assert.Single(resource2Test3Instrument.Dimensions); 1056var resource2Test1Dimensions = Assert.Single(resource2Test1Instrument.Dimensions); 1071var resource2Test3Dimensions = Assert.Single(resource2Test3Instrument.Dimensions); 1161Assert.Equal(1, Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(instrument.Dimensions).Values)).Value); 1218instrument!.Dimensions 1281Assert.Empty(instrument.Dimensions); 1327var value = Assert.Single(Assert.Single(instrument!.Dimensions).Values); 1414var dimension = Assert.Single(instrument.Dimensions); 1478var dimension = Assert.Single(instrument.Dimensions); 1546Assert.Single(instrument1.Dimensions); 1652Assert.Equal(pointAttributeCount + scopeAttributeCount, Assert.Single(instrument.Dimensions).Attributes.Length); 1696Assert.Equal(dimensionCountPerView * 2, instrument.Dimensions.Count); 1738var value = Assert.Single(Assert.Single(instrument.Dimensions).Values); 1811var values = Assert.Single(instrument.Dimensions).Values; 1859Assert.Empty(instrument.Dimensions); 1884var values = Assert.Single(instrument.Dimensions).Values; 1917var value = Assert.Single(Assert.Single(instrument.Dimensions).Values); 1945Assert.Empty(Assert.Single(instrument.Dimensions).Values); 1971var exemplar = Assert.Single(Assert.Single(Assert.Single(instrument!.Dimensions).Values).Exemplars); 1991Assert.Empty(Assert.Single(instrument!.Dimensions).Values); 2035var dimensions = instrument.Dimensions.ToDictionary(dimension => Assert.Single(dimension.Attributes).Value); 2085var dimensions = instrument.Dimensions.ToDictionary(dimension => Assert.Single(dimension.Attributes).Value); 2162var initialDimension = Assert.Single(initialInstrument!.Dimensions); 2207var refreshedValue = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(refreshedInstrument!.Dimensions).Values)); 2256var value = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(instrument!.Dimensions).Values)); 2275var initialValue = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(initialInstrument.Dimensions).Values)); 2284var refreshedValue = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(refreshedInstrument.Dimensions).Values)); 2377var value = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument!.Dimensions).Values)); 2440var histogramValue = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(histogramInstrument!.Dimensions).Values)); 2453sumInstrument!.Dimensions, 2504var value = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(instrument!.Dimensions).Values)); 2548var value = Assert.IsType<MetricValue<long>>(Assert.Single(Assert.Single(instrument!.Dimensions).Values)); 2601Assert.Collection(instrument!.Dimensions, 2629Assert.Equal([4L, 5L, 6L], instrument!.Dimensions[0].Values.Select(value => Assert.IsType<MetricValue<long>>(value).Value));
TelemetryRepositoryTests\SqliteTelemetryPersistenceTests.cs (3)
433var dimension = Assert.Single(instrument!.Dimensions); 527Assert.Equal([3L, 4L, 5L], Assert.Single(instrument!.Dimensions).Values.Select(value => Assert.IsType<MetricValue<long>>(value).Value)); 594var value = Assert.IsType<HistogramValue>(Assert.Single(Assert.Single(instrument!.Dimensions).Values));