blob: 382506375b9f99eb389ea0d439efa290f2ee20e3 [file] [log] [blame]
Bertrand SIMONNET52e5b992015-08-10 15:18:00 -07001/*
2 * Copyright (C) 2015 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
Bertrand SIMONNETc95440e2015-07-16 17:16:51 -070016//
17// Histogram-collected metrics.
18
19syntax = "proto2";
20
21option optimize_for = LITE_RUNTIME;
22option java_outer_classname = "HistogramEventProtos";
23option java_package = "org.chromium.components.metrics";
24
25package metrics;
26
27// Next tag: 4
28message HistogramEventProto {
29 // The name of the histogram, hashed.
30 optional fixed64 name_hash = 1;
31
32 // The sum of all the sample values.
33 // Together with the total count of the sample values, this allows us to
34 // compute the average value. The count of all sample values is just the sum
35 // of the counts of all the buckets.
36 optional int64 sum = 2;
37
38 // The per-bucket data.
39 message Bucket {
40 // Each bucket's range is bounded by min <= x < max.
41 // It is valid to omit one of these two fields in a bucket, but not both.
42 // If the min field is omitted, its value is assumed to be equal to max - 1.
43 // If the max field is omitted, its value is assumed to be equal to the next
44 // bucket's min value (possibly computed per above). The last bucket in a
45 // histogram should always include the max field.
46 optional int64 min = 1;
47 optional int64 max = 2;
48
49 // The bucket's index in the list of buckets, sorted in ascending order.
50 // This field was intended to provide extra redundancy to detect corrupted
51 // records, but was never used. As of M31, it is no longer sent by Chrome
52 // clients to reduce the UMA upload size.
53 optional int32 bucket_index = 3 [deprecated = true];
54
55 // The number of entries in this bucket.
56 optional int64 count = 4;
57 }
58 repeated Bucket bucket = 3;
59}