| // Copyright 2014 The Chromium Authors. All rights reserved. |

| // Use of this source code is governed by a BSD-style license that can be |

| // found in the LICENSE file. |

| |

| syntax = "proto2"; |

| |

| option optimize_for = LITE_RUNTIME; |

| |

| option java_outer_classname = "HistogramEventProtos"; |

| option java_package = "org.chromium.components.metrics"; |

| |

| package metrics; |

| |

| // Histogram-collected metrics. |

| // Next tag: 4 |

| message HistogramEventProto { |

| // The name of the histogram, hashed. |

| optional fixed64 name_hash = 1; |

| |

| // The sum of all the sample values. |

| // Together with the total count of the sample values, this allows us to |

| // compute the average value. The count of all sample values is just the sum |

| // of the counts of all the buckets. As of M51, when the value of this field |

| // would be 0, the field will be omitted instead. |

| optional int64 sum = 2; |

| |

| // The per-bucket data. |

| message Bucket { |

| // Each bucket's range is bounded by min <= x < max. |

| // It is valid to omit one of these two fields in a bucket, but not both. |

| // If the min field is omitted, its value is assumed to be equal to max - 1. |

| // If the max field is omitted, its value is assumed to be equal to the next |

| // bucket's min value (possibly computed per above). The last bucket in a |

| // histogram should always include the max field. |

| optional int64 min = 1; |

| optional int64 max = 2; |

| |

| // The bucket's index in the list of buckets, sorted in ascending order. |

| // This field was intended to provide extra redundancy to detect corrupted |

| // records, but was never used. As of M31, it is no longer sent by Chrome |

| // clients to reduce the UMA upload size. |

| optional int32 bucket_index = 3 [deprecated = true]; |

| |

| // The number of entries in this bucket. As of M51, when the value of this |

| // field would be 1, the field will be omitted instead. |

| optional int64 count = 4 [default = 1]; |

| } |

| repeated Bucket bucket = 3; |

| } |