| OLD | NEW |
| (Empty) | |
| 1 syntax = "proto2"; |
| 2 option optimize_for = LITE_RUNTIME; |
| 3 |
| 4 import "event_args_simple.proto"; |
| 5 import "event_args_test.proto"; |
| 6 |
| 7 package tracing; |
| 8 |
| 9 message Event { |
| 10 enum Type { |
| 11 COMPLETE = 1; |
| 12 DURATION_BEGIN = 2; |
| 13 DURATION_END = 3; |
| 14 }; |
| 15 |
| 16 required Type type = 1; |
| 17 |
| 18 // Key of the category in the header dictionary (id -> string). |
| 19 // This is an efficient (deduplicated) representation of the |
| 20 // category strings (“v8”, “cc”, etc.) |
| 21 optional uint32 category_id = 2; |
| 22 |
| 23 // The same logic applies to name_id. The difference here is that |
| 24 // in some rare cases (TRACE_STR_COPY) the name might be inlined |
| 25 // in the event. |
| 26 oneof name { |
| 27 uint32 name_id = 3; |
| 28 string name_str = 4; |
| 29 } |
| 30 |
| 31 // Override pid, only if different from the pid in the |
| 32 // chunk header |
| 33 optional uint32 process_id = 5; |
| 34 |
| 35 // Override tid, only if different from the tid in the |
| 36 // chunk header. |
| 37 optional uint32 thread_id = 6; |
| 38 |
| 39 // Omitted in most cases. Is used to disambiguate some events |
| 40 // (e.g. counters). It is NOT required to be unique per trace, |
| 41 // just unique per begin/end event pair. |
| 42 optional uint64 id = 7; |
| 43 optional string scope = 8; |
| 44 |
| 45 // timestamp(NOW) - timestamp(chunk). |
| 46 optional int64 timestamp = 9; |
| 47 optional int64 thread_timestamp = 10; |
| 48 |
| 49 // (thread) duration for COMPLETE (and similar) events. |
| 50 optional int64 duration = 11; |
| 51 optional int64 thread_duration = 12; |
| 52 |
| 53 // All the possible event args type are listed here. |
| 54 oneof args { |
| 55 EventArgsSimple args_simple = 15; |
| 56 EventArgsTest args_test = 16; |
| 57 } |
| 58 } |
| OLD | NEW |