Add UMA for available memory when a renderer hangs
(cherry picked from commit c83e90371d9acce84204d7319a2f15d8a7001388)
Bug: 934317
Change-Id: I495d6dd94ede0d56a3619245d2b3866eb03ac718
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1652430
Commit-Queue: Clark DuVall <cduvall@chromium.org>
Commit-Queue: Steven Holte <holte@chromium.org>
Auto-Submit: Clark DuVall <cduvall@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#667826}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1655972
Reviewed-by: Clark DuVall <cduvall@chromium.org>
Cr-Commit-Position: refs/branch-heads/3809@{#252}
Cr-Branched-From: d82dec1a818f378c464ba307ddd9c92133eac355-refs/heads/master@{#665002}
diff --git a/components/metrics/stability_metrics_helper.cc b/components/metrics/stability_metrics_helper.cc
index fbbb316..5e4499d 100644
--- a/components/metrics/stability_metrics_helper.cc
+++ b/components/metrics/stability_metrics_helper.cc
@@ -12,6 +12,7 @@
#include "base/metrics/histogram_functions.h"
#include "base/metrics/histogram_macros.h"
#include "base/metrics/user_metrics.h"
+#include "base/system/sys_info.h"
#include "build/build_config.h"
#include "build/buildflag.h"
#include "components/metrics/metrics_pref_names.h"
@@ -335,6 +336,9 @@
app_state == base::android::APPLICATION_STATE_HAS_PAUSED_ACTIVITIES;
UMA_HISTOGRAM_BOOLEAN("ChildProcess.HungRendererInForeground", is_foreground);
#endif
+ UMA_HISTOGRAM_MEMORY_MB(
+ "ChildProcess.HungRendererAvailableMemoryMB",
+ base::SysInfo::AmountOfAvailablePhysicalMemory() / 1024 / 1024);
IncrementPrefValue(prefs::kStabilityRendererHangCount);
}
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml
index cf5eb11..12104265 100644
--- a/tools/metrics/histograms/histograms.xml
+++ b/tools/metrics/histograms/histograms.xml
@@ -16490,6 +16490,16 @@
</summary>
</histogram>
+<histogram name="ChildProcess.HungRendererAvailableMemoryMB" units="MB"
+ expires_after="M79">
+ <owner>cduvall@chromium.org</owner>
+ <owner>cmumford@chromium.org</owner>
+ <summary>
+ The amount of avaiable memory when a renderer hangs. Recorded for every
+ renderer hang.
+ </summary>
+</histogram>
+
<histogram name="ChildProcess.HungRendererCause"
enum="RendererUnresponsiveCause" expires_after="M74">
<obsolete>