blob: 4305a515c58359ef9583bde245c5c37e1d3c6256 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
syntax = "proto3";
package spark;
option java_package = "me.lucko.spark.proto";
option java_outer_classname = "SparkProtos";
message CommandSenderMetadata {
Type type = 1;
string name = 2;
string unique_id = 3;
enum Type {
OTHER = 0;
PLAYER = 1;
}
}
message MemoryUsage {
int64 used = 1;
int64 committed = 2;
int64 max = 3;
}
message PlatformMetadata {
Type type = 1;
string name = 2;
string version = 3;
string minecraft_version = 4; // optional
int32 n_cpus = 5;
MemoryUsage heapUsage = 6;
int32 spark_version = 7;
enum Type {
SERVER = 0;
CLIENT = 1;
PROXY = 2;
}
}
message HeapData {
HeapMetadata metadata = 1;
repeated HeapEntry entries = 2;
}
message HeapMetadata {
CommandSenderMetadata creator = 1;
PlatformMetadata platform_metadata = 2;
}
message HeapEntry {
int32 order = 1;
int32 instances = 2;
int64 size = 3;
string type = 4;
}
message SamplerData {
SamplerMetadata metadata = 1;
repeated ThreadNode threads = 2;
map<string, string> class_sources = 3; // optional
}
message SamplerMetadata {
CommandSenderMetadata creator = 1;
int64 start_time = 2;
int32 interval = 3;
ThreadDumper thread_dumper = 4;
DataAggregator data_aggregator = 5;
string comment = 6;
PlatformMetadata platform_metadata = 7;
message ThreadDumper {
Type type = 1;
repeated int64 ids = 2; // optional
repeated string patterns = 3; // optional
enum Type {
ALL = 0;
SPECIFIC = 1;
REGEX = 2;
}
}
message DataAggregator {
Type type = 1;
ThreadGrouper thread_grouper = 2;
int64 tick_length_threshold = 3; // optional
enum Type {
SIMPLE = 0;
TICKED = 1;
}
enum ThreadGrouper {
BY_NAME = 0;
BY_POOL = 1;
AS_ONE = 2;
}
}
}
message StackTraceNode {
double time = 1;
repeated StackTraceNode children = 2;
string class_name = 3;
string method_name = 4;
int32 parent_line_number = 5; // optional
int32 line_number = 6; // optional
string method_desc = 7; // optional
}
message ThreadNode {
string name = 1;
double time = 2;
repeated StackTraceNode children = 3;
}
|