shill: mac80211_monitor: add metrics

Add metrics reporting, so that we know how often the mac80211
TX queues are getting stuck.

BUG=chromium:392209
TEST=unit tests

Change-Id: I56874da399ec47a19bc1ba3a3796b0a922da2ce6
Reviewed-on: https://chromium-review.googlesource.com/211707
Reviewed-by: Paul Stewart <pstew@chromium.org>
Tested-by: mukesh agrawal <quiche@chromium.org>
diff --git a/metrics.h b/metrics.h
index 4eac003..2a84b98 100644
--- a/metrics.h
+++ b/metrics.h
@@ -514,6 +514,15 @@
   static const int kMetricWifiAvailableBSSesMin;
   static const int kMetricWifiAvailableBSSesNumBuckets;
 
+  // Reason that the mac80211 TX queue is stopped.
+  static const char kMetricWifiStoppedTxQueueReason[];
+
+  // Maximal queue length amongst all stopped mac80211 TX queues.
+  static const char kMetricWifiStoppedTxQueueLength[];
+  static const int kMetricWifiStoppedTxQueueLengthMax;
+  static const int kMetricWifiStoppedTxQueueLengthMin;
+  static const int kMetricWifiStoppedTxQueueLengthNumBuckets;
+
   // Number of services associated with currently connected network.
   static const char kMetricServicesOnSameNetwork[];
   static const int kMetricServicesOnSameNetworkMax;