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
Incorporating feedback from TAG review #32
Comments
For v1: Params: Examples:
Devtools and performance analytics scripts need only visualize those entries that contain a Note: Because
For v2: Params: Examples:
Devtools and performance analytics scripts need only visualize those entries that contain a Note: For v3: Params: |
Based on offline discussions @ BlinkOn, v1 sgtm — |
TAG took another look at this in Nice:
In general, we're really happy that you were able to accommodate our earlier feedback and we think this will be a great benefit to developers. Thanks! |
I think we should allow all named params (including duration - for consistency) to be optionally wrapped in DQUOTES. Best I can tell, that's analogous to the LINK header.
|
Please ignore the specific syntax rules in RFC 5988; it's going to be obsoleted any day now: https://tools.ietf.org/html/draft-nottingham-rfc5988bis-08 |
With #37 landed, can we resolve this? |
Future considerations enumerated here. |
Following the TAG review and a meeting which discussed that feedback (and after discussing this more with @cvazac), a few points were raised where the current specification doesn't cover significant use-cases and doesn't lend itself to be extensible in a reasonable way:
Going back to the use cases, I think we need to expand on them and make sure the potential use-cases are either covered, or can be easily and naturally covered by future extensions of the API.
Such potential use-cases that we thought of include:
So, in order to make the syntax more extensible, it might be worthwhile to go back to something slightly like @reschke's proposal and enable multiple parameters.
Maybe something like:
Server-Timing: name="response-head"; duration=10; start=5; description="Response head sending"; server="django"
Server-Timing: name="response-body"; duration=50; start=130; description="Response body sending"; server="django"
Server-Timing: name="db-query"; duration=115; start=15; description="DB query"; server="django"
Server-Timing: name="response"; start=7; duration=190; description="Overall response time"; server="nginx"
The above will enable us to tell the visualizer the "story" of the request: the Web server's overall sending time was 190ms where the first byte was received and sent to the user after 7ms. On the application server however, we saw early flush of the head, followed by a DB query, followed by sending of the body.
Such a parameterized approach will also enable us to later on add parameters such as
bytes
,bool
,string
,blob
, etc in a backwards-compatible way./cc @igrigorik @triblondon @slightlyoff
The text was updated successfully, but these errors were encountered: