| // Copyright 2019 The Chromium Authors | |
| // 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 content.devtools.proto; | |
| // The background service we are logging events for. | |
| // Do not change the tags since these are persisted. | |
| // Add a corresponding entry in `enums.xml` if a new value is introduced. | |
| enum BackgroundService { | |
| UNKNOWN = 0; | |
| TEST_BACKGROUND_SERVICE = 1; | |
| BACKGROUND_FETCH = 2; | |
| BACKGROUND_SYNC = 3; | |
| PUSH_MESSAGING = 4; | |
| NOTIFICATIONS = 5; | |
| PAYMENT_HANDLER = 6; | |
| PERIODIC_BACKGROUND_SYNC = 7; | |
| // Keep as last, must have the largest tag value. | |
| COUNT = 8; | |
| } | |
| // A proto for storing the background service event with common metadata for | |
| // all events. | |
| // | |
| // Next Tag: 9 | |
| message BackgroundServiceEvent { | |
| // Microseconds since windows epoch. | |
| optional int64 timestamp = 1; | |
| // The origin's URL spec. | |
| optional string origin = 2; | |
| optional int64 service_worker_registration_id = 3; | |
| optional BackgroundService background_service = 4; | |
| // A descriptive name for the event that is being logged. | |
| optional string event_name = 5; | |
| // The instance this event belongs to. This is for grouping related events. | |
| // For example for Background Fetch and Background Sync, this would be the | |
| // developer provided ID to create the fetch/sync. | |
| optional string instance_id = 6; | |
| // Additional custom information related to this event. | |
| map<string, string> event_metadata = 7; | |
| // Storage key the background service belongs to. | |
| optional string storage_key = 8; | |
| } |