Commit 05045156 authored by Lily Chen's avatar Lily Chen Committed by Commit Bot

Add histogram for SameSite attribute of a SameParty cookie

This adds a histogram to log the SameSite attribute on every attempt to
create a SameParty cookie.

Bug: 1142606
Change-Id: Ic63373aea2916ea3d9c9c666880535b05a3031ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2510492Reviewed-by: default avatarMaksim Orlovich <morlovich@chromium.org>
Reviewed-by: default avatarAlexei Svitkine <asvitkine@chromium.org>
Commit-Queue: Lily Chen <chlily@chromium.org>
Cr-Commit-Position: refs/heads/master@{#822820}
parent 39b503c6
......@@ -414,7 +414,8 @@ std::unique_ptr<CanonicalCookie> CanonicalCookie::Create(
CookieSameSiteString samesite_string = CookieSameSiteString::kUnspecified;
CookieSameSite samesite = parsed_cookie.SameSite(&samesite_string);
RecordCookieSameSiteAttributeValueHistogram(samesite_string);
RecordCookieSameSiteAttributeValueHistogram(samesite_string,
parsed_cookie.IsSameParty());
CookieSourceScheme source_scheme = url.SchemeIsCryptographic()
? CookieSourceScheme::kSecure
: CookieSourceScheme::kNonSecure;
......
......@@ -4,6 +4,7 @@
#include "net/cookies/cookie_constants.h"
#include "base/metrics/histogram_functions.h"
#include "base/metrics/histogram_macros.h"
#include "base/notreached.h"
#include "base/strings/string_util.h"
......@@ -97,8 +98,13 @@ CookieSameSite StringToCookieSameSite(const std::string& same_site,
return samesite;
}
void RecordCookieSameSiteAttributeValueHistogram(CookieSameSiteString value) {
void RecordCookieSameSiteAttributeValueHistogram(CookieSameSiteString value,
bool is_cookie_same_party) {
UMA_HISTOGRAM_ENUMERATION("Cookie.SameSiteAttributeValue", value);
if (is_cookie_same_party) {
base::UmaHistogramEnumeration(
"Cookie.SamePartyCookieSameSiteAttributeValue", value);
}
}
} // namespace net
......@@ -116,7 +116,8 @@ StringToCookieSameSite(const std::string& same_site,
CookieSameSiteString* samesite_string = nullptr);
NET_EXPORT void RecordCookieSameSiteAttributeValueHistogram(
CookieSameSiteString value);
CookieSameSiteString value,
bool is_cookie_same_party = false);
} // namespace net
......
......@@ -236,8 +236,19 @@ reviews. Googlers can read more about this at go/gwsq-gerrit.
</summary>
</histogram>
<histogram name="Cookie.SamePartyCookieSameSiteAttributeValue"
enum="CookieSameSiteString" expires_after="2021-11-01">
<owner>chlily@chromium.org</owner>
<owner>kaustubhag@chromium.org</owner>
<summary>
The value of a SameParty cookie's SameSite attribute, if any. This is logged
once per attempt to create a SameParty cookie, regardless of success, upon
parsing of the SameSite attribute from a string.
</summary>
</histogram>
<histogram name="Cookie.SameSiteAttributeValue" enum="CookieSameSiteString"
expires_after="M90">
expires_after="2021-11-01">
<owner>chlily@chromium.org</owner>
<owner>bingler@chromium.org</owner>
<summary>
......
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