New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 748549 link

Starred by 5 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug


Sign in to add a comment

Implement Network Error Logging

Project Member Reported by juliatut...@chromium.org, Jul 25 2017

Issue description

We should implement Network Error Logging (https://wicg.github.io/network-error-logging/), in hopes that it can eventually replace Domain Reliability.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jul 27 2017

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

commit f9b74060edac5c9ca6b9345505eb25297e9d79f4
Author: Julia Tuttle <juliatuttle@chromium.org>
Date: Thu Jul 27 14:44:05 2017

NEL: Create Delegate interface in //net/url_request, plumb headers out.

Bug: 748549
Change-Id: Ib622dda648649bbcd9d0a2f16307dc700223c068
Reviewed-on: https://chromium-review.googlesource.com/580268
Commit-Queue: Julia Tuttle <juliatuttle@chromium.org>
Reviewed-by: Miriam Gershenson <mgersh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#489921}
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/BUILD.gn
[add] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/network_error_logging_delegate.cc
[add] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/network_error_logging_delegate.h
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_context.cc
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_context.h
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_context_storage.cc
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_context_storage.h
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_http_job.cc
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_http_job.h
[modify] https://crrev.com/f9b74060edac5c9ca6b9345505eb25297e9d79f4/net/url_request/url_request_unittest.cc

Project Member

Comment 2 by bugdroid1@chromium.org, Sep 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9791cf626fb152def0887b5057edc10881b577d5

commit 9791cf626fb152def0887b5057edc10881b577d5
Author: Julia Tuttle <juliatuttle@chromium.org>
Date: Tue Sep 05 19:21:49 2017

NEL: Create skeleton of //components/network_error_logging.

Bug: 748549
Change-Id: I9dbb81c767bcaad26949843dd1b91110f29df6bd
Reviewed-on: https://chromium-review.googlesource.com/585148
Commit-Queue: Julia Tuttle <juliatuttle@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Miriam Gershenson <mgersh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499700}
[modify] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/BUILD.gn
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/BUILD.gn
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/DEPS
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/OWNERS
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/network_error_logging_export.h
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/network_error_logging_service.cc
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/network_error_logging_service.h
[add] https://crrev.com/9791cf626fb152def0887b5057edc10881b577d5/components/network_error_logging/network_error_logging_service_unittest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Sep 25 2017

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 13 2017

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

commit fadc26de4635da9d31ef25cb01b63187650a2895
Author: Julia Tuttle <juliatuttle@chromium.org>
Date: Fri Oct 13 18:12:29 2017

NEL: Actually report errors to delegate.

Bug: 748549
Change-Id: If9d3ce3caa64063948a93445aae21739a84237e5
Reviewed-on: https://chromium-review.googlesource.com/653922
Commit-Queue: Julia Tuttle <juliatuttle@chromium.org>
Reviewed-by: Miriam Gershenson <mgersh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#508757}
[modify] https://crrev.com/fadc26de4635da9d31ef25cb01b63187650a2895/net/url_request/url_request.cc
[modify] https://crrev.com/fadc26de4635da9d31ef25cb01b63187650a2895/net/url_request/url_request.h
[modify] https://crrev.com/fadc26de4635da9d31ef25cb01b63187650a2895/net/url_request/url_request_unittest.cc

Blocking: 792971
Blockedon: 792972
Blockedon: 792974
Blockedon: -792972
Blockedon: 792975
Blockedon: 792976
Blockedon: -792976
Blockedon: -792975
Blockedon: 792971 704259
Blocking: -792971
Blockedon: 792978
Blockedon: -792971
Blockedon: -792978
Blockedon: 792971
Blockedon: 792976
Blockedon: 792978
Blockedon: 793392
Blockedon: 795047
Blockedon: 803604
Project Member

Comment 23 by bugdroid1@chromium.org, Jan 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6f53eab63f1ca92461b1c9e286cdeceb7977ecad

commit 6f53eab63f1ca92461b1c9e286cdeceb7977ecad
Author: Douglas Creager <dcreager@google.com>
Date: Tue Jan 30 16:37:03 2018

Network Error Logging: Add success and failure sampling rates

There are separate sampling rates for reports about successful and
failed requests.  Even though we're not currently reporting anything for
successful requests, this plumbs through both sampling rates from the
NEL header into the OriginPolicy instance.

(A future change will add reports for successful requests; doing the
patches in this order ensures that we never upload reports for 100% of
successful requests unless specifically instructed to do so by the
origin.)

Bug: 748549
Change-Id: I66d9d0c0544372e642d3a146deb0a06f7973452d
Reviewed-on: https://chromium-review.googlesource.com/891741
Commit-Queue: Julia Tuttle <juliatuttle@chromium.org>
Reviewed-by: Julia Tuttle <juliatuttle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532911}
[modify] https://crrev.com/6f53eab63f1ca92461b1c9e286cdeceb7977ecad/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/6f53eab63f1ca92461b1c9e286cdeceb7977ecad/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/6f53eab63f1ca92461b1c9e286cdeceb7977ecad/net/network_error_logging/network_error_logging_service_unittest.cc

Blockedon: 810142
Project Member

Comment 25 by bugdroid1@chromium.org, Feb 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1f56bbedf4db521ea98bde7dd824a1b7e623ee66

commit 1f56bbedf4db521ea98bde7dd824a1b7e623ee66
Author: Douglas Creager <dcreager@google.com>
Date: Sat Feb 17 03:58:40 2018

Network Error Logging: Reports for successful requests and HTTP errors

We now generate NEL reports for successful requests, rate limited by the
`success-fraction` field of the NEL configuration header.  We have to
handle HTTP errors (i.e., those with 4xx and 5xx status codes)
specially, since they show up as "successful" according to the network
stack, but NEL considers that to be a special `http.error` failed
request.

Bug: 748549
Change-Id: I1a0a01fd52a4782855ba410be1301b0ccb81ee30
Reviewed-on: https://chromium-review.googlesource.com/893679
Commit-Queue: Douglas Creager <dcreager@google.com>
Reviewed-by: Julia Tuttle <juliatuttle@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537526}
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/network_error_logging/network_error_logging_service_unittest.cc
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/url_request/network_error_logging_delegate.cc
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/url_request/network_error_logging_delegate.h
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/url_request/url_request.cc
[modify] https://crrev.com/1f56bbedf4db521ea98bde7dd824a1b7e623ee66/net/url_request/url_request_unittest.cc

Project Member

Comment 26 by bugdroid1@chromium.org, Apr 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4467e5809ee40582965e5378d9094b4f70b7dd60

commit 4467e5809ee40582965e5378d9094b4f70b7dd60
Author: Douglas Creager <dcreager@google.com>
Date: Tue Apr 17 22:36:08 2018

Network Error Logging: Fill in protocol field

If ALPN protocol negotiation gives us an answer, use that directly;
otherwise, we assume HTTP/1.1 if any response headers were received.

Bug: 748549, 833996 
Change-Id: I33d6217ede6202358acf1a343296f5019a9b6052
Reviewed-on: https://chromium-review.googlesource.com/998021
Commit-Queue: Douglas Creager <dcreager@google.com>
Reviewed-by: Julia Tuttle <juliatuttle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551505}
[modify] https://crrev.com/4467e5809ee40582965e5378d9094b4f70b7dd60/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/4467e5809ee40582965e5378d9094b4f70b7dd60/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/4467e5809ee40582965e5378d9094b4f70b7dd60/net/network_error_logging/network_error_logging_service_unittest.cc
[modify] https://crrev.com/4467e5809ee40582965e5378d9094b4f70b7dd60/net/url_request/url_request.cc

Project Member

Comment 27 by bugdroid1@chromium.org, Apr 25 2018

Labels: merge-merged-3396
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/89ae5599653735228e61d3b4d5ec3b22537893ef

commit 89ae5599653735228e61d3b4d5ec3b22537893ef
Author: Douglas Creager <dcreager@google.com>
Date: Wed Apr 25 16:12:52 2018

Network Error Logging: Fill in protocol field

If ALPN protocol negotiation gives us an answer, use that directly;
otherwise, we assume HTTP/1.1 if any response headers were received.

Bug: 748549, 833996 
Change-Id: I33d6217ede6202358acf1a343296f5019a9b6052
Reviewed-on: https://chromium-review.googlesource.com/998021
Commit-Queue: Douglas Creager <dcreager@google.com>
Reviewed-by: Julia Tuttle <juliatuttle@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#551505}(cherry picked from commit 4467e5809ee40582965e5378d9094b4f70b7dd60)
Reviewed-on: https://chromium-review.googlesource.com/1028091
Cr-Commit-Position: refs/branch-heads/3396@{#293}
Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428}
[modify] https://crrev.com/89ae5599653735228e61d3b4d5ec3b22537893ef/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/89ae5599653735228e61d3b4d5ec3b22537893ef/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/89ae5599653735228e61d3b4d5ec3b22537893ef/net/network_error_logging/network_error_logging_service_unittest.cc
[modify] https://crrev.com/89ae5599653735228e61d3b4d5ec3b22537893ef/net/url_request/url_request.cc

Owner: dcreager@chromium.org
Project Member

Comment 29 by bugdroid1@chromium.org, Jun 18

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

commit a7c9db23267704abb0777a011873d6d7176481a6
Author: Douglas Creager <dcreager@chromium.org>
Date: Mon Jun 18 17:12:23 2018

Network Error Logging: Update payload fields to use underscores

This updates the NEL implementation to match the fields renames from
https://github.com/WICG/network-error-logging/pull/75.

Bug: 748549
Cq-Include-Trybots: luci.chromium.try:closure_compilation
Change-Id: I0545ce6f9bddb46c556e2ba15d16398ee9c3b1fa
Reviewed-on: https://chromium-review.googlesource.com/1104384
Reviewed-by: Matt Menke <mmenke@chromium.org>
Commit-Queue: Douglas Creager <dcreager@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568048}
[modify] https://crrev.com/a7c9db23267704abb0777a011873d6d7176481a6/chrome/browser/resources/net_internals/reporting_view.js
[modify] https://crrev.com/a7c9db23267704abb0777a011873d6d7176481a6/net/network_error_logging/network_error_logging_end_to_end_test.cc
[modify] https://crrev.com/a7c9db23267704abb0777a011873d6d7176481a6/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/a7c9db23267704abb0777a011873d6d7176481a6/net/network_error_logging/network_error_logging_service_unittest.cc

Blockedon: 862188
Project Member

Comment 32 by bugdroid1@chromium.org, Jul 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6edfcc42d76e7638e91ed2919dbe3d588fff1d56

commit 6edfcc42d76e7638e91ed2919dbe3d588fff1d56
Author: Douglas Creager <dcreager@chromium.org>
Date: Thu Jul 19 01:47:58 2018

Network Error Logging: Remove redundant `uri` field

Per https://github.com/w3c/network-error-logging/pull/90, a NEL report's
`url` field now contains the (sanitized) URL of the request that the
report describes.  (Before that spec update, it was supposed to contain
the URL of the page that made the request, which isn't relevant for
NEL.)  Now that the report contains the "right" URL, the NEL body's
`uri` field is redundant, and can be removed.

Bug: 748549
Change-Id: Ibd2b0213b829e94329ecc7263baecd549d41e40c
Reviewed-on: https://chromium-review.googlesource.com/1141271
Reviewed-by: Misha Efimov <mef@chromium.org>
Commit-Queue: Douglas Creager <dcreager@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576312}
[modify] https://crrev.com/6edfcc42d76e7638e91ed2919dbe3d588fff1d56/chrome/browser/net/reporting_browsertest.cc
[modify] https://crrev.com/6edfcc42d76e7638e91ed2919dbe3d588fff1d56/net/network_error_logging/network_error_logging_end_to_end_test.cc
[modify] https://crrev.com/6edfcc42d76e7638e91ed2919dbe3d588fff1d56/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/6edfcc42d76e7638e91ed2919dbe3d588fff1d56/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/6edfcc42d76e7638e91ed2919dbe3d588fff1d56/net/network_error_logging/network_error_logging_service_unittest.cc

Project Member

Comment 33 by bugdroid1@chromium.org, Aug 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/75b6486872b68e505e8ec1363e9bb4d04e722796

commit 75b6486872b68e505e8ec1363e9bb4d04e722796
Author: Douglas Creager <dcreager@chromium.org>
Date: Fri Aug 17 16:14:37 2018

Network Error Logging: Add web platform tests

This adds web-platform-tests for Network Error Logging.  They should be
suitable to upstream into the cross-platform WPT repo.

Bug: 748549
Change-Id: I24098aeec8488c34a5f9239309264e9534dca6e4
Reviewed-on: https://chromium-review.googlesource.com/1106518
Reviewed-by: Peter Beverloo <peter@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Commit-Queue: Douglas Creager <dcreager@chromium.org>
Cr-Commit-Position: refs/heads/master@{#584093}
[modify] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/content/shell/browser/shell_url_request_context_getter.cc
[modify] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/VirtualTestSuites
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/META.yml
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/README.md
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/no-report-on-failed-cors-preflight.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/no-report-on-subdomain-404.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/no-report-on-subdomain-success.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/reports-are-not-observable.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/sends-report-on-404.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/sends-report-on-subdomain-dns-failure.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/sends-report-on-success-with-subdomain-policy.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/sends-report-on-success.https.html
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/clear-policy-pass.png
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/clear-policy-pass.png.sub.headers
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/lock.py
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/nel.sub.js
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/no-policy-pass.png
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/pass.png
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/pass.png.sub.headers
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/report.py
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/subdomains-pass.png
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/external/wpt/network-error-logging/support/subdomains-pass.png.sub.headers
[add] https://crrev.com/75b6486872b68e505e8ec1363e9bb4d04e722796/third_party/WebKit/LayoutTests/virtual/network-error-logging/external/wpt/network-error-logging/README.txt

Sign in to add a comment