Is there an existing issue for this?
Describe the bug
with a http.server.requests metric exported via the otel agent's micrometer bridge, the aspire dashboard can get into an odd state .
if I navigate to the micrometer metric http.server.requests, I get an IndexOutOfRangeException in the aspire dashboard's container logs.
standalone aspire dashboard started with:
docker run --rm -it -p 8000:18888 -p 4317:18889 -p 4318:18890 --name aspire-dashboard -e DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS="true" mcr.microsoft.com/dotnet/aspire-dashboard
enabled micrometer metrics bridge with :
otel.instrumentation.micrometer.enabled=true in my JVM settings
I can navigate via the left-nav to logs or traces, and the UI is responsive.
If I navigate back to metrics, the UI is unresponsive. I am unable to select other metrics.
In the browser window, I have to manually remove the query parameters from the URI, and then navigate to
for example, change from this:
http://localhost:8000/metrics/resource/my-application-name?meter=io.opentelemetry.micrometer-1.5&instrument=http.server.requests&duration=5
to
http://localhost:8000/metrics/resource/my-application-name
once I manually remove those query parameters, I can select other (non-micrometer) metrics in the UI
Expected Behavior
No response
Steps To Reproduce
No response
Exceptions (if any)
warn: Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer[100]
Unhandled exception rendering component: Index was outside the bounds of the array.
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculatePercentile(Int32 percentile, UInt64[] counts, Double[] explicitBounds) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 346
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.TryCalculateHistogramPoints(List1 dimensions, DateTimeOffset start, DateTimeOffset end, Dictionary2 traces, List1 exemplars) in /_/src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 276 at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculateHistogramValues(List1 dimensions, Int32 pointCount, Boolean tickUpdate, DateTimeOffset inProgressDataTime, String yLabel) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 147
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.UpdateChartAsync(Boolean tickUpdate, DateTimeOffset inProgressDataTime) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 506
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 107
at Aspire.Dashboard.Components.PlotlyChart.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/PlotlyChart.razor.cs:line 177
fail: Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111]
Unhandled exception in circuit '2YmzVDSrBI8PnW2kK1Vw-iP_YeL1r-p14788V170uBw'.
System.AggregateException: One or more errors occurred. (Index was outside the bounds of the array.)
---> System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculatePercentile(Int32 percentile, UInt64[] counts, Double[] explicitBounds) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 346
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.TryCalculateHistogramPoints(List1 dimensions, DateTimeOffset start, DateTimeOffset end, Dictionary2 traces, List1 exemplars) in /_/src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 276 at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculateHistogramValues(List1 dimensions, Int32 pointCount, Boolean tickUpdate, DateTimeOffset inProgressDataTime, String yLabel) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 147
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.UpdateChartAsync(Boolean tickUpdate, DateTimeOffset inProgressDataTime) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 506
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 107
at Aspire.Dashboard.Components.PlotlyChart.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/PlotlyChart.razor.cs:line 177
--- End of inner exception stack trace ---
.NET Version info
No response
Anything else?
aspire dashboard 9.0.0 (standalone)
otel java agent 2.10.0
java app - spring boot 3.4.0, temurin java 21.0.1
configured for jetty, not tomcat.
Is there an existing issue for this?
Describe the bug
with a http.server.requests metric exported via the otel agent's micrometer bridge, the aspire dashboard can get into an odd state .
if I navigate to the micrometer metric http.server.requests, I get an IndexOutOfRangeException in the aspire dashboard's container logs.
standalone aspire dashboard started with:
docker run --rm -it -p 8000:18888 -p 4317:18889 -p 4318:18890 --name aspire-dashboard -e DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS="true" mcr.microsoft.com/dotnet/aspire-dashboardenabled micrometer metrics bridge with :
otel.instrumentation.micrometer.enabled=truein my JVM settingsI can navigate via the left-nav to logs or traces, and the UI is responsive.
If I navigate back to metrics, the UI is unresponsive. I am unable to select other metrics.
In the browser window, I have to manually remove the query parameters from the URI, and then navigate to
for example, change from this:
to
once I manually remove those query parameters, I can select other (non-micrometer) metrics in the UI
Expected Behavior
No response
Steps To Reproduce
No response
Exceptions (if any)
warn: Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer[100]
Unhandled exception rendering component: Index was outside the bounds of the array.
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculatePercentile(Int32 percentile, UInt64[] counts, Double[] explicitBounds) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 346
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.TryCalculateHistogramPoints(List
1 dimensions, DateTimeOffset start, DateTimeOffset end, Dictionary2 traces, List1 exemplars) in /_/src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 276 at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculateHistogramValues(List1 dimensions, Int32 pointCount, Boolean tickUpdate, DateTimeOffset inProgressDataTime, String yLabel) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 147at Aspire.Dashboard.Components.Controls.Chart.ChartBase.UpdateChartAsync(Boolean tickUpdate, DateTimeOffset inProgressDataTime) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 506
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 107
at Aspire.Dashboard.Components.PlotlyChart.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/PlotlyChart.razor.cs:line 177
fail: Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111]
Unhandled exception in circuit '2YmzVDSrBI8PnW2kK1Vw-iP_YeL1r-p14788V170uBw'.
System.AggregateException: One or more errors occurred. (Index was outside the bounds of the array.)
---> System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculatePercentile(Int32 percentile, UInt64[] counts, Double[] explicitBounds) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 346
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.TryCalculateHistogramPoints(List
1 dimensions, DateTimeOffset start, DateTimeOffset end, Dictionary2 traces, List1 exemplars) in /_/src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 276 at Aspire.Dashboard.Components.Controls.Chart.ChartBase.CalculateHistogramValues(List1 dimensions, Int32 pointCount, Boolean tickUpdate, DateTimeOffset inProgressDataTime, String yLabel) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 147at Aspire.Dashboard.Components.Controls.Chart.ChartBase.UpdateChartAsync(Boolean tickUpdate, DateTimeOffset inProgressDataTime) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 506
at Aspire.Dashboard.Components.Controls.Chart.ChartBase.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/ChartBase.cs:line 107
at Aspire.Dashboard.Components.PlotlyChart.OnAfterRenderAsync(Boolean firstRender) in //src/Aspire.Dashboard/Components/Controls/Chart/PlotlyChart.razor.cs:line 177
--- End of inner exception stack trace ---
.NET Version info
No response
Anything else?
aspire dashboard 9.0.0 (standalone)
otel java agent 2.10.0
java app - spring boot 3.4.0, temurin java 21.0.1
configured for jetty, not tomcat.