> The proxy.process.https stats (only 2 stats) should also be considered
when overhauling the stats.  They are really TLS or non-TLS stats and not
tied to the scheme. I recommend breaking up TLS and non-TLS metric and
calling them proxy.process.ssl. and proxy.process.non-ssl.

Good point. I didn't cover them.

Do you mean breaking every `proxy.process.{http,http1,http2}.*` metrics
into `proxy.process.ssl.{http,http1,http2}.*` and
`proxy.process.non-ssl.{http,http1}.*` ?

If we add `encryption`, why don't we add all transport protocols? I’d like
to avoid exposing underlying protocols on every metrics.
It looks like we're interested in underlying protocol stack on *some*
metrics but not on all. Also I'd like to minimize incompatible changes.

# As for `proxy.process.https.total_client_connections`

This is a counter for "HTTP/1.1 over TLS". We have similar metrics.
```
proxy.process.http.total_client_connections
proxy.process.http.total_client_connections_ipv4
proxy.process.http.total_client_connections_ipv6
```

All of them are HTTP/1.1 specific, so how about this changes?

```
proxy.process.http1.total_client_connections
proxy.process.http1.total_client_connections.ipv4
proxy.process.http1.total_client_connections.ipv6
proxy.process.http1.total_client_connections.tls
```

I agree it's bit weird, but if someone want to break them up more, he or
she can do that add the protocol stack at the last later.

```
proxy.process.http1.total_client_connections.ipv4
proxy.process.http1.total_client_connections.ipv4_tls
proxy.process.http1.total_client_connections.ipv6
proxy.process.http1.total_client_connections.ipv6_tls
```

# As for `proxy.process.https.incoming_requests`

This is a count for HTTP request over TLS (regardless HTTP version).
And non-encrypted version is `proxy.process.http.incoming_requests`

To follow above changes, I suggest

```
proxy.process.http.incoming_requests
proxy.process.http.incoming_requests.tls
```

Thanks,
Masaori

2018年10月17日(水) 6:25 Susan Hinrichs <shinr...@oath.com.invalid>:

> I completely agree with the stats re-normalizing.  I've been messed up
> multiple times by assuming that a http metric covers both protocols but was
> in fact http/1.x specific.
>
> On Tue, Oct 16, 2018 at 12:44 PM Bryan Call <bc...@apache.org> wrote:
>
> > The proxy.process.https stats (only 2 stats) should also be considered
> > when overhauling the stats.  They are really TLS or non-TLS stats and not
> > tied to the scheme.  I recommend breaking up TLS and non-TLS metric and
> > calling them proxy.process.ssl. and proxy.process.non-ssl.
> >
> > Another option to build a hierarchy of stats and have it be
> > proxy.process.encryption.http_version.scheme (e.g.
> > proxy.process.{ssl,non-ssl}.{http1,http2}.{http,https}). Where scheme I
> > don’t see being used very much or at all, so it would only be mainly
> > encryption and http_version.  For http2 encryption would always be ssl.
> >
> > Also, I would be for modernizing the stats and configuration and calling
> > everything tls instead of ssl.
> >
> > -Bryan
> >
> >
> >
> > On Oct 15, 2018, at 7:23 PM, Masaori Koshiba <masa...@apache.org> wrote:
> >
> > Hi all,
> >
> > I’d like to propose some HTTP metrics changes. Because current HTTP
> > metrics doesn’t have consistent naming rules.
> >
> > ----
> > 1. Define `proxy.process.http.*` is HTTP version general metrics.
> > 2. Introduce `proxy.process.http1.*` metrics for HTTP/1.1 specific
> metrics.
> > 3. Split general metric into version specific metrics if needed.
> > ----
> >
> > More details are in
> > - https://github.com/apache/trafficserver/issues/4415
> > -
> >
> https://docs.google.com/spreadsheets/d/1zux3OPiDNJlWALluhr8ciKypg_sYVxbG9fdmeuDD-Bo/edit?usp=sharing
> >
> > My proposal has incompatible changes. And it requires some actions to
> > people who is tracking these metrics.
> > Please comment on the issue or this thread if you have any opinions.
> >
> > My current target of these incompatible changes are next major release
> > (9.0.0).
> >
> > Thanks,
> > Masaori
> >
> >
> >
>

Reply via email to