Bug 1423989: Add telemetry probe to measure the time spent finding the UIA client; r=Jamie, r=francois
authorAaron Klotz <aklotz@mozilla.com>
Mon, 04 Dec 2017 17:56:45 -0700
changeset 396004 a2403602d9b0c17ab9ac69f10911fe79f06fdbac
parent 396003 990365a457ca22d2bd6a031f973393dc7a158964
child 396005 d47afd9b9df22cb39eac5a93e81691e81b2029f5
push id98227
push useraklotz@mozilla.com
push dateSun, 10 Dec 2017 23:10:28 +0000
treeherdermozilla-inbound@a2403602d9b0 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersJamie, francois
bugs1423989
milestone59.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1423989: Add telemetry probe to measure the time spent finding the UIA client; r=Jamie, r=francois MozReview-Commit-ID: 7Z9Ay3TiHjH
accessible/windows/msaa/CompatibilityUIA.cpp
toolkit/components/telemetry/Histograms.json
--- a/accessible/windows/msaa/CompatibilityUIA.cpp
+++ b/accessible/windows/msaa/CompatibilityUIA.cpp
@@ -67,16 +67,18 @@ Maybe<DWORD> Compatibility::sUiaRemotePi
 Maybe<bool>
 Compatibility::OnUIAMessage(WPARAM aWParam, LPARAM aLParam)
 {
   Maybe<DWORD>& remotePid = sUiaRemotePid;
   auto clearUiaRemotePid = MakeScopeExit([&remotePid]() {
     remotePid = Nothing();
   });
 
+  Telemetry::AutoTimer<Telemetry::A11Y_UIA_DETECTION_TIMING_MS> timer;
+
   static auto pNtQuerySystemInformation =
     reinterpret_cast<decltype(&::NtQuerySystemInformation)>(
       ::GetProcAddress(::GetModuleHandleW(L"ntdll.dll"),
                        "NtQuerySystemInformation"));
 
   static auto pNtQueryObject =
     reinterpret_cast<decltype(&::NtQueryObject)>(
       ::GetProcAddress(::GetModuleHandleW(L"ntdll.dll"), "NtQueryObject"));
--- a/toolkit/components/telemetry/Histograms.json
+++ b/toolkit/components/telemetry/Histograms.json
@@ -27,16 +27,27 @@
   },
   "A11Y_IATABLE_USAGE_FLAG": {
     "record_in_processes": ["main"],
     "expires_in_version": "default",
     "kind": "flag",
     "description": "Flag indicating the IAccessibleTable accessibility interface has been used.",
     "alert_emails": ["accessibility@mozilla.com"]
   },
+  "A11Y_UIA_DETECTION_TIMING_MS" : {
+    "record_in_processes": ["main"],
+    "expires_in_version": "60",
+    "kind": "exponential",
+    "high": 60000,
+    "n_buckets": 20,
+    "keyed": false,
+    "description": "The amount of time the parent process blocked while detecting a UIA client.",
+    "bug_numbers": [1423989],
+    "alert_emails": ["dbolter@mozilla.com"]
+  },
   "ADDON_CONTENT_POLICY_SHIM_BLOCKING_LOADING_MS": {
     "record_in_processes": ["main", "content"],
     "expires_in_version": "58",
     "kind": "exponential",
     "high": 60000,
     "n_buckets": 20,
     "keyed": true,
     "description": "The amount of time the content process blocked processing shouldLoad shims for an add-on (keyed by add-on ID) prior to the load event, for each document load.",