Home | History | Annotate | Download | only in shill

Lines Matching refs:Metrics

17 #include "shill/metrics.h"
27 #include <metrics/bootstat.h>
41 static string ObjectID(const Metrics* m) { return "(metrics)"; }
56 const char Metrics::kMetricDisconnectSuffix[] = "Disconnect";
57 const int Metrics::kMetricDisconnectMax = 2;
58 const int Metrics::kMetricDisconnectMin = 1;
59 const int Metrics::kMetricDisconnectNumBuckets = 3;
61 const char Metrics::kMetricSignalAtDisconnectSuffix[] = "SignalAtDisconnect";
62 const int Metrics::kMetricSignalAtDisconnectMin = 0;
63 const int Metrics::kMetricSignalAtDisconnectMax = 200;
64 const int Metrics::kMetricSignalAtDisconnectNumBuckets = 40;
66 const char Metrics::kMetricNetworkApModeSuffix[] = "ApMode";
67 const char Metrics::kMetricNetworkChannelSuffix[] = "Channel";
68 const int Metrics::kMetricNetworkChannelMax = Metrics::kWiFiChannelMax;
69 const char Metrics::kMetricNetworkEapInnerProtocolSuffix[] = "EapInnerProtocol";
70 const int Metrics::kMetricNetworkEapInnerProtocolMax =
71 Metrics::kEapInnerProtocolMax;
72 const char Metrics::kMetricNetworkEapOuterProtocolSuffix[] = "EapOuterProtocol";
73 const int Metrics::kMetricNetworkEapOuterProtocolMax =
74 Metrics::kEapOuterProtocolMax;
75 const char Metrics::kMetricNetworkPhyModeSuffix[] = "PhyMode";
76 const int Metrics::kMetricNetworkPhyModeMax = Metrics::kWiFiNetworkPhyModeMax;
77 const char Metrics::kMetricNetworkSecuritySuffix[] = "Security";
78 const int Metrics::kMetricNetworkSecurityMax = Metrics::kWiFiSecurityMax;
79 const char Metrics::kMetricNetworkServiceErrors[] =
81 const char Metrics::kMetricNetworkSignalStrengthSuffix[] = "SignalStrength";
82 const int Metrics::kMetricNetworkSignalStrengthMax = 200;
83 const int Metrics::kMetricNetworkSignalStrengthMin = 0;
84 const int Metrics::kMetricNetworkSignalStrengthNumBuckets = 40;
87 Metrics::kMetricRememberedSystemWiFiNetworkCountBySecurityModeFormat[];
89 Metrics::kMetricRememberedUserWiFiNetworkCountBySecurityModeFormat[];
91 const char Metrics::kMetricRememberedWiFiNetworkCount[] =
93 const int Metrics::kMetricRememberedWiFiNetworkCountMax = 1024;
94 const int Metrics::kMetricRememberedWiFiNetworkCountMin = 0;
95 const int Metrics::kMetricRememberedWiFiNetworkCountNumBuckets = 32;
97 const char Metrics::kMetricTimeOnlineSecondsSuffix[] = "TimeOnline";
98 const int Metrics::kMetricTimeOnlineSecondsMax = 8 * 60 * 60; // 8 hours
99 const int Metrics::kMetricTimeOnlineSecondsMin = 1;
101 const char Metrics::kMetricTimeToConnectMillisecondsSuffix[] = "TimeToConnect";
102 const int Metrics::kMetricTimeToConnectMillisecondsMax =
104 const int Metrics::kMetricTimeToConnectMillisecondsMin = 1;
105 const int Metrics::kMetricTimeToConnectMillisecondsNumBuckets = 60;
107 const char Metrics::kMetricTimeToScanAndConnectMillisecondsSuffix[] =
110 const char Metrics::kMetricTimeToDropSeconds[] = "Network.Shill.TimeToDrop";;
111 const int Metrics::kMetricTimeToDropSecondsMax = 8 * 60 * 60; // 8 hours
112 const int Metrics::kMetricTimeToDropSecondsMin = 1;
114 const char Metrics::kMetricTimeToDisableMillisecondsSuffix[] = "TimeToDisable";
115 const int Metrics::kMetricTimeToDisableMillisecondsMax =
117 const int Metrics::kMetricTimeToDisableMillisecondsMin = 1;
118 const int Metrics::kMetricTimeToDisableMillisecondsNumBuckets = 60;
120 const char Metrics::kMetricTimeToEnableMillisecondsSuffix[] = "TimeToEnable";
121 const int Metrics::kMetricTimeToEnableMillisecondsMax =
123 const int Metrics::kMetricTimeToEnableMillisecondsMin = 1;
124 const int Metrics::kMetricTimeToEnableMillisecondsNumBuckets = 60;
126 const char Metrics::kMetricTimeToInitializeMillisecondsSuffix[] =
128 const int Metrics::kMetricTimeToInitializeMillisecondsMax =
130 const int Metrics::kMetricTimeToInitializeMillisecondsMin = 1;
131 const int Metrics::kMetricTimeToInitializeMillisecondsNumBuckets = 30;
133 const char Metrics::kMetricTimeResumeToReadyMillisecondsSuffix[] =
135 const char Metrics::kMetricTimeToConfigMillisecondsSuffix[] = "TimeToConfig";
136 const char Metrics::kMetricTimeToJoinMillisecondsSuffix[] = "TimeToJoin";
137 const char Metrics::kMetricTimeToOnlineMillisecondsSuffix[] = "TimeToOnline";
138 const char Metrics::kMetricTimeToPortalMillisecondsSuffix[] = "TimeToPortal";
140 const char Metrics::kMetricTimeToScanMillisecondsSuffix[] = "TimeToScan";
141 const int Metrics::kMetricTimeToScanMillisecondsMax = 180 * 1000; // 3 minutes
142 const int Metrics::kMetricTimeToScanMillisecondsMin = 1;
143 const int Metrics::kMetricTimeToScanMillisecondsNumBuckets = 90;
145 const int Metrics::kTimerHistogramMillisecondsMax = 45 * 1000;
146 const int Metrics::kTimerHistogramMillisecondsMin = 1;
147 const int Metrics::kTimerHistogramNumBuckets = 50;
149 const char Metrics::kMetricPortalAttemptsSuffix[] = "PortalAttempts";
150 const int Metrics::kMetricPortalAttemptsMax =
152 const int Metrics::kMetricPortalAttemptsMin = 1;
153 const int Metrics::kMetricPortalAttemptsNumBuckets =
154 Metrics::kMetricPortalAttemptsMax;
156 const char Metrics::kMetricPortalAttemptsToOnlineSuffix[] =
158 const int Metrics::kMetricPortalAttemptsToOnlineMax = 100;
159 const int Metrics::kMetricPortalAttemptsToOnlineMin = 1;
160 const int Metrics::kMetricPortalAttemptsToOnlineNumBuckets = 10;
162 const char Metrics::kMetricPortalResultSuffix[] = "PortalResult";
164 const char Metrics::kMetricFrequenciesConnectedEver[] =
166 const int Metrics::kMetricFrequenciesConnectedMax = 50;
167 const int Metrics::kMetricFrequenciesConnectedMin = 1;
168 const int Metrics::kMetricFrequenciesConnectedNumBuckets = 50;
170 const char Metrics::kMetricScanResult[] =
172 const char Metrics::kMetricWiFiScanTimeInEbusyMilliseconds[] =
175 const char Metrics::kMetricTerminationActionTimeTaken[] =
177 const char Metrics::kMetricTerminationActionResult[] =
179 const int Metrics::kMetricTerminationActionTimeTakenMillisecondsMax = 20000;
180 const int Metrics::kMetricTerminationActionTimeTakenMillisecondsMin = 1;
182 const char Metrics::kMetricSuspendActionTimeTaken[] =
184 const char Metrics::kMetricSuspendActionResult[] =
186 const int Metrics::kMetricSuspendActionTimeTakenMillisecondsMax = 20000;
187 const int Metrics::kMetricSuspendActionTimeTakenMillisecondsMin = 1;
189 const char Metrics::kMetricDarkResumeActionTimeTaken[] =
191 const char Metrics::kMetricDarkResumeActionResult[] =
193 const int Metrics::kMetricDarkResumeActionTimeTakenMillisecondsMax = 20000;
194 const int Metrics::kMetricDarkResumeActionTimeTakenMillisecondsMin = 1;
195 const char Metrics::kMetricDarkResumeUnmatchedScanResultReceived[] =
198 const char Metrics::kMetricWakeOnWiFiFeaturesEnabledState[] =
200 const char Metrics::kMetricVerifyWakeOnWiFiSettingsResult[] =
202 const char Metrics::kMetricWiFiConnectionStatusAfterWake[] =
204 const char Metrics::kMetricWakeOnWiFiThrottled[] =
206 const char Metrics::kMetricWakeReasonReceivedBeforeOnDarkResume[] =
208 const char Metrics::kMetricDarkResumeWakeReason[] =
210 const char Metrics::kMetricDarkResumeScanType[] =
212 const char Metrics::kMetricDarkResumeScanRetryResult[] =
214 const char Metrics::kMetricDarkResumeScanNumRetries[] =
216 const int Metrics::kMetricDarkResumeScanNumRetriesMax = 20;
217 const int Metrics::kMetricDarkResumeScanNumRetriesMin = 0;
220 const char Metrics::kMetricServiceFixupEntriesSuffix[] = "ServiceFixupEntries";
223 const uint16_t Metrics::kWiFiBandwidth5MHz = 5;
224 const uint16_t Metrics::kWiFiBandwidth20MHz = 20;
225 const uint16_t Metrics::kWiFiFrequency2412 = 2412;
226 const uint16_t Metrics::kWiFiFrequency2472 = 2472;
227 const uint16_t Metrics::kWiFiFrequency2484 = 2484;
228 const uint16_t Metrics::kWiFiFrequency5170 = 5170;
229 const uint16_t Metrics::kWiFiFrequency5180 = 5180;
230 const uint16_t Metrics::kWiFiFrequency5230 = 5230;
231 const uint16_t Metrics::kWiFiFrequency5240 = 5240;
232 const uint16_t Metrics::kWiFiFrequency5320 = 5320;
233 const uint16_t Metrics::kWiFiFrequency5500 = 5500;
234 const uint16_t Metrics::kWiFiFrequency5700 = 5700;
235 const uint16_t Metrics::kWiFiFrequency5745 = 5745;
236 const uint16_t Metrics::kWiFiFrequency5825 = 5825;
239 const char Metrics::kMetricPowerManagerKey[] = "metrics";
242 const char Metrics::kMetricLinkMonitorFailureSuffix[] = "LinkMonitorFailure";
243 const char Metrics::kMetricLinkMonitorResponseTimeSampleSuffix[] =
245 const int Metrics::kMetricLinkMonitorResponseTimeSampleMin = 0;
246 const int Metrics::kMetricLinkMonitorResponseTimeSampleMax =
248 const int Metrics::kMetricLinkMonitorResponseTimeSampleNumBuckets = 50;
249 const char Metrics::kMetricLinkMonitorSecondsToFailureSuffix[] =
251 const int Metrics::kMetricLinkMonitorSecondsToFailureMin = 0;
252 const int Metrics::kMetricLinkMonitorSecondsToFailureMax = 7200;
253 const int Metrics::kMetricLinkMonitorSecondsToFailureNumBuckets = 50;
254 const char Metrics::kMetricLinkMonitorBroadcastErrorsAtFailureSuffix[] =
256 const char Metrics::kMetricLinkMonitorUnicastErrorsAtFailureSuffix[] =
258 const int Metrics::kMetricLinkMonitorErrorCountMin = 0;
259 const int Metrics::kMetricLinkMonitorErrorCountMax =
261 const int Metrics::kMetricLinkMonitorErrorCountNumBuckets =
265 const char Metrics::kMetricLinkClientDisconnectReason[] =
267 const char Metrics::kMetricLinkApDisconnectReason[] =
269 const char Metrics::kMetricLinkClientDisconnectType[] =
271 const char Metrics::kMetricLinkApDisconnectType[] =
275 const char Metrics::kMetricCellular3GPPRegistrationDelayedDrop[] =
277 const char Metrics::kMetricCellularAutoConnectTries[] =
279 const int Metrics::kMetricCellularAutoConnectTriesMax = 20;
280 const int Metrics::kMetricCellularAutoConnectTriesMin = 1;
281 const int Metrics::kMetricCellularAutoConnectTriesNumBuckets = 20;
282 const char Metrics::kMetricCellularAutoConnectTotalTime[] =
284 const int Metrics::kMetricCellularAutoConnectTotalTimeMax =
286 const int Metrics::kMetricCellularAutoConnectTotalTimeMin = 0;
287 const int Metrics::kMetricCellularAutoConnectTotalTimeNumBuckets = 60;
288 const char Metrics::kMetricCellularDrop[] =
292 const char Metrics::kMetricCellularFailure[] =
294 const int Metrics::kMetricCellularConnectionFailure = 0;
295 const int Metrics::kMetricCellularDisconnectionFailure = 1;
296 const int Metrics::kMetricCellularMaxFailure =
299 const char Metrics::kMetricCellularOutOfCreditsReason[] =
301 const char Metrics::kMetricCellularSignalStrengthBeforeDrop[] =
303 const int Metrics::kMetricCellularSignalStrengthBeforeDropMax = 100;
304 const int Metrics::kMetricCellularSignalStrengthBeforeDropMin = 0;
305 const int Metrics::kMetricCellularSignalStrengthBeforeDropNumBuckets = 10;
308 const char Metrics::kMetricCorruptedProfile[] =
312 const char Metrics::kMetricVpnDriver[] =
314 const int Metrics::kMetricVpnDriverMax = Metrics::kVpnDriverMax;
315 const char Metrics::kMetricVpnRemoteAuthenticationType[] =
317 const int Metrics::kMetricVpnRemoteAuthenticationTypeMax =
318 Metrics::kVpnRemoteAuthenticationTypeMax;
319 const char Metrics::kMetricVpnUserAuthenticationType[] =
321 const int Metrics::kMetricVpnUserAuthenticationTypeMax =
322 Metrics::kVpnUserAuthenticationTypeMax;
324 const char Metrics::kMetricExpiredLeaseLengthSecondsSuffix[] =
326 const int Metrics::kMetricExpiredLeaseLengthSecondsMax =
328 const int Metrics::kMetricExpiredLeaseLengthSecondsMin = 1;
329 const int Metrics::kMetricExpiredLeaseLengthSecondsNumBuckets =
330 Metrics::kMetricExpiredLeaseLengthSecondsMax;
333 const char Metrics::kMetricWifiAutoConnectableServices[] =
335 const int Metrics::kMetricWifiAutoConnectableServicesMax = 50;
336 const int Metrics::kMetricWifiAutoConnectableServicesMin = 1;
337 const int Metrics::kMetricWifiAutoConnectableServicesNumBuckets = 10;
340 const char Metrics::kMetricWifiAvailableBSSes[] =
342 const int Metrics::kMetricWifiAvailableBSSesMax = 50;
343 const int Metrics::kMetricWifiAvailableBSSesMin = 1;
344 const int Metrics::kMetricWifiAvailableBSSesNumBuckets = 10;
347 const char Metrics::kMetricWifiStoppedTxQueueReason[] =
352 const char Metrics::kMetricWifiStoppedTxQueueLength[] =
354 const int Metrics::kMetricWifiStoppedTxQueueLengthMax = 10000;
355 const int Metrics::kMetricWifiStoppedTxQueueLengthMin = 1;
356 const int Metrics::kMetricWifiStoppedTxQueueLengthNumBuckets = 50;
359 const char Metrics::kMetricServicesOnSameNetwork[] =
361 const int Metrics::kMetricServicesOnSameNetworkMax = 20;
362 const int Metrics::kMetricServicesOnSameNetworkMin = 1;
363 Metrics::kMetricServicesOnSameNetworkNumBuckets = 10;
366 const char Metrics::kMetricUserInitiatedEvents[] =
370 const char Metrics::kMetricWifiTxBitrate[] =
372 const int Metrics::kMetricWifiTxBitrateMax = 7000;
373 const int Metrics::kMetricWifiTxBitrateMin = 1;
374 const int Metrics::kMetricWifiTxBitrateNumBuckets = 100;
377 const char Metrics::kMetricWifiUserInitiatedConnectionResult[] =
381 const char Metrics::kMetricWifiUserInitiatedConnectionFailureReason[] =
385 const char Metrics::kMetricFallbackDNSTestResultSuffix[] =
389 const char Metrics::kMetricNetworkProblemDetectedSuffix[] =
393 const char Metrics::kMetricDeviceConnectionStatus[] =
397 const char Metrics::kMetricDhcpClientStatus[] =
401 const char Metrics::kMetricDhcpClientMTUValue[] =
403 const char Metrics::kMetricPPPMTUValue[] = "Network.Shill.PPPMTUValue";
406 const char Metrics::kMetricNetworkConnectionIPTypeSuffix[] =
410 const char Metrics::kMetricIPv6ConnectivityStatusSuffix[] =
414 const char Metrics::kMetricDevicePresenceStatusSuffix[] =
418 const char Metrics::kMetricDeviceRemovedEvent[] =
422 const char Metrics::kMetricConnectionDiagnosticsIssue[] =
426 const char Metrics::kMetricUnreliableLinkSignalStrengthSuffix[] =
428 const int Metrics::kMetricSerivceSignalStrengthMin = 0;
429 const int Metrics::kMetricServiceSignalStrengthMax = 100;
430 const int Metrics::kMetricServiceSignalStrengthNumBuckets = 40;
432 Metrics::Metrics(EventDispatcher* dispatcher)
452 Metrics::~Metrics() {}
455 Metrics::WiFiChannel Metrics::WiFiFrequencyToChannel(uint16_t frequency) {
505 Metrics::WiFiSecurity Metrics::WiFiSecurityStringToEnum(
525 Metrics::WiFiApMode Metrics::WiFiApModeStringToEnum(const string& ap_mode) {
536 Metrics::EapOuterProtocol Metrics::EapOuterProtocolStringToEnum(
552 Metrics::EapInnerProtocol Metrics::EapInnerProtocolStringToEnum(
578 Metrics::PortalResult Metrics::PortalDetectionResultToEnum(
641 void Metrics::Start() {
645 void Metrics::Stop() {
649 void Metrics::RegisterService(const Service& service) {
658 void Metrics::DeregisterService(const Service& service) {
662 void Metrics::AddServiceStateTransitionTimer(
688 void Metrics::NotifyDefaultServiceChanged(const Service* service) {
729 void Metrics::NotifyServiceStateChanged(const Service& service,
761 string Metrics::GetFullMetricName(const char* metric_suffix,
769 void Metrics::NotifyServiceDisconnect(const Service& service) {
779 void Metrics::NotifySignalAtDisconnect(const Service& service,
781 // Negate signal_strength (goes from dBm to -dBm) because the metrics don't
793 void Metrics::NotifySuspendDone() {
797 void Metrics::NotifyWakeOnWiFiFeaturesEnabledState(
803 void Metrics::NotifyVerifyWakeOnWiFiSettingsResult(
809 void Metrics::NotifyConnectedToServiceAfterWake(
815 void Metrics::NotifyTerminationActionsStarted() {
821 void Metrics::NotifyTerminationActionsCompleted(bool success) {
846 void Metrics::NotifySuspendActionsStarted() {
853 void Metrics::NotifySuspendActionsCompleted(bool success) {
881 void Metrics::NotifyDarkResumeActionsStarted() {
889 void Metrics::NotifyDarkResumeActionsCompleted(bool success) {
926 void Metrics::NotifyDarkResumeInitiateScan() {
930 void Metrics::NotifyDarkResumeScanResultsReceived() {
934 void Metrics::NotifyLinkMonitorFailure(
972 void Metrics::NotifyLinkMonitorResponseTimeSampleAdded(
986 // Metrics::WiFiStatusType, to remove dependency for IEEE_80211.
987 void Metrics::Notify80211Disconnect(WiFiDisconnectByWhom by_whom,
1021 void Metrics::RegisterDevice(int interface_index,
1086 bool Metrics::IsDeviceRegistered(int interface_index,
1097 void Metrics::DeregisterDevice(int interface_index) {
1108 void Metrics::NotifyDeviceInitialized(int interface_index) {
1117 void Metrics::NotifyDeviceEnableStarted(int interface_index) {
1124 void Metrics::NotifyDeviceEnableFinished(int interface_index) {
1133 void Metrics::NotifyDeviceDisableStarted(int interface_index) {
1140 void Metrics::NotifyDeviceDisableFinished(int interface_index) {
1149 void Metrics::NotifyDeviceScanStarted(int interface_index) {
1157 void Metrics::NotifyDeviceScanFinished(int interface_index) {
1163 // Don't send TimeToScan metrics if the elapsed time exceeds the max metrics
1173 void Metrics::ResetScanTimer(int interface_index) {
1180 void Metrics::NotifyDeviceConnectStarted(int interface_index,
1196 void Metrics::NotifyDeviceConnectFinished(int interface_index) {
1225 void Metrics::ResetConnectTimer(int interface_index) {
1233 void Metrics::Notify3GPPRegistrationDelayedDropPosted() {
1239 void Metrics::Notify3GPPRegistrationDelayedDropCanceled() {
1245 void Metrics::NotifyCellularDeviceDrop(const string& network_technology,
1279 void Metrics::NotifyCellularDeviceConnectionFailure() {
1285 void Metrics::NotifyCellularDeviceDisconnectionFailure() {
1291 void Metrics::NotifyCellularOutOfCredits(
1292 Metrics::CellularOutOfCreditsReason reason) {
1298 void Metrics::NotifyCorruptedProfile() {
1304 void Metrics::NotifyWifiAutoConnectableServices(int num_services) {
1312 void Metrics::NotifyWifiAvailableBSSes(int num_bss) {
1320 void Metrics::NotifyServicesOnSameNetwork(int num_services) {
1328 void Metrics::NotifyUserInitiatedEvent(int event) {
1334 void Metrics::NotifyWifiTxBitrate(int bitrate) {
1342 void Metrics::NotifyUserInitiatedConnectionResult(const string& name,
1349 void Metrics::NotifyUserInitiatedConnectionFailureReason(
1392 void Metrics::NotifyFallbackDNSTestResult(Technology::Identifier technology_id,
1401 void Metrics::NotifyNetworkProblemDetected(Technology::Identifier technology_id,
1410 void Metrics::NotifyDeviceConnectionStatus(ConnectionStatus status) {
1414 void Metrics::NotifyDhcpClientStatus(DhcpClientStatus status) {
1418 void Metrics::NotifyNetworkConnectionIPType(
1425 void Metrics::NotifyIPv6ConnectivityStatus(Technology::Identifier technology_id,
1434 void Metrics::NotifyDevicePresenceStatus(Technology::Identifier technology_id,
1443 void Metrics::NotifyDeviceRemovedEvent(Technology::Identifier technology_id) {
1465 void Metrics::NotifyUnreliableLinkSignalStrength(
1476 bool Metrics::SendEnumToUMA(const string& name, int sample, int max) {
1482 bool Metrics::SendToUMA(const string& name, int sample, int min, int max,
1489 bool Metrics::SendSparseToUMA(const string& name, int sample) {
1495 void Metrics::NotifyWakeOnWiFiThrottled() {
1499 void Metrics::NotifySuspendWithWakeOnWiFiEnabledDone() {
1507 void Metrics::NotifyWakeupReasonReceived() { wake_reason_received_ = true; }
1511 // Metrics::DarkResumeWakeReason, to remove the dependency for WakeOnWiFi.
1513 void Metrics::NotifyWakeOnWiFiOnDarkResume(
1543 void Metrics::NotifyScanStartedInDarkResume(bool is_active_scan) {
1549 void Metrics::NotifyDarkResumeScanRetry() {
1553 void Metrics::NotifyBeforeSuspendActions(bool is_connected,
1564 void Metrics::NotifyConnectionDiagnosticsIssue(const string& issue) {
1615 void Metrics::InitializeCommonServiceMetrics(const Service& service) {
1640 void Metrics::UpdateServiceStateTransitionMetrics(
1661 void Metrics::SendServiceFailure(const Service& service) {
1738 Metrics::DeviceMetrics* Metrics::GetDeviceMetrics(int interface_index) const {
1749 void Metrics::AutoConnectMetricsReset(DeviceMetrics* device_metrics) {
1754 void Metrics::set_library(MetricsLibraryInterface* library) {