-
Notifications
You must be signed in to change notification settings - Fork 845
Description
Motivation
ATS has ton of http metrics which are started with proxy.process.http. Current master branch has 252 metrics. Some of them are HTTP version specific and others are not. It’s pretty hard to distinguish which metrics are HTTP version specific or not.
After HTTP/2 implementation is introduced, this issue is pointed out and fixed intermittently. But we haven't have good naming rule or strategy.
Solution
- Define
proxy.process.http.is HTTP version general metrics. - Introduce
proxy.process.http1.*metrics for HTTP/1.1 specific metrics. - Split general metric into version specific metrics if needed.
Scope
For the first step, I’d like to focus on incoming connections and transactions. When we introduce new HTTP base protocols on outgoing connections, we’ll need to do similar things, but it’s out of scope at this time.
Details
Please look at below table for which metric need to be changed.
https://docs.google.com/spreadsheets/d/1zux3OPiDNJlWALluhr8ciKypg_sYVxbG9fdmeuDD-Bo/edit?usp=sharing
Downside
This obviously break compatibility. Rename bunch of metrics. To keep compatibility, we should not remove deprecated metrics until next major release (9.x)