Clone this repo:


  1. 74f4644 DanglingPointer: annotate for unittests base+linux [3/N] by Paul Semel · 4 days ago main
  2. 6f8d5ff Add events rejection UMAs for ReportQueue by Leonid Baraz · 8 days ago
  3. 4af5d83 DanglingPointer: annotate for unittests base+linux [1/N] by Arthur Sonzogni · 8 days ago
  4. 22070eb Use std::string::append(base::StringPiece) instead of decomposing by David Benjamin · 9 days ago
  5. 82a6537 Implement token bucket rate limiter. by Leonid Baraz · 10 days ago

The Encrypted Reporting Pipeline (ERP) provides a universal method for upload of data for enterprise customers.

The code structure looks like this: Chrome:

  • //components/reporting Code shared between Chrome and Chrome OS.
  • //chrome/browser/policy/messaging_layer Code that lives only in the browser, primary interfaces for reporting data such as ReportQueueImpl and ReportQueueConfiguration. Chrome OS:
  • //platform2/missived Daemon for encryption and storage of reports.

If you'd like to begin using ERP within Chrome please check the comment in //components/reporting/client/report_queue_provider.h.

Run Unit Tests

To run the unit tests for this directory, after having configured Chromium's build environment:

  1. Run autoninja -C out/Default components_unittests to build the components unit test executable.

  2. Then, run out/Default/components_unittests --gtest_filter='<target tests>' to run relevant tests. Here, <target tests> is a wildcard pattern (refer to the document of gtest for more details). For example, to run all tests for StorageQueue, run

    $ out/Default/components_unittests --gtest_filter='*/StorageQueueTest.*'

    For another example, to run all tests in this directory, run

    $ tools/ -C out/Default --run_all components/reporting

    You can also append a filter such as --gtest_filter='*/StorageQueueTest.*' to the line above.

    Another useful flag for dealing with flaky tests is --gtest_repeat=, which repeats tests for multiple times.

    For more gtest features, check out the gtest document.