blob: 7cb0e8c6da077bd64ac35440086a439b654141b9 [file] [log] [blame]
// 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.
//
// Histogram-collected metrics.
syntax = "proto2";
option optimize_for = LITE_RUNTIME;
package 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.
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.
optional int64 count = 4;
}
repeated Bucket bucket = 3;
}