// Copyright (c) 2012 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; }