| // Copyright 2016 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; |
| |
| option java_outer_classname = "ExecutionContextProtos"; |
| option java_package = "org.chromium.components.metrics"; |
| |
| package metrics; |
| |
| // Enums corresponding to the Chrome execution context in which data was |
| // collected. |
| |
| // Chrome process type. Derived from content/public/common/process_type.h. |
| enum Process { |
| UNKNOWN_PROCESS = 0; |
| BROWSER_PROCESS = 1; |
| RENDERER_PROCESS = 2; |
| GPU_PROCESS = 3; |
| UTILITY_PROCESS = 4; |
| ZYGOTE_PROCESS = 5; |
| SANDBOX_HELPER_PROCESS = 6; |
| PPAPI_PLUGIN_PROCESS = 7; |
| PPAPI_BROKER_PROCESS = 8; |
| } |
| |
| // Chrome thread. This list is not exhaustive. |
| enum Thread { |
| UNKNOWN_THREAD = 0; |
| |
| // The 'main thread' in various processes. In browser process, this is |
| // sometimes also called the 'ui thread'. |
| MAIN_THREAD = 1; |
| |
| FILE_THREAD = 2; // Deprecated. |
| FILE_USER_BLOCKING_THREAD = 3; // Deprecated. |
| PROCESS_LAUNCHER_THREAD = 4; // Deprecated. |
| CACHE_THREAD = 5; // Deprecated. |
| |
| IO_THREAD = 6; |
| |
| DB_THREAD = 7; // Deprecated. |
| GPU_MAIN_THREAD = 8; // Deprecated. |
| RENDER_THREAD = 9; // Deprecated. |
| UTILITY_THREAD = 10; // Deprecated. |
| |
| // Compositor thread (can be in both renderer and gpu processes). |
| COMPOSITOR_THREAD = 11; |
| } |
| |
| // Process phases, or where in the lifetime of the process it is such as |
| // startup, normal operation, shutdown, etc. These don't necessarily occur in |
| // the order defined here so it's fine to add new ones to further segregrate |
| // the lifetime of a process. |
| enum ProcessPhase { |
| // The browser's main message loop has been started. |
| // Based on histogram Startup.MessageLoopStartTime |
| MAIN_LOOP_START = 0; |
| |
| // The beginning of navigation in the first web contents' main frame. |
| // Based on histogram Startup.FirstWebContents.MainNavigationStart |
| MAIN_NAVIGATION_START = 1; |
| |
| // The navigation is committed (first bytes received) in the first web |
| // contents' main frame. |
| // Based on histogram Startup.FirstWebContents.MainNavigationFinished |
| MAIN_NAVIGATION_FINISHED = 2; |
| |
| // First non-empty paint of the first web contents. |
| // Based on histogram Startup.FirstWebContents.NonEmptyPaint2 |
| FIRST_NONEMPTY_PAINT = 3; |
| |
| // Process shutdown has begun. |
| SHUTDOWN_START = 4; |
| } |