Skip to content

proxy.process.tunnel.current_active_connections metric only seems to count TLS tunnels. #9317

@ywkaras

Description

@ywkaras
wkaras ~/REPOS/TS2
O$ grep -F -C 9 tunnel_current_active_connections $(findsrc)
./proxy/http/HttpTunnel.cc-HttpTunnel::mark_tls_tunnel_active()
./proxy/http/HttpTunnel.cc-{
./proxy/http/HttpTunnel.cc-  _tls_tunnel_last_update = Thread::get_hrtime();
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-  if (_tls_tunnel_active) {
./proxy/http/HttpTunnel.cc-    return;
./proxy/http/HttpTunnel.cc-  }
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-  _tls_tunnel_active = true;
./proxy/http/HttpTunnel.cc:  HTTP_INCREMENT_DYN_STAT(tunnel_current_active_connections_stat);
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-  _schedule_tls_tunnel_activity_check_event();
./proxy/http/HttpTunnel.cc-}
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-void
./proxy/http/HttpTunnel.cc-HttpTunnel::mark_tls_tunnel_inactive()
./proxy/http/HttpTunnel.cc-{
./proxy/http/HttpTunnel.cc-  if (!_tls_tunnel_active) {
./proxy/http/HttpTunnel.cc-    return;
./proxy/http/HttpTunnel.cc-  }
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-  _tls_tunnel_active = false;
./proxy/http/HttpTunnel.cc:  HTTP_DECREMENT_DYN_STAT(tunnel_current_active_connections_stat);
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-  if (_tls_tunnel_activity_check_event) {
./proxy/http/HttpTunnel.cc-    _tls_tunnel_activity_check_event->cancel();
./proxy/http/HttpTunnel.cc-    _tls_tunnel_activity_check_event = nullptr;
./proxy/http/HttpTunnel.cc-  }
./proxy/http/HttpTunnel.cc-}
./proxy/http/HttpTunnel.cc-
./proxy/http/HttpTunnel.cc-void
./proxy/http/HttpTunnel.cc-HttpTunnel::_schedule_tls_tunnel_activity_check_event()
--
./proxy/http/HttpConfig.cc-  RecRegisterRawStat(http_rsb, RECT_PROCESS, "proxy.process.http.current_active_client_connections", RECD_INT, RECP_NON_PERSISTENT,
./proxy/http/HttpConfig.cc-                     (int)http_current_active_client_connections_stat, RecRawStatSyncSum);
./proxy/http/HttpConfig.cc-  HTTP_CLEAR_DYN_STAT(http_current_active_client_connections_stat);
./proxy/http/HttpConfig.cc-  RecRegisterRawStat(http_rsb, RECT_PROCESS, "proxy.process.http.websocket.current_active_client_connections", RECD_INT,
./proxy/http/HttpConfig.cc-                     RECP_NON_PERSISTENT, (int)http_websocket_current_active_client_connections_stat, RecRawStatSyncSum);
./proxy/http/HttpConfig.cc-  HTTP_CLEAR_DYN_STAT(http_websocket_current_active_client_connections_stat);
./proxy/http/HttpConfig.cc-
./proxy/http/HttpConfig.cc-  // Tunnel Stats
./proxy/http/HttpConfig.cc-  RecRegisterRawStat(http_rsb, RECT_PROCESS, "proxy.process.tunnel.current_active_connections", RECD_INT, RECP_NON_PERSISTENT,
./proxy/http/HttpConfig.cc:                     (int)tunnel_current_active_connections_stat, RecRawStatSyncSum);
./proxy/http/HttpConfig.cc:  HTTP_CLEAR_DYN_STAT(tunnel_current_active_connections_stat);
./proxy/http/HttpConfig.cc-
./proxy/http/HttpConfig.cc-  // Current Transaction Stats
./proxy/http/HttpConfig.cc-  RecRegisterRawStat(http_rsb, RECT_PROCESS, "proxy.process.http.current_client_transactions", RECD_INT, RECP_NON_PERSISTENT,
./proxy/http/HttpConfig.cc-                     (int)http_current_client_transactions_stat, RecRawStatSyncSum);
./proxy/http/HttpConfig.cc-  HTTP_CLEAR_DYN_STAT(http_current_client_transactions_stat);
./proxy/http/HttpConfig.cc-  RecRegisterRawStat(http_rsb, RECT_PROCESS, "proxy.process.http.current_server_transactions", RECD_INT, RECP_NON_PERSISTENT,
./proxy/http/HttpConfig.cc-                     (int)http_current_server_transactions_stat, RecRawStatSyncSum);
./proxy/http/HttpConfig.cc-  HTTP_CLEAR_DYN_STAT(http_current_server_transactions_stat);
./proxy/http/HttpConfig.cc-  // Total connections stats
--
./proxy/http/HttpConfig.h-
./proxy/http/HttpConfig.h-/* Instead of enumerating the stats in DynamicStats.h, each module needs
./proxy/http/HttpConfig.h-   to enumerate its stats separately and register them with librecords
./proxy/http/HttpConfig.h-   */
./proxy/http/HttpConfig.h-enum {
./proxy/http/HttpConfig.h-  http_background_fill_current_count_stat,
./proxy/http/HttpConfig.h-  http_current_client_connections_stat,
./proxy/http/HttpConfig.h-  http_current_active_client_connections_stat,
./proxy/http/HttpConfig.h-  http_websocket_current_active_client_connections_stat,
./proxy/http/HttpConfig.h:  tunnel_current_active_connections_stat,
./proxy/http/HttpConfig.h-  http_current_client_transactions_stat,
./proxy/http/HttpConfig.h-  http_total_incoming_connections_stat,
./proxy/http/HttpConfig.h-  http_current_server_transactions_stat,
./proxy/http/HttpConfig.h-  http_pooled_server_connections_stat,
./proxy/http/HttpConfig.h-
./proxy/http/HttpConfig.h-  //  Http Abort information (from HttpNetConnection)
./proxy/http/HttpConfig.h-  http_ua_msecs_counts_errors_pre_accept_hangups_stat,
./proxy/http/HttpConfig.h-
./proxy/http/HttpConfig.h-  // Http Total Connections Stats

The simplest fix would be to change the name to something like `proxy.process.tls_tunnel.current_active_connections.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions