observability: allow Span with key for hotkey detection #3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hotkey detection can now be performed on your backend
by corelating a specific key with a latency.
A hotkey is one that causes a pathologic system
response time e.g. if the key "foo" causes
the system to return in 10ms yet every other
key returns in about 570us.
With a sufficiently expressive filtering backend,
you can ask for the hotest key i.e. with the most
latency.
The last problem though is that we aren't tracking
their frequencies, but that perhaps isn't the point
of tracking hotkeys and has no relation.
The key to filter on is "key" and we can further
drill down by "command" since that's another tag
that's used.
The risk here though is increased latency.
Sample visualization on Stackdriver Monitoring
![screen shot 2018-07-12 at 11 26 47 pm](https://user-images.githubusercontent.com/4898263/42673976-18c0c26e-862b-11e8-9ac3-4fed81782507.png)