-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Refactor UI to internally use the v2 model #2217
Comments
Hi, |
I will try start this by changing the UI logic step-by-step to eventually use v2 data:
|
one interesting design luck is that in the current UI we are a little inefficient. We make one traces api query for the index, then redundantly make a trace api query to show the trace view. A better UI will reuse the same data. However when we are porting logic, this is a bit lucky. Since each screen uses a different api, I can break one screen and not break the other one. For example, I can port the search screen to use v2 without touching the trace view screen. |
Another thing to consider. We should have stub/mock data that includes some interesting traces:
This way we can validate the UI behavior without being data dependent, even if that is visually comparing. |
The trace summary screen and individual trace screens are served by different data. At the moment, offsets are not considered when computing the trace duration broken down by service. Maybe it should be, but removing clock skew makes migration to v2 simpler and we can then revisit this logic. See #2217
sample data is now in. I will do the trace summary screen conversion to v2 first as it is simplest and decoupled from the trace view one |
The trace summary screen and individual trace screens are served by different data. At the moment, offsets are not considered when computing the trace duration broken down by service. Maybe it should be, but removing clock skew makes migration to v2 simpler and we can then revisit this logic. See #2217
This is the last step where the UI no longer uses any v1 types. What it does now is a dual-pass where at first v2 spans are collected into events such that spans that share an ID can be in the same row. After that, it decorates them with positional details, such as where to put annotations or how wide the span line should be. fixes #2217
This is the last step where the UI no longer uses any v1 types. What it does now is a dual-pass where at first v2 spans are collected into events such that spans that share an ID can be in the same row. After that, it decorates them with positional details, such as where to put annotations or how wide the span line should be. fixes #2217
The trace summary screen and individual trace screens are served by different data. At the moment, offsets are not considered when computing the trace duration broken down by service. Maybe it should be, but removing clock skew makes migration to v2 simpler and we can then revisit this logic. See openzipkin#2217
This is the last step where the UI no longer uses any v1 types. What it does now is a dual-pass where at first v2 spans are collected into events such that spans that share an ID can be in the same row. After that, it decorates them with positional details, such as where to put annotations or how wide the span line should be. fixes openzipkin#2217
Right now, we pull data in v2 format #1802, but we still operate on it in v1.
The text was updated successfully, but these errors were encountered: