1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56

content / browser / devtools / devtools_background_services.proto [blame]

// 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;
}