This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-goapi.git
The following commit(s) were added to refs/heads/main by this push:
new af3e2df Sync protocol for Off CPU profiling (#40)
af3e2df is described below
commit af3e2df60bce8ed3c465618d1ba3c15594c3543a
Author: mrproliu <[email protected]>
AuthorDate: Wed May 18 14:39:10 2022 +0800
Sync protocol for Off CPU profiling (#40)
---
collect/ebpf/profiling/v3/Profile.pb.go | 245 +++++++++++++++++++++++---------
dependencies.sh | 4 +-
query/schema.go | 47 +++++-
3 files changed, 224 insertions(+), 72 deletions(-)
diff --git a/collect/ebpf/profiling/v3/Profile.pb.go
b/collect/ebpf/profiling/v3/Profile.pb.go
index b5056f4..65cb388 100644
--- a/collect/ebpf/profiling/v3/Profile.pb.go
+++ b/collect/ebpf/profiling/v3/Profile.pb.go
@@ -152,6 +152,7 @@ type EBPFProfilingData struct {
//
// Types that are assignable to Profiling:
// *EBPFProfilingData_OnCPU
+ // *EBPFProfilingData_OffCPU
Profiling isEBPFProfilingData_Profiling `protobuf_oneof:"profiling"`
}
@@ -208,6 +209,13 @@ func (x *EBPFProfilingData) GetOnCPU() *EBPFOnCPUProfiling
{
return nil
}
+func (x *EBPFProfilingData) GetOffCPU() *EBPFOffCPUProfiling {
+ if x, ok := x.GetProfiling().(*EBPFProfilingData_OffCPU); ok {
+ return x.OffCPU
+ }
+ return nil
+}
+
type isEBPFProfilingData_Profiling interface {
isEBPFProfilingData_Profiling()
}
@@ -216,8 +224,14 @@ type EBPFProfilingData_OnCPU struct {
OnCPU *EBPFOnCPUProfiling
`protobuf:"bytes,2,opt,name=onCPU,proto3,oneof"`
}
+type EBPFProfilingData_OffCPU struct {
+ OffCPU *EBPFOffCPUProfiling
`protobuf:"bytes,3,opt,name=offCPU,proto3,oneof"`
+}
+
func (*EBPFProfilingData_OnCPU) isEBPFProfilingData_Profiling() {}
+func (*EBPFProfilingData_OffCPU) isEBPFProfilingData_Profiling() {}
+
type EBPFProfilingTaskMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -416,6 +430,72 @@ func (x *EBPFOnCPUProfiling) GetDumpCount() int32 {
return 0
}
+type EBPFOffCPUProfiling struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // stack data in one task(thread)
+ Stacks []*EBPFProfilingStackMetadata
`protobuf:"bytes,1,rep,name=stacks,proto3" json:"stacks,omitempty"`
+ // total count of the process is switched to off cpu by the scheduler.
+ SwitchCount int32 `protobuf:"varint,2,opt,name=switchCount,proto3"
json:"switchCount,omitempty"`
+ // where time(nanoseconds) is spent waiting while blocked on I/O,
locks, timers, paging/swapping, etc.
+ Duration int64 `protobuf:"varint,3,opt,name=duration,proto3"
json:"duration,omitempty"`
+}
+
+func (x *EBPFOffCPUProfiling) Reset() {
+ *x = EBPFOffCPUProfiling{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ebpf_profiling_Profile_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EBPFOffCPUProfiling) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EBPFOffCPUProfiling) ProtoMessage() {}
+
+func (x *EBPFOffCPUProfiling) ProtoReflect() protoreflect.Message {
+ mi := &file_ebpf_profiling_Profile_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EBPFOffCPUProfiling.ProtoReflect.Descriptor instead.
+func (*EBPFOffCPUProfiling) Descriptor() ([]byte, []int) {
+ return file_ebpf_profiling_Profile_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *EBPFOffCPUProfiling) GetStacks() []*EBPFProfilingStackMetadata {
+ if x != nil {
+ return x.Stacks
+ }
+ return nil
+}
+
+func (x *EBPFOffCPUProfiling) GetSwitchCount() int32 {
+ if x != nil {
+ return x.SwitchCount
+ }
+ return 0
+}
+
+func (x *EBPFOffCPUProfiling) GetDuration() int64 {
+ if x != nil {
+ return x.Duration
+ }
+ return 0
+}
+
var File_ebpf_profiling_Profile_proto protoreflect.FileDescriptor
var file_ebpf_profiling_Profile_proto_rawDesc = []byte{
@@ -430,7 +510,7 @@ var file_ebpf_profiling_Profile_proto_rawDesc = []byte{
0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6c, 0x61,
0x74, 0x65, 0x73, 0x74,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x03,
0x52, 0x10, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x54, 0x69,
- 0x6d, 0x65, 0x22, 0x99, 0x01, 0x0a, 0x11, 0x45, 0x42, 0x50, 0x46, 0x50,
0x72, 0x6f, 0x66, 0x69,
+ 0x6d, 0x65, 0x22, 0xd7, 0x01, 0x0a, 0x11, 0x45, 0x42, 0x50, 0x46, 0x50,
0x72, 0x6f, 0x66, 0x69,
0x6c, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x3c, 0x0a, 0x04,
0x74, 0x61, 0x73, 0x6b,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x73, 0x6b, 0x79,
0x77, 0x61, 0x6c, 0x6b,
0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50,
0x72, 0x6f, 0x66, 0x69,
@@ -439,60 +519,73 @@ var file_ebpf_profiling_Profile_proto_rawDesc = []byte{
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, 0x6b, 0x79, 0x77,
0x61, 0x6c, 0x6b, 0x69,
0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x4f, 0x6e,
0x43, 0x50, 0x55, 0x50,
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x05,
0x6f, 0x6e, 0x43, 0x50,
- 0x55, 0x42, 0x0b, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69,
0x6e, 0x67, 0x22, 0xa3,
- 0x01, 0x0a, 0x19, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69,
0x6c, 0x69, 0x6e, 0x67,
- 0x54, 0x61, 0x73, 0x6b, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
0x12, 0x16, 0x0a, 0x06,
- 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x74, 0x61,
- 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63,
0x65, 0x73, 0x73, 0x49,
- 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f,
0x63, 0x65, 0x73, 0x73,
- 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x69, 0x6e, 0x67, 0x53,
- 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x12,
- 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61,
0x72, 0x74, 0x54, 0x69,
- 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x54, 0x69, 0x6d,
- 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x75, 0x72,
0x72, 0x65, 0x6e, 0x74,
- 0x54, 0x69, 0x6d, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x1a, 0x45, 0x42, 0x50,
0x46, 0x50, 0x72, 0x6f,
- 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x4d,
0x65, 0x74, 0x61, 0x64,
- 0x61, 0x74, 0x61, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x63, 0x6b,
0x54, 0x79, 0x70, 0x65,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x6b, 0x79,
0x77, 0x61, 0x6c, 0x6b,
- 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50,
0x72, 0x6f, 0x66, 0x69,
- 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70,
0x65, 0x52, 0x09, 0x73,
- 0x74, 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07,
0x73, 0x74, 0x61, 0x63,
- 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73,
0x74, 0x61, 0x63, 0x6b,
- 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x53,
0x79, 0x6d, 0x62, 0x6f,
- 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74,
0x61, 0x63, 0x6b, 0x53,
- 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x22, 0x75, 0x0a, 0x12, 0x45, 0x42,
0x50, 0x46, 0x4f, 0x6e,
- 0x43, 0x50, 0x55, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67,
0x12, 0x41, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x29, 0x2e, 0x73,
- 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33,
0x2e, 0x45, 0x42, 0x50,
- 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74,
0x61, 0x63, 0x6b, 0x4d,
- 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x06, 0x73, 0x74, 0x61,
0x63, 0x6b, 0x73, 0x12,
- 0x1c, 0x0a, 0x09, 0x64, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74,
0x18, 0x02, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x09, 0x64, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x2a, 0x4a, 0x0a,
- 0x16, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69,
0x6e, 0x67, 0x53, 0x74,
- 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x50,
0x52, 0x4f, 0x43, 0x45,
- 0x53, 0x53, 0x5f, 0x4b, 0x45, 0x52, 0x4e, 0x45, 0x4c, 0x5f, 0x53, 0x50,
0x41, 0x43, 0x45, 0x10,
- 0x00, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53,
0x5f, 0x55, 0x53, 0x45,
- 0x52, 0x5f, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x01, 0x32, 0xbd, 0x01,
0x0a, 0x14, 0x45, 0x42,
- 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53,
0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x12, 0x4e, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x54,
0x61, 0x73, 0x6b, 0x73,
- 0x12, 0x25, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e,
0x67, 0x2e, 0x76, 0x33,
- 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69,
0x6e, 0x67, 0x54, 0x61,
- 0x73, 0x6b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x1a, 0x17, 0x2e, 0x73, 0x6b,
0x79, 0x77, 0x61, 0x6c,
- 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6f, 0x6d, 0x6d,
0x61, 0x6e, 0x64, 0x73,
- 0x22, 0x00, 0x12, 0x55, 0x0a, 0x14, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x50, 0x72, 0x6f,
- 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20,
0x2e, 0x73, 0x6b, 0x79,
+ 0x55, 0x12, 0x3c, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x43, 0x50, 0x55, 0x18,
0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x22, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69,
0x6e, 0x67, 0x2e, 0x76,
+ 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x4f, 0x66, 0x66, 0x43, 0x50, 0x55,
0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x66, 0x66,
0x43, 0x50, 0x55, 0x42,
+ 0x0b, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67,
0x22, 0xa3, 0x01, 0x0a,
+ 0x19, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69,
0x6e, 0x67, 0x54, 0x61,
+ 0x73, 0x6b, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16,
0x0a, 0x06, 0x74, 0x61,
+ 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x74, 0x61, 0x73, 0x6b,
+ 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x49, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x49, 0x64,
+ 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e,
0x67, 0x53, 0x74, 0x61,
+ 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
0x52, 0x12, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x72, 0x74,
0x54, 0x69, 0x6d, 0x65,
+ 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54,
0x69, 0x6d, 0x65, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65,
0x6e, 0x74, 0x54, 0x69,
+ 0x6d, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x1a, 0x45, 0x42, 0x50, 0x46, 0x50,
0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x65, 0x74,
0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x54, 0x79,
0x70, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61,
0x6c, 0x6b, 0x69, 0x6e,
+ 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f,
0x66, 0x69, 0x6c, 0x69,
+ 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52,
0x09, 0x73, 0x74, 0x61,
+ 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74,
0x61, 0x63, 0x6b, 0x49,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x74, 0x61,
0x63, 0x6b, 0x49, 0x64,
+ 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x53, 0x79, 0x6d,
0x62, 0x6f, 0x6c, 0x73,
+ 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x63,
0x6b, 0x53, 0x79, 0x6d,
+ 0x62, 0x6f, 0x6c, 0x73, 0x22, 0x75, 0x0a, 0x12, 0x45, 0x42, 0x50, 0x46,
0x4f, 0x6e, 0x43, 0x50,
+ 0x55, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x41,
0x0a, 0x06, 0x73, 0x74,
+ 0x61, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29,
0x2e, 0x73, 0x6b, 0x79,
0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45,
0x42, 0x50, 0x46, 0x50,
- 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61,
0x1a, 0x17, 0x2e, 0x73,
- 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33,
0x2e, 0x43, 0x6f, 0x6d,
- 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x00, 0x28, 0x01, 0x42, 0x73, 0x0a,
0x33, 0x6f, 0x72, 0x67,
- 0x2e, 0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x73, 0x6b, 0x79, 0x77,
0x61, 0x6c, 0x6b, 0x69,
- 0x6e, 0x67, 0x2e, 0x61, 0x70, 0x6d, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x2e, 0x65,
- 0x62, 0x70, 0x66, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e,
0x67, 0x2e, 0x76, 0x33,
- 0x50, 0x01, 0x5a, 0x3a, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69,
0x6e, 0x67, 0x2e, 0x61,
- 0x70, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x72, 0x65,
0x70, 0x6f, 0x2f, 0x67,
- 0x6f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
0x2f, 0x65, 0x62, 0x70,
- 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x2f,
0x76, 0x33, 0x62, 0x06,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63,
0x6b, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x06, 0x73, 0x74, 0x61, 0x63, 0x6b,
0x73, 0x12, 0x1c, 0x0a,
+ 0x09, 0x64, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02,
0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x09, 0x64, 0x75, 0x6d, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22,
0x96, 0x01, 0x0a, 0x13,
+ 0x45, 0x42, 0x50, 0x46, 0x4f, 0x66, 0x66, 0x43, 0x50, 0x55, 0x50, 0x72,
0x6f, 0x66, 0x69, 0x6c,
+ 0x69, 0x6e, 0x67, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x63, 0x6b,
0x73, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c,
0x6b, 0x69, 0x6e, 0x67,
+ 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66,
0x69, 0x6c, 0x69, 0x6e,
+ 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x77,
0x69, 0x74, 0x63, 0x68,
+ 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
0x0b, 0x73, 0x77, 0x69,
+ 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08,
0x64, 0x75, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
0x64, 0x75, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x4a, 0x0a, 0x16, 0x45, 0x42, 0x50, 0x46,
0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x54, 0x79,
0x70, 0x65, 0x12, 0x18,
+ 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4b, 0x45,
0x52, 0x4e, 0x45, 0x4c,
+ 0x5f, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12,
0x50, 0x52, 0x4f, 0x43,
+ 0x45, 0x53, 0x53, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x50, 0x41,
0x43, 0x45, 0x10, 0x01,
+ 0x32, 0xbd, 0x01, 0x0a, 0x14, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f,
0x66, 0x69, 0x6c, 0x69,
+ 0x6e, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4e, 0x0a,
0x0a, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x25, 0x2e, 0x73, 0x6b,
0x79, 0x77, 0x61, 0x6c,
+ 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46,
0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x73, 0x6b, 0x51, 0x75, 0x65,
0x72, 0x79, 0x1a, 0x17,
+ 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e,
0x76, 0x33, 0x2e, 0x43,
+ 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x00, 0x12, 0x55, 0x0a,
0x14, 0x63, 0x6f, 0x6c,
+ 0x6c, 0x65, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x69, 0x6e,
0x67, 0x44, 0x61, 0x74,
+ 0x61, 0x12, 0x20, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69,
0x6e, 0x67, 0x2e, 0x76,
+ 0x33, 0x2e, 0x45, 0x42, 0x50, 0x46, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x69, 0x6e, 0x67, 0x44,
+ 0x61, 0x74, 0x61, 0x1a, 0x17, 0x2e, 0x73, 0x6b, 0x79, 0x77, 0x61, 0x6c,
0x6b, 0x69, 0x6e, 0x67,
+ 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73,
0x22, 0x00, 0x28, 0x01,
+ 0x42, 0x73, 0x0a, 0x33, 0x6f, 0x72, 0x67, 0x2e, 0x61, 0x70, 0x61, 0x63,
0x68, 0x65, 0x2e, 0x73,
+ 0x6b, 0x79, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x70,
0x6d, 0x2e, 0x6e, 0x65,
+ 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x65, 0x62, 0x70, 0x66, 0x2e, 0x70,
0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x50, 0x01, 0x5a, 0x3a, 0x73,
0x6b, 0x79, 0x77, 0x61,
+ 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x70, 0x61, 0x63, 0x68, 0x65,
0x2e, 0x6f, 0x72, 0x67,
+ 0x2f, 0x72, 0x65, 0x70, 0x6f, 0x2f, 0x67, 0x6f, 0x61, 0x70, 0x69, 0x2f,
0x63, 0x6f, 0x6c, 0x6c,
+ 0x65, 0x63, 0x74, 0x2f, 0x65, 0x62, 0x70, 0x66, 0x2f, 0x70, 0x72, 0x6f,
0x66, 0x69, 0x6c, 0x69,
+ 0x6e, 0x67, 0x2f, 0x76, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
@@ -508,7 +601,7 @@ func file_ebpf_profiling_Profile_proto_rawDescGZIP() []byte
{
}
var file_ebpf_profiling_Profile_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_ebpf_profiling_Profile_proto_msgTypes = make([]protoimpl.MessageInfo,
5)
+var file_ebpf_profiling_Profile_proto_msgTypes = make([]protoimpl.MessageInfo,
6)
var file_ebpf_profiling_Profile_proto_goTypes = []interface{}{
(EBPFProfilingStackType)(0), // 0:
skywalking.v3.EBPFProfilingStackType
(*EBPFProfilingTaskQuery)(nil), // 1:
skywalking.v3.EBPFProfilingTaskQuery
@@ -516,22 +609,25 @@ var file_ebpf_profiling_Profile_proto_goTypes =
[]interface{}{
(*EBPFProfilingTaskMetadata)(nil), // 3:
skywalking.v3.EBPFProfilingTaskMetadata
(*EBPFProfilingStackMetadata)(nil), // 4:
skywalking.v3.EBPFProfilingStackMetadata
(*EBPFOnCPUProfiling)(nil), // 5:
skywalking.v3.EBPFOnCPUProfiling
- (*v3.Commands)(nil), // 6: skywalking.v3.Commands
+ (*EBPFOffCPUProfiling)(nil), // 6:
skywalking.v3.EBPFOffCPUProfiling
+ (*v3.Commands)(nil), // 7: skywalking.v3.Commands
}
var file_ebpf_profiling_Profile_proto_depIdxs = []int32{
3, // 0: skywalking.v3.EBPFProfilingData.task:type_name ->
skywalking.v3.EBPFProfilingTaskMetadata
5, // 1: skywalking.v3.EBPFProfilingData.onCPU:type_name ->
skywalking.v3.EBPFOnCPUProfiling
- 0, // 2: skywalking.v3.EBPFProfilingStackMetadata.stackType:type_name
-> skywalking.v3.EBPFProfilingStackType
- 4, // 3: skywalking.v3.EBPFOnCPUProfiling.stacks:type_name ->
skywalking.v3.EBPFProfilingStackMetadata
- 1, // 4: skywalking.v3.EBPFProfilingService.queryTasks:input_type ->
skywalking.v3.EBPFProfilingTaskQuery
- 2, // 5:
skywalking.v3.EBPFProfilingService.collectProfilingData:input_type ->
skywalking.v3.EBPFProfilingData
- 6, // 6: skywalking.v3.EBPFProfilingService.queryTasks:output_type ->
skywalking.v3.Commands
- 6, // 7:
skywalking.v3.EBPFProfilingService.collectProfilingData:output_type ->
skywalking.v3.Commands
- 6, // [6:8] is the sub-list for method output_type
- 4, // [4:6] is the sub-list for method input_type
- 4, // [4:4] is the sub-list for extension type_name
- 4, // [4:4] is the sub-list for extension extendee
- 0, // [0:4] is the sub-list for field type_name
+ 6, // 2: skywalking.v3.EBPFProfilingData.offCPU:type_name ->
skywalking.v3.EBPFOffCPUProfiling
+ 0, // 3: skywalking.v3.EBPFProfilingStackMetadata.stackType:type_name
-> skywalking.v3.EBPFProfilingStackType
+ 4, // 4: skywalking.v3.EBPFOnCPUProfiling.stacks:type_name ->
skywalking.v3.EBPFProfilingStackMetadata
+ 4, // 5: skywalking.v3.EBPFOffCPUProfiling.stacks:type_name ->
skywalking.v3.EBPFProfilingStackMetadata
+ 1, // 6: skywalking.v3.EBPFProfilingService.queryTasks:input_type ->
skywalking.v3.EBPFProfilingTaskQuery
+ 2, // 7:
skywalking.v3.EBPFProfilingService.collectProfilingData:input_type ->
skywalking.v3.EBPFProfilingData
+ 7, // 8: skywalking.v3.EBPFProfilingService.queryTasks:output_type ->
skywalking.v3.Commands
+ 7, // 9:
skywalking.v3.EBPFProfilingService.collectProfilingData:output_type ->
skywalking.v3.Commands
+ 8, // [8:10] is the sub-list for method output_type
+ 6, // [6:8] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
}
func init() { file_ebpf_profiling_Profile_proto_init() }
@@ -600,9 +696,22 @@ func file_ebpf_profiling_Profile_proto_init() {
return nil
}
}
+ file_ebpf_profiling_Profile_proto_msgTypes[5].Exporter = func(v
interface{}, i int) interface{} {
+ switch v := v.(*EBPFOffCPUProfiling); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
}
file_ebpf_profiling_Profile_proto_msgTypes[1].OneofWrappers =
[]interface{}{
(*EBPFProfilingData_OnCPU)(nil),
+ (*EBPFProfilingData_OffCPU)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -610,7 +719,7 @@ func file_ebpf_profiling_Profile_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor:
file_ebpf_profiling_Profile_proto_rawDesc,
NumEnums: 1,
- NumMessages: 5,
+ NumMessages: 6,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/dependencies.sh b/dependencies.sh
index 3fb23b9..48dc1c4 100644
--- a/dependencies.sh
+++ b/dependencies.sh
@@ -17,8 +17,8 @@
# specific language governing permissions and limitations
# under the License.
-export COLLECT_PROTOCOL_SHA=f1b62de294f7f46f3334900417ffb349f19a479c
-export QUERY_PROTOCOL_SHA=1c1975978bb34f319ade2bc66d011428bf78bc22
+export COLLECT_PROTOCOL_SHA=e89af18cc7be7dc04ec4a7c4ff75f0ae19fa929b
+export QUERY_PROTOCOL_SHA=022e63d476ebd2c24b05e4a1b8d816c0c5a4bca2
export ENVOY_SERVICE_PROTOCOL_SHA=533b32f1b390a3a88ec2008d0561e07c926d879a
export XDS_SERVICE_PROTOCOL_SHA=25de7278fc844d392d607214f36dbedf50f167ee
export PROTOC_VALIDATE_SHA=v0.6.1
diff --git a/query/schema.go b/query/schema.go
index 767eaa0..528ebe2 100644
--- a/query/schema.go
+++ b/query/schema.go
@@ -708,6 +708,47 @@ func (e DetectPoint) MarshalGQL(w io.Writer) {
fmt.Fprint(w, strconv.Quote(e.String()))
}
+type EBPFProfilingAnalyzeAggregateType string
+
+const (
+ EBPFProfilingAnalyzeAggregateTypeDuration
EBPFProfilingAnalyzeAggregateType = "DURATION"
+ EBPFProfilingAnalyzeAggregateTypeCount
EBPFProfilingAnalyzeAggregateType = "COUNT"
+)
+
+var AllEBPFProfilingAnalyzeAggregateType = []EBPFProfilingAnalyzeAggregateType{
+ EBPFProfilingAnalyzeAggregateTypeDuration,
+ EBPFProfilingAnalyzeAggregateTypeCount,
+}
+
+func (e EBPFProfilingAnalyzeAggregateType) IsValid() bool {
+ switch e {
+ case EBPFProfilingAnalyzeAggregateTypeDuration,
EBPFProfilingAnalyzeAggregateTypeCount:
+ return true
+ }
+ return false
+}
+
+func (e EBPFProfilingAnalyzeAggregateType) String() string {
+ return string(e)
+}
+
+func (e *EBPFProfilingAnalyzeAggregateType) UnmarshalGQL(v interface{}) error {
+ str, ok := v.(string)
+ if !ok {
+ return fmt.Errorf("enums must be strings")
+ }
+
+ *e = EBPFProfilingAnalyzeAggregateType(str)
+ if !e.IsValid() {
+ return fmt.Errorf("%s is not a valid
EBPFProfilingAnalyzeAggregateType", str)
+ }
+ return nil
+}
+
+func (e EBPFProfilingAnalyzeAggregateType) MarshalGQL(w io.Writer) {
+ fmt.Fprint(w, strconv.Quote(e.String()))
+}
+
type EBPFProfilingStackType string
const (
@@ -752,16 +793,18 @@ func (e EBPFProfilingStackType) MarshalGQL(w io.Writer) {
type EBPFProfilingTargetType string
const (
- EBPFProfilingTargetTypeOnCPU EBPFProfilingTargetType = "ON_CPU"
+ EBPFProfilingTargetTypeOnCPU EBPFProfilingTargetType = "ON_CPU"
+ EBPFProfilingTargetTypeOffCPU EBPFProfilingTargetType = "OFF_CPU"
)
var AllEBPFProfilingTargetType = []EBPFProfilingTargetType{
EBPFProfilingTargetTypeOnCPU,
+ EBPFProfilingTargetTypeOffCPU,
}
func (e EBPFProfilingTargetType) IsValid() bool {
switch e {
- case EBPFProfilingTargetTypeOnCPU:
+ case EBPFProfilingTargetTypeOnCPU, EBPFProfilingTargetTypeOffCPU:
return true
}
return false