// 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; option java_package = "org.chromium.components.metrics"; option java_outer_classname = "TraceLogProtos"; package metrics; // The trace data is collected by Chrome tracing infrastructure to obtain a // timeline model of events occurring in all Chrome processes and threads. // Chrome uploads data as a serialized perfetto trace message. The proto format // is defined in perfetto tracing library in // //src/third_party/perfetto/protos/perfetto/trace/trace.proto // Wrapper for the uploaded trace data, and parsed trace as stored in the logs. // Next ID: 6 message TraceLog { // Client uploads the trace data as a byte buffer. optional bytes raw_data = 1; reserved 3; enum CompressionType { COMPRESSION_TYPE_NONE = 0; COMPRESSION_TYPE_ZLIB = 1; } // Some clients compress trace data before upload. // If this field has a value other than COMPRESSION_TYPE_NONE, |raw_data| // will contain the compressed trace. optional CompressionType compression_type = 5 [default = COMPRESSION_TYPE_NONE]; }