Issue 1384586 in chromium: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone

7 views
Skip to first unread message

histogram-eraser via monorail

unread,
Nov 15, 2022, 12:27:44 PM11/15/22
to crashp...@chromium.org
Status: Untriaged
Owner: ----
CC: crashp...@chromium.org, jpe...@chromium.org
Labels: Hotlist-ExpiredHistograms-CodeHealthRotation
Components: Internals>CrashReporting
Pri: 3
Type: Task

New issue 1384586 by histogra...@uma-hrd.google.com.iam.gserviceaccount.com: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586

The following histograms are marked as expired in histograms.xml but still exist in the codebase:
- Crashpad.CrashReportPending (expired as of M85)
- Crashpad.CrashReportSize (expired as of M85)
- Crashpad.CrashUpload.AttemptSuccessful (expired as of M85)
- Crashpad.CrashUpload.Skipped (expired as of M85)
- Crashpad.ExceptionCaptureResult (expired as of M90)
- Crashpad.ExceptionEncountered (expired as of 2021-08-22)
- Crashpad.HandlerLifetimeMilestone (expired as of M90)

The following code locations were found:

third_party/crashpad/crashpad/util/misc/metrics.cc:54:
UMA_HISTOGRAM_ENUMERATION("Crashpad.ExceptionEncountered",
third_party/crashpad/crashpad/util/misc/metrics.cc:64:
"Crashpad.CrashReportPending", reason, PendingReportReason::kMaxValue);
third_party/crashpad/crashpad/util/misc/metrics.cc:69:
UMA_HISTOGRAM_CUSTOM_COUNTS("Crashpad.CrashReportSize",
third_party/crashpad/crashpad/util/misc/metrics.cc:78:
UMA_HISTOGRAM_BOOLEAN("Crashpad.CrashUpload.AttemptSuccessful", successful);
third_party/crashpad/crashpad/util/misc/metrics.cc:91:
"Crashpad.CrashUpload.Skipped", reason, CrashSkippedReason::kMaxValue);
third_party/crashpad/crashpad/util/misc/metrics.cc:98:
"Crashpad.ExceptionCaptureResult", result, CaptureResult::kMaxValue);
third_party/crashpad/crashpad/util/misc/metrics.cc:114:
UMA_HISTOGRAM_ENUMERATION("Crashpad.HandlerLifetimeMilestone",

As these histograms are expired, no data for them gets collected. To reduce technical debt, the logging code for these histograms should be removed, including any supporting code. This is the recommended course of action for the majority of such histograms.

In rare cases, a histogram's code should be kept around, such as for debugging purposes. Such histograms must be clearly annotated in histograms.xml per the following instructions:
https://chromium.googlesource.com/chromium/src/+/HEAD/tools/metrics/histograms/README.md#Intentionally-expired-histograms

If you're an owner of any of the histograms, please triage this bug and either:
- Mark the bug as Available to confirm that the histograms can be removed.
- Annotate the histograms as intentionally expired (see above) and update the bug.

Available bugs will be added to the Code Health Rotation to have the code cleaned up by participants in the rotation.

If the bug is left in the Untriaged state without any activity by histogram owners, it will be marked as Available after approximately two weeks.

--
You received this message because:
1. You were specifically CC'd on the issue

You may adjust your notification preferences at:
https://bugs.chromium.org/hosting/settings

Reply to this email to add a comment or make updates.

Git Watcher via monorail

unread,
Nov 16, 2022, 1:31:18 PM11/16/22
to crashp...@chromium.org

Comment #1 on issue 1384586 by Git Watcher: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c1

The following revision refers to this bug:
https://chromium.googlesource.com/chromium/src/+/306be509ea67587caa08e554e2e8cdc1a2ef0fe2

commit 306be509ea67587caa08e554e2e8cdc1a2ef0fe2
Author: Joshua Peraza <jpe...@chromium.org>
Date: Wed Nov 16 18:29:54 2022

Intentionally expire expired Crashpad metrics

Bug: chromium:1384586
Change-Id: Ief3cb2c2f0505e64419f80cce848e002cbd64bd8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4026316
Reviewed-by: Mark Pearson <mpea...@chromium.org>
Commit-Queue: Joshua Peraza <jpe...@chromium.org>
Reviewed-by: Mark Mentovai <ma...@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1072341}

[modify] https://crrev.com/306be509ea67587caa08e554e2e8cdc1a2ef0fe2/tools/metrics/histograms/metadata/others/histograms.xml

jperaza via monorail

unread,
Nov 16, 2022, 1:36:19 PM11/16/22
to crashp...@chromium.org
Updates:
Status: Fixed

Comment #2 on issue 1384586 by jpe...@google.com: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c2

(No comment was entered for this change.)

wfh via monorail

unread,
Jan 1, 2023, 4:04:08 PM1/1/23
to crashp...@chromium.org
Updates:
Owner: w...@chromium.org
Status: Assigned

Comment #3 on issue 1384586 by w...@chromium.org: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c3

I use these metrics occasionally. I think all crashpad metrics should be permanently unexpired including but not limited to the crash size, and in particular the exception (capture) codes.

I will go through and unexpire all these.

Git Watcher via monorail

unread,
Jan 4, 2023, 2:43:10 PM1/4/23
to crashp...@chromium.org

Comment #4 on issue 1384586 by Git Watcher: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c4


The following revision refers to this bug:
https://chromium.googlesource.com/chromium/src/+/5c41ee5af6b2a698450ca2bf6f18a432a6549345

commit 5c41ee5af6b2a698450ca2bf6f18a432a6549345
Author: Will Harris <w...@chromium.org>
Date: Wed Jan 04 19:42:45 2023

Unexpire some crashpad metrics.

These metrics are used to diagnose issues seen in crashes and/or
UMA reports from users, or diagnose stability spikes in the
future.

It is not possible to know in advance when a particular issue
will require analysis of these metrics, so in the interest of
making these issues easier to diagnose, pre-emptively unexpire
these metrics.

BUG=1384586

Change-Id: I675a4608c52dc769c90ee2456cbc995216da4bef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4135073
Reviewed-by: Weilun Shi <swe...@chromium.org>
Commit-Queue: Will Harris <w...@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1088875}

[modify] https://crrev.com/5c41ee5af6b2a698450ca2bf6f18a432a6549345/tools/metrics/histograms/metadata/others/histograms.xml

alcooper via monorail

unread,
Oct 3, 2023, 5:47:22 PM10/3/23
to crashp...@chromium.org

Comment #5 on issue 1384586 by alco...@chromium.org: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c5

It looks as though `Crashpad.HandlerLifetimeMilestone` was left to expire in M90, was this an oversight or should this one be removed? (It's the only remaining one from this bug that looks to have not been set to never expire).

wfh via monorail

unread,
Oct 3, 2023, 5:50:13 PM10/3/23
to crashp...@chromium.org
Updates:
Cc: ma...@chromium.org

Comment #6 on issue 1384586 by w...@chromium.org: Remove expired histograms Crashpad.CrashReportPending, Crashpad.CrashReportSize, Crashpad.CrashUpload.AttemptSuccessful, Crashpad.CrashUpload.Skipped, Crashpad.ExceptionCaptureResult, Crashpad.ExceptionEncountered, Crashpad.HandlerLifetimeMilestone
https://bugs.chromium.org/p/chromium/issues/detail?id=1384586#c6

I don't think I look at Crashpad.HandlerLifetimeMilestone, perhaps +mark knows what this is used for?
Reply all
Reply to author
Forward
0 new messages