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

Side by Side Diff: components/tracing/proto/events_chunk.proto

Issue 2281903002: Tracing V2: Trace buffer writer uses proto. (Closed)
Patch Set: 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 syntax = "proto2"; 5 syntax = "proto2";
6 option optimize_for = LITE_RUNTIME; 6 option optimize_for = LITE_RUNTIME;
7 7
8 package tracing.proto; 8 package tracing.proto;
9 9
10 // An EventsChunk is a fixed portion of the trace ring buffer which is written 10 // An EventsChunk is a fixed portion of the trace ring buffer which is written
11 // exclusively by one writer (almost always 1 writer == 1 thread). It contains 11 // exclusively by one writer (almost always 1 writer == 1 thread). It contains
12 // a variable number of variable-sized events. Events can be fragmented across 12 // a variable number of variable-sized events. Events can be fragmented across
13 // several chunks. 13 // several chunks.
14
14 message EventsChunk { 15 message EventsChunk {
15 // Chunks produced by the same trace writer have the same writer_id. This 16 // Chunks produced by the same trace writer have the same writer_id. This
16 // allows to identify the next chunk for a writer (thread) in the ring buffer. 17 // allows to identify the next chunk for a writer (thread) in the ring buffer.
17 optional uint32 writer_id = 1; 18 optional uint32 writer_id = 1;
18 19
19 // A monotonic counter within the writer, to establish sequencing of chunks. 20 // A monotonic counter within the writer, to establish sequencing of chunks.
20 optional uint32 seq_id = 2; 21 optional uint32 seq_id = 2;
21 22
22 // Each event is a byte sequence that encapsulates the bytes for a single 23 // Each event is a byte sequence that encapsulates the bytes for a single
23 // Event (see event.proto) or an incomplete fragment. 24 // Event (see event.proto) or an incomplete fragment.
24 // Why this isn't just a "repeated Events" field? An Event can spawn across 25 // Why this isn't just a "repeated Events" field? An Event can spawn across
25 // several chunks. In this case the reader has to first glue the byte 26 // several chunks. In this case the reader has to first glue the byte
26 // sequences together and then process the event. 27 // sequences together and then process the event.
27 repeated bytes events = 3; 28 repeated bytes events = 3;
28 29
29 // The first entry of |events| is a fragment which continues from the previous 30 // The first entry of |events| is a fragment which continues from the previous
30 // chunk. 31 // chunk.
31 optional bool first_event_continues_from_prev_chunk = 4; 32 optional bool first_event_continues_from_prev_chunk = 4;
32 33
33 // The last entry of |events| is a fragment and contiues into the next chunk. 34 // The last entry of |events| is a fragment and contiues into the next chunk.
34 optional bool last_event_continues_on_next_chunk = 5; 35 optional bool last_event_continues_on_next_chunk = 5;
35 } 36 }
OLDNEW
« components/tracing/proto/BUILD.gn ('K') | « components/tracing/proto/event.proto ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698