Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(126)

Unified Diff: components/browser_watcher/stability_report.proto

Issue 2327043002: A simple minidump writer for postmortem stability reports. (Closed)
Patch Set: Missed the hex number Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/browser_watcher/postmortem_minidump_writer_win_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/browser_watcher/stability_report.proto
diff --git a/components/browser_watcher/stability_report.proto b/components/browser_watcher/stability_report.proto
new file mode 100644
index 0000000000000000000000000000000000000000..0943be3db4e87a9f7e7d3a72e52a2ef34df14941
--- /dev/null
+++ b/components/browser_watcher/stability_report.proto
@@ -0,0 +1,78 @@
+// 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;
+
+package browser_watcher;
+
+// The state of the system on which Chrome is running (shutting down, battery
+// level, load, etc.).
+message SystemState {
+ // TODO(manzagop): flesh out.
+}
+
+message CodeModule {
+ // The base address of this code module as it was loaded by the process.
+ optional int64 base_address = 1;
+
+ // The size of the code module.
+ optional int64 size = 2;
+
+ // The path or file name that the code module was loaded from.
+ optional string code_file = 3;
+
+ // An identifying string used to discriminate between multiple versions and
+ // builds of the same code module. This may contain a uuid, timestamp,
+ // version number, or any combination of this or other information, in an
+ // implementation-defined format.
+ optional string code_identifier = 4;
+
+ // The filename containing debugging information associated with the code
+ // module. If debugging information is stored in a file separate from the
+ // code module itself (as is the case when .pdb or .dSYM files are used),
+ // this will be different from code_file. If debugging information is
+ // stored in the code module itself (possibly prior to stripping), this
+ // will be the same as code_file.
+ optional string debug_file = 5;
+
+ // An identifying string similar to code_identifier, but identifies a
+ // specific version and build of the associated debug file. This may be
+ // the same as code_identifier when the debug_file and code_file are
+ // identical or when the same identifier is used to identify distinct
+ // debug and code files.
+ optional string debug_identifier = 6;
+
+ // A human-readable representation of the code module's version.
+ optional string version = 7;
+}
+
+// The state of a thread.
+message ThreadState {
+ optional string thread_name = 1;
+ // TODO(manzagop): flesh out.
+}
+
+// The state of a process.
+message ProcessState {
+ // Note: likely only a subset of modules of interest (e.g. Chromium's own
+ // modules).
+ repeated CodeModule modules = 1;
+ repeated ThreadState threads = 2;
+ // TODO(manzagop): add experiment state.
+}
+
+// A stability report contains information pertaining to the execution of a
+// single logical instance of a "chrome browser". It is comprised of information
+// about the system state and about the chrome browser's processes.
+message StabilityReport {
+ optional SystemState system_state = 1;
+ // TODO(manzagop): revisit whether a single repeated field should contain all
+ // processes, or whether it's preferable to have separate fields per type.
+ // TODO(manzagop): add information about the type of process, pid, process
+ // times (e.g. start time), hierarchical relationships (e.g. parent pid),
+ // command line, etc.
+ repeated ProcessState process_states = 2;
+}
« no previous file with comments | « components/browser_watcher/postmortem_minidump_writer_win_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698