diff options
Diffstat (limited to 'net/socket/client_socket_handle.cc')
-rw-r--r-- | net/socket/client_socket_handle.cc | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/net/socket/client_socket_handle.cc b/net/socket/client_socket_handle.cc index 6e3a587..87212b1 100644 --- a/net/socket/client_socket_handle.cc +++ b/net/socket/client_socket_handle.cc @@ -75,32 +75,40 @@ void ClientSocketHandle::HandleInitCompletion(int result) { } setup_time_ = base::TimeTicks::Now() - init_time_; - std::string metric = "Net." + pool_->name() + "SocketType"; + // TODO(vandebo): bug 43375: The strings passed to HISTOGRAM macros should NOT + // vary, as the macro snapshots the name into a static. I've temporarilly + // made this code use statics so that the HISTOGRAM macro will not DCHECK (and + // this also makes the current semantics a tiny bit more clear). + static std::string metric = "Net." + pool_->name() + "SocketType"; UMA_HISTOGRAM_ENUMERATION(metric, reuse_type(), NUM_TYPES); switch (reuse_type()) { - case ClientSocketHandle::UNUSED: - metric = "Net." + pool_->name() + "SocketRequestTime"; + case ClientSocketHandle::UNUSED: { + static std::string metric = "Net." + pool_->name() + "SocketRequestTime"; UMA_HISTOGRAM_CLIPPED_TIMES(metric, setup_time(), base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(10), 100); break; - case ClientSocketHandle::UNUSED_IDLE: - metric = "Net." + pool_->name() + + } + case ClientSocketHandle::UNUSED_IDLE: { + static std::string metric = "Net." + pool_->name() + "SocketIdleTimeBeforeNextUse_UnusedSocket"; UMA_HISTOGRAM_CUSTOM_TIMES(metric, idle_time(), base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(6), 100); break; - case ClientSocketHandle::REUSED_IDLE: - metric = "Net." + pool_->name() + + } + case ClientSocketHandle::REUSED_IDLE: { + static std::string metric = "Net." + pool_->name() + "SocketIdleTimeBeforeNextUse_ReusedSocket"; UMA_HISTOGRAM_CUSTOM_TIMES(metric, idle_time(), base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(6), 100); break; - default: + } + default: { NOTREACHED(); break; + } } } |