| // 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. |
| // |
| // Protocol buffer for Chrome UMA (User Metrics Analysis). |
| // |
| // Note: this protobuf must be compatible with the one in chromium. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| option java_outer_classname = "ChromeUserMetricsExtensionProtos"; |
| option java_package = "org.chromium.components.metrics"; |
| |
| package metrics; |
| |
| import "histogram_event.proto"; |
| import "system_profile.proto"; |
| import "user_action_event.proto"; |
| |
| // Next tag: 13 |
| message ChromeUserMetricsExtension { |
| // The product (i.e. end user application) for a given UMA log. |
| enum Product { |
| // Google Chrome product family. |
| CHROME = 0; |
| } |
| // The product corresponding to this log. The field type is int32 instead of |
| // Product so that downstream users of the Chromium metrics component can |
| // introduce products without needing to make changes to the Chromium code |
| // (though they still need to add the new product to the server-side enum). |
| // Note: The default value is Chrome, so Chrome products will not transmit |
| // this field. |
| optional int32 product = 10 [default = 0]; |
| |
| // The id of the client install that generated these events. |
| // |
| // For Chrome clients, this id is unique to a top-level (one level above the |
| // "Default" directory) Chrome user data directory [1], and so is shared among |
| // all Chrome user profiles contained in this user data directory. |
| // An id of 0 is reserved for test data (monitoring and internal testing) and |
| // should normally be ignored in analysis of the data. |
| // [1] http://www.chromium.org/user-experience/user-data-directory |
| optional fixed64 client_id = 1; |
| |
| // The session id for this user. |
| // Values such as tab ids are only meaningful within a particular session. |
| // The client keeps track of the session id and sends it with each event. |
| // The session id is simply an integer that is incremented each time the user |
| // relaunches Chrome. |
| optional int32 session_id = 2; |
| |
| // Information about the user's browser and system configuration. |
| optional SystemProfileProto system_profile = 3; |
| |
| // This message will log one or more of the following event types: |
| repeated UserActionEventProto user_action_event = 4; |
| repeated HistogramEventProto histogram_event = 6; |
| |
| } |