Update mojo sdk to rev c02a28868825edfa57ab77947b8cb15e741c5598
[chromium-blink-merge.git] / components / rappor / proto / rappor_metric.proto
blobc1d9cbf313ee850ec65f6ace2c52704095036ea1
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 //
5 // Contains information collected by the RAPPOR (Randomized Aggregatable
6 // Privacy-Preserving Ordinal Responses) system.
7 //
8 // For a full description of the rappor metrics, see
9 // http://www.chromium.org/developers/design-documents/rappor
11 syntax = "proto2";
13 option optimize_for = LITE_RUNTIME;
15 package rappor;
17 // Next tag: 3
18 message RapporReports {
19   // Which cohort these reports belong to.  The RAPPOR participants are
20   // partioned into cohorts in different ways, to allow better statistics and
21   // increased coverage.  In particular, the cohort will serve to choose the
22   // hash functions used for Bloom-filter-based reports.  The cohort is
23   // generated randomly by the client and is currently in the range [0,512).
24   // Was in range [0,32) in chrome versions before M37.
25   optional int32 cohort = 1;
27   // Each Report contains the values generated by the RAPPOR process for one
28   // metric.
29   message Report {
30     // The name of the metric, hashed (first 8 bytes of MD5 hash).
31     optional fixed64 name_hash = 1;
33     // The sequence of bits produced by random coin flips in
34     // RapporMetric::GetReport().  For a complete description of RAPPOR
35     // metrics, refer to the design document at:
36     // http://www.chromium.org/developers/design-documents/rappor
37     optional bytes bits = 2;
38   }
39   repeated Report report = 2;