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.
5 // Histogram-collected metrics.
9 option optimize_for = LITE_RUNTIME;
10 option java_outer_classname = "HistogramEventProtos";
11 option java_package = "org.chromium.components.metrics";
16 message HistogramEventProto {
17 // The name of the histogram, hashed.
18 optional fixed64 name_hash = 1;
20 // The sum of all the sample values.
21 // Together with the total count of the sample values, this allows us to
22 // compute the average value. The count of all sample values is just the sum
23 // of the counts of all the buckets.
24 optional int64 sum = 2;
26 // The per-bucket data.
28 // Each bucket's range is bounded by min <= x < max.
29 // It is valid to omit one of these two fields in a bucket, but not both.
30 // If the min field is omitted, its value is assumed to be equal to max - 1.
31 // If the max field is omitted, its value is assumed to be equal to the next
32 // bucket's min value (possibly computed per above). The last bucket in a
33 // histogram should always include the max field.
34 optional int64 min = 1;
35 optional int64 max = 2;
37 // The bucket's index in the list of buckets, sorted in ascending order.
38 // This field was intended to provide extra redundancy to detect corrupted
39 // records, but was never used. As of M31, it is no longer sent by Chrome
40 // clients to reduce the UMA upload size.
41 optional int32 bucket_index = 3 [deprecated = true];
43 // The number of entries in this bucket.
44 optional int64 count = 4;
46 repeated Bucket bucket = 3;