Commit c5514a38 authored by Sébastien Séguin-Gagnon's avatar Sébastien Séguin-Gagnon Committed by Commit Bot

[SH] Adds logging functions for link generation status and error reason.

Bug: 1136043
Change-Id: I8245fd9ad0a3242c191660a52f10c277b2ba9093
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2495912Reviewed-by: default avatarSebastien Lalancette <seblalancette@chromium.org>
Commit-Queue: sebsg <sebsg@chromium.org>
Auto-Submit: sebsg <sebsg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#820805}
parent cf4a126f
......@@ -21,6 +21,14 @@ TextFragmentLinkOpenSource GetLinkSource(const GURL& referrer) {
} // namespace
void LogLinkGenerationErrorReason(LinkGenerationError reason) {
base::UmaHistogramEnumeration("SharedHighlights.LinkGenerated.Error", reason);
}
void LogLinkGenerationStatus(bool link_generated) {
base::UmaHistogramBoolean("SharedHighlights.LinkGenerated", link_generated);
}
void LogTextFragmentAmbiguousMatch(bool ambiguous_match) {
base::UmaHistogramBoolean("TextFragmentAnchor.AmbiguousMatch",
ambiguous_match);
......@@ -48,17 +56,14 @@ void LogTextFragmentSelectorCount(int count) {
}
void LogGenerateErrorTabHidden() {
base::UmaHistogramEnumeration("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kTabHidden);
LogLinkGenerationErrorReason(LinkGenerationError::kTabHidden);
}
void LogGenerateErrorOmniboxNavigation() {
base::UmaHistogramEnumeration("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kOmniboxNavigation);
LogLinkGenerationErrorReason(LinkGenerationError::kOmniboxNavigation);
}
void LogGenerateErrorTabCrash() {
base::UmaHistogramEnumeration("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kTabCrash);
LogLinkGenerationErrorReason(LinkGenerationError::kTabCrash);
}
} // namespace shared_highlighting
......@@ -38,6 +38,12 @@ enum class TextFragmentLinkOpenSource {
kMaxValue = kSearchEngine,
};
// Records the reason why the link generation failed.
void LogLinkGenerationErrorReason(LinkGenerationError reason);
// Records whether the link generation attempt was successful or not.
void LogLinkGenerationStatus(bool link_generated);
// Records whether an individual text fragment could not be scrolled to because
// there was an |ambiguous_match| (generally because more than one matching
// passage was found).
......
......@@ -67,6 +67,51 @@ TEST(SharedHighlightingMetricsTest, LogTextFragmentSelectorCount) {
histogram_tester.ExpectTotalCount("TextFragmentAnchor.SelectorCount", 2);
}
TEST(SharedHighlightingMetricsTest, LogLinkGenerationStatus) {
base::HistogramTester histogram_tester;
LogLinkGenerationStatus(true);
histogram_tester.ExpectUniqueSample("SharedHighlights.LinkGenerated", true,
1);
LogLinkGenerationStatus(false);
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated", false,
1);
histogram_tester.ExpectTotalCount("SharedHighlights.LinkGenerated", 2);
}
TEST(SharedHighlightingMetricsTest, LogLinkGenerationErrorReason) {
base::HistogramTester histogram_tester;
LogLinkGenerationErrorReason(LinkGenerationError::kIncorrectSelector);
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kIncorrectSelector,
1);
LogLinkGenerationErrorReason(LinkGenerationError::kEmptySelection);
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kEmptySelection, 1);
histogram_tester.ExpectTotalCount("SharedHighlights.LinkGenerated.Error", 2);
}
TEST(SharedHighlightingMetricsTest, LogAndroidLinkGenerationErrorReason) {
base::HistogramTester histogram_tester;
LogGenerateErrorTabHidden();
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kTabHidden, 1);
LogGenerateErrorOmniboxNavigation();
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kOmniboxNavigation,
1);
LogGenerateErrorTabCrash();
histogram_tester.ExpectBucketCount("SharedHighlights.LinkGenerated.Error",
LinkGenerationError::kTabCrash, 1);
histogram_tester.ExpectTotalCount("SharedHighlights.LinkGenerated.Error", 3);
}
} // namespace
} // namespace shared_highlighting
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment