| // Copyright 2017 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; |
| |
| package ukm; |
| |
| // Next tag: 8 |
| message Aggregate { |
| // The id of the Source this Event is associated with. If this is zero |
| // then it's an aggregate across all sources. |
| optional int64 source_id = 1; |
| |
| // Type of the Event. This is a hash of the name (as a string). |
| optional fixed64 event_hash = 2; |
| |
| // The total number of times this source/event was observed. |
| optional uint64 total_count = 3; |
| |
| // The total number of times this source/event was dropped due to limits. |
| optional uint64 dropped_due_to_limits = 4; |
| |
| // The total number of times this source/event was dropped due to sampling. |
| optional uint64 dropped_due_to_sampling = 5; |
| |
| // The total number of times this source/event was dropped due to whitelist. |
| optional uint64 dropped_due_to_whitelist = 7; |
| |
| // For each Event, we have a list of possible metrics included. Metric names |
| // cannot be repeated. There is no guarentee that all metrics that are |
| // possible for a given event will be included in a single Aggregate. |
| message Metric { |
| // The hash of the metric's name. |
| optional fixed64 metric_hash = 1; |
| |
| // The sum of all the values seen for this metric. |
| optional double value_sum = 2; |
| |
| // The sum of all the squared-values seen for this metric. |
| optional double value_square_sum = 3; |
| |
| // Overrides of values given above if different for this specific metric. |
| optional uint64 total_count = 4; |
| optional uint64 dropped_due_to_limits = 5; |
| optional uint64 dropped_due_to_sampling = 6; |
| optional uint64 dropped_due_to_whitelist = 7; |
| } |
| repeated Metric metrics = 6; |
| } |