-
Notifications
You must be signed in to change notification settings - Fork 462
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Trace timeline seems wrong #841
Comments
What does "seems wrong" mean? Can you provide more details? |
My bad. I was into the flow and the wrongness seemed clear to me. This is the public async Task<ActionResult> OnGetAsync(CancellationToken cancellationToken)
{
var something = await adminApi.Http.GetFromJsonAsync<Something>($"endpoint1", cancellationToken);
if (provider is null)
{
return NotFound();
}
Something = something;
Something2s = await adminApi.Http.GetFromJsonAsync<Something2[]>($"endpoint2", cancellationToken);
Something3s = await adminApi.Http.GetFromJsonAsync<Something3[]>($"endpoint3", cancellationToken);
Something4s = await adminApi.Http.GetFromJsonAsync<Something4[]>($"endpoint4", cancellationToken);
return Page();
} Given this snippet, I had the assumption that the trace timeline had the following characteristics:
Here is my wonderful ASCII representation.
I hope this is clearer. |
No the trace looks correct to me, you have one parent, the incoming request, and 4 sibling requests (endpoints 1 to 4). Each of those have one child. Edit: The first request does look strange. cc @JamesNK |
To me also the right part of the time diagram (the bars). the name column looks correct. |
@JamesNK thoughts? |
I agree it's odd. One possibility: You can have a situation where the root span for a trace isn't available yet, which means results can be unexpected. For example:
In the time period after 3, but before 4, there are child spans in the trace without a root span. It can look like a trace has multiple root spans. However, I don't think that is the issue because the first two HTTP call spans are nested under the Another possibility is different apps have different clocks. I haven't seen that issue ever, and I don't think it is the case here because the TLDR; I don't know. I'd be interested if there is a reproduction that I could look at. |
I was hoping to get out a full representation of the whole trace but couldn't find how. (maybe a feature?) Anyway, clicking on each row on the name column I got the following information (which confirms my hypothesis that the timeline graph is wrong)
This is the timeline I got passing this data to GPT 4 |
@JamesNK @danmoseley @davidfowl |
I'll put something together! |
@DamianEdwards could you share your repro? I tried running a "dotnet new aspire-starter" application and I got this timeline. See the first line. repro: $ md Aspire2
$ cd Aspire2
$ dotnet new aspire-starter
$ dotnet run --project .\Aspire2.AppHost\ |
Is it possible this is a localization issue with the trace store sorting? I note that your culture is using |
I'm guessing the problem is here:
The |
@kvenkatrajan would be good to get this one fixed in preview 2 |
A page in a Razor Web app calls different endpoints of the same API.
The trace timeline seems wrong.
The text was updated successfully, but these errors were encountered: