diff options
author | 2024-12-16 15:42:48 -0800 | |
---|---|---|
committer | 2024-12-16 15:42:48 -0800 | |
commit | 242c9bfcbde5f94c01685525347c83809bae79bb (patch) | |
tree | 631b1f5512badf514d84847307c597c757e4e64e | |
parent | 0a64f4721c684e1e2cc2f6a5782f245f1fc7d2c2 (diff) | |
parent | 720d7fb1ac749ce12d231c5a76908d5f4947fe22 (diff) |
Merge "Wrap ExecutionMetrics against future needs" into main
-rw-r--r-- | cmd/soong_ui/main.go | 2 | ||||
-rw-r--r-- | ui/execution_metrics/execution_metrics.go | 12 | ||||
-rw-r--r-- | ui/metrics/metrics_proto/metrics.pb.go | 198 | ||||
-rw-r--r-- | ui/metrics/metrics_proto/metrics.proto | 14 |
4 files changed, 155 insertions, 71 deletions
diff --git a/cmd/soong_ui/main.go b/cmd/soong_ui/main.go index c119823cd..792629218 100644 --- a/cmd/soong_ui/main.go +++ b/cmd/soong_ui/main.go @@ -197,7 +197,7 @@ func main() { rbeMetricsFile := filepath.Join(logsDir, c.logsPrefix+"rbe_metrics.pb") soongBuildMetricsFile := filepath.Join(logsDir, c.logsPrefix+"soong_build_metrics.pb") buildTraceFile := filepath.Join(logsDir, c.logsPrefix+"build.trace.gz") - executionMetricsFile := filepath.Join(logsDir, c.logsPrefix+"soong_execution_metrics.pb") + executionMetricsFile := filepath.Join(logsDir, c.logsPrefix+"execution_metrics.pb") metricsFiles := []string{ buildErrorFile, // build error strings diff --git a/ui/execution_metrics/execution_metrics.go b/ui/execution_metrics/execution_metrics.go index 4ea251fa4..db784495d 100644 --- a/ui/execution_metrics/execution_metrics.go +++ b/ui/execution_metrics/execution_metrics.go @@ -204,8 +204,7 @@ func (c *ExecutionMetrics) Dump(path string, args []string) error { if c.MetricsAggregationDir == "" { return nil } - msg := c.GetMetrics() - msg.CommandArgs = args + msg := c.GetMetrics(args) if _, err := os.Stat(filepath.Dir(path)); err != nil { if err = os.MkdirAll(filepath.Dir(path), 0775); err != nil { @@ -219,7 +218,14 @@ func (c *ExecutionMetrics) Dump(path string, args []string) error { return os.WriteFile(path, data, 0644) } -func (c *ExecutionMetrics) GetMetrics() *soong_metrics_proto.AggregatedFileList { +func (c *ExecutionMetrics) GetMetrics(args []string) *soong_metrics_proto.ExecutionMetrics { + return &soong_metrics_proto.ExecutionMetrics{ + CommandArgs: args, + ChangedFiles: c.getChangedFiles(), + } +} + +func (c *ExecutionMetrics) getChangedFiles() *soong_metrics_proto.AggregatedFileList { fl := c.fileList if fl == nil { return nil diff --git a/ui/metrics/metrics_proto/metrics.pb.go b/ui/metrics/metrics_proto/metrics.pb.go index 0aa51b166..8cbc5684e 100644 --- a/ui/metrics/metrics_proto/metrics.pb.go +++ b/ui/metrics/metrics_proto/metrics.pb.go @@ -2080,6 +2080,64 @@ func (x *OptimizedBuildMetrics) GetTargetResult() []*OptimizedBuildMetrics_Targe return nil } +// This is created by soong_ui from SoongExexcutionMetrics files. +type ExecutionMetrics struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The arguments provided on the command line. + CommandArgs []string `protobuf:"bytes,1,rep,name=command_args,json=commandArgs" json:"command_args,omitempty"` + // Changed files detected by the build. + ChangedFiles *AggregatedFileList `protobuf:"bytes,2,opt,name=changed_files,json=changedFiles" json:"changed_files,omitempty"` +} + +func (x *ExecutionMetrics) Reset() { + *x = ExecutionMetrics{} + if protoimpl.UnsafeEnabled { + mi := &file_metrics_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ExecutionMetrics) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExecutionMetrics) ProtoMessage() {} + +func (x *ExecutionMetrics) ProtoReflect() protoreflect.Message { + mi := &file_metrics_proto_msgTypes[19] + 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 ExecutionMetrics.ProtoReflect.Descriptor instead. +func (*ExecutionMetrics) Descriptor() ([]byte, []int) { + return file_metrics_proto_rawDescGZIP(), []int{19} +} + +func (x *ExecutionMetrics) GetCommandArgs() []string { + if x != nil { + return x.CommandArgs + } + return nil +} + +func (x *ExecutionMetrics) GetChangedFiles() *AggregatedFileList { + if x != nil { + return x.ChangedFiles + } + return nil +} + // This is created by soong_ui from the various // android.find_input_delta_proto.FileList metrics provided to it by // find_input_delta. @@ -2088,8 +2146,6 @@ type AggregatedFileList struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // The arguments provided on the command line. - CommandArgs []string `protobuf:"bytes,1,rep,name=command_args,json=commandArgs" json:"command_args,omitempty"` // The (possibly truncated list of) added files. Additions []string `protobuf:"bytes,2,rep,name=additions" json:"additions,omitempty"` // The (possibly truncated list of) changed files. @@ -2105,7 +2161,7 @@ type AggregatedFileList struct { func (x *AggregatedFileList) Reset() { *x = AggregatedFileList{} if protoimpl.UnsafeEnabled { - mi := &file_metrics_proto_msgTypes[19] + mi := &file_metrics_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2118,7 +2174,7 @@ func (x *AggregatedFileList) String() string { func (*AggregatedFileList) ProtoMessage() {} func (x *AggregatedFileList) ProtoReflect() protoreflect.Message { - mi := &file_metrics_proto_msgTypes[19] + mi := &file_metrics_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2131,14 +2187,7 @@ func (x *AggregatedFileList) ProtoReflect() protoreflect.Message { // Deprecated: Use AggregatedFileList.ProtoReflect.Descriptor instead. func (*AggregatedFileList) Descriptor() ([]byte, []int) { - return file_metrics_proto_rawDescGZIP(), []int{19} -} - -func (x *AggregatedFileList) GetCommandArgs() []string { - if x != nil { - return x.CommandArgs - } - return nil + return file_metrics_proto_rawDescGZIP(), []int{20} } func (x *AggregatedFileList) GetAdditions() []string { @@ -2194,7 +2243,7 @@ type FileCount struct { func (x *FileCount) Reset() { *x = FileCount{} if protoimpl.UnsafeEnabled { - mi := &file_metrics_proto_msgTypes[20] + mi := &file_metrics_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2207,7 +2256,7 @@ func (x *FileCount) String() string { func (*FileCount) ProtoMessage() {} func (x *FileCount) ProtoReflect() protoreflect.Message { - mi := &file_metrics_proto_msgTypes[20] + mi := &file_metrics_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2220,7 +2269,7 @@ func (x *FileCount) ProtoReflect() protoreflect.Message { // Deprecated: Use FileCount.ProtoReflect.Descriptor instead. func (*FileCount) Descriptor() ([]byte, []int) { - return file_metrics_proto_rawDescGZIP(), []int{20} + return file_metrics_proto_rawDescGZIP(), []int{21} } func (x *FileCount) GetExtension() string { @@ -2272,7 +2321,7 @@ type OptimizedBuildMetrics_TargetOptimizationResult struct { func (x *OptimizedBuildMetrics_TargetOptimizationResult) Reset() { *x = OptimizedBuildMetrics_TargetOptimizationResult{} if protoimpl.UnsafeEnabled { - mi := &file_metrics_proto_msgTypes[21] + mi := &file_metrics_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2285,7 +2334,7 @@ func (x *OptimizedBuildMetrics_TargetOptimizationResult) String() string { func (*OptimizedBuildMetrics_TargetOptimizationResult) ProtoMessage() {} func (x *OptimizedBuildMetrics_TargetOptimizationResult) ProtoReflect() protoreflect.Message { - mi := &file_metrics_proto_msgTypes[21] + mi := &file_metrics_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2352,7 +2401,7 @@ type OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact struct { func (x *OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact) Reset() { *x = OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact{} if protoimpl.UnsafeEnabled { - mi := &file_metrics_proto_msgTypes[22] + mi := &file_metrics_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2365,7 +2414,7 @@ func (x *OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact) String() func (*OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact) ProtoMessage() {} func (x *OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact) ProtoReflect() protoreflect.Message { - mi := &file_metrics_proto_msgTypes[22] + mi := &file_metrics_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2808,33 +2857,40 @@ var file_metrics_proto_rawDesc = []byte{ 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, - 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x22, 0xe6, 0x01, - 0x0a, 0x12, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, - 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x41, 0x72, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, - 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x36, - 0x0a, 0x06, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x09, 0x46, 0x69, 0x6c, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x28, 0x5a, 0x26, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2f, - 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x75, 0x69, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x22, 0x83, 0x01, + 0x0a, 0x10, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x61, 0x72, + 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x41, 0x72, 0x67, 0x73, 0x12, 0x4c, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, + 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x73, + 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x46, 0x69, + 0x6c, 0x65, 0x73, 0x22, 0xc9, 0x01, 0x0a, 0x12, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, + 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x65, 0x6c, 0x74, + 0x61, 0x12, 0x36, 0x0a, 0x06, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x06, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x22, + 0x8b, 0x01, 0x0a, 0x09, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x61, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x28, 0x5a, + 0x26, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2f, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x75, + 0x69, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, } var ( @@ -2850,7 +2906,7 @@ func file_metrics_proto_rawDescGZIP() []byte { } var file_metrics_proto_enumTypes = make([]protoimpl.EnumInfo, 5) -var file_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 23) +var file_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_metrics_proto_goTypes = []interface{}{ (MetricsBase_BuildVariant)(0), // 0: soong_build_metrics.MetricsBase.BuildVariant (MetricsBase_Arch)(0), // 1: soong_build_metrics.MetricsBase.Arch @@ -2876,10 +2932,11 @@ var file_metrics_proto_goTypes = []interface{}{ (*CriticalPathInfo)(nil), // 21: soong_build_metrics.CriticalPathInfo (*JobInfo)(nil), // 22: soong_build_metrics.JobInfo (*OptimizedBuildMetrics)(nil), // 23: soong_build_metrics.OptimizedBuildMetrics - (*AggregatedFileList)(nil), // 24: soong_build_metrics.AggregatedFileList - (*FileCount)(nil), // 25: soong_build_metrics.FileCount - (*OptimizedBuildMetrics_TargetOptimizationResult)(nil), // 26: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult - (*OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact)(nil), // 27: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.OutputArtifact + (*ExecutionMetrics)(nil), // 24: soong_build_metrics.ExecutionMetrics + (*AggregatedFileList)(nil), // 25: soong_build_metrics.AggregatedFileList + (*FileCount)(nil), // 26: soong_build_metrics.FileCount + (*OptimizedBuildMetrics_TargetOptimizationResult)(nil), // 27: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult + (*OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact)(nil), // 28: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.OutputArtifact } var file_metrics_proto_depIdxs = []int32{ 0, // 0: soong_build_metrics.MetricsBase.target_build_variant:type_name -> soong_build_metrics.MetricsBase.BuildVariant @@ -2915,15 +2972,16 @@ var file_metrics_proto_depIdxs = []int32{ 22, // 30: soong_build_metrics.CriticalPathInfo.long_running_jobs:type_name -> soong_build_metrics.JobInfo 10, // 31: soong_build_metrics.OptimizedBuildMetrics.analysis_perf:type_name -> soong_build_metrics.PerfInfo 10, // 32: soong_build_metrics.OptimizedBuildMetrics.packaging_perf:type_name -> soong_build_metrics.PerfInfo - 26, // 33: soong_build_metrics.OptimizedBuildMetrics.target_result:type_name -> soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult - 25, // 34: soong_build_metrics.AggregatedFileList.counts:type_name -> soong_build_metrics.FileCount - 10, // 35: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.packaging_perf:type_name -> soong_build_metrics.PerfInfo - 27, // 36: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.output_artifact:type_name -> soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.OutputArtifact - 37, // [37:37] is the sub-list for method output_type - 37, // [37:37] is the sub-list for method input_type - 37, // [37:37] is the sub-list for extension type_name - 37, // [37:37] is the sub-list for extension extendee - 0, // [0:37] is the sub-list for field type_name + 27, // 33: soong_build_metrics.OptimizedBuildMetrics.target_result:type_name -> soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult + 25, // 34: soong_build_metrics.ExecutionMetrics.changed_files:type_name -> soong_build_metrics.AggregatedFileList + 26, // 35: soong_build_metrics.AggregatedFileList.counts:type_name -> soong_build_metrics.FileCount + 10, // 36: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.packaging_perf:type_name -> soong_build_metrics.PerfInfo + 28, // 37: soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.output_artifact:type_name -> soong_build_metrics.OptimizedBuildMetrics.TargetOptimizationResult.OutputArtifact + 38, // [38:38] is the sub-list for method output_type + 38, // [38:38] is the sub-list for method input_type + 38, // [38:38] is the sub-list for extension type_name + 38, // [38:38] is the sub-list for extension extendee + 0, // [0:38] is the sub-list for field type_name } func init() { file_metrics_proto_init() } @@ -3161,7 +3219,7 @@ func file_metrics_proto_init() { } } file_metrics_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AggregatedFileList); i { + switch v := v.(*ExecutionMetrics); i { case 0: return &v.state case 1: @@ -3173,7 +3231,7 @@ func file_metrics_proto_init() { } } file_metrics_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FileCount); i { + switch v := v.(*AggregatedFileList); i { case 0: return &v.state case 1: @@ -3185,7 +3243,7 @@ func file_metrics_proto_init() { } } file_metrics_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OptimizedBuildMetrics_TargetOptimizationResult); i { + switch v := v.(*FileCount); i { case 0: return &v.state case 1: @@ -3197,6 +3255,18 @@ func file_metrics_proto_init() { } } file_metrics_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OptimizedBuildMetrics_TargetOptimizationResult); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_metrics_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OptimizedBuildMetrics_TargetOptimizationResult_OutputArtifact); i { case 0: return &v.state @@ -3215,7 +3285,7 @@ func file_metrics_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_metrics_proto_rawDesc, NumEnums: 5, - NumMessages: 23, + NumMessages: 24, NumExtensions: 0, NumServices: 0, }, diff --git a/ui/metrics/metrics_proto/metrics.proto b/ui/metrics/metrics_proto/metrics.proto index 8437b65ae..69067ab9e 100644 --- a/ui/metrics/metrics_proto/metrics.proto +++ b/ui/metrics/metrics_proto/metrics.proto @@ -452,13 +452,19 @@ message OptimizedBuildMetrics { } } +// This is created by soong_ui from SoongExexcutionMetrics files. +message ExecutionMetrics { + // The arguments provided on the command line. + repeated string command_args = 1; + + // Changed files detected by the build. + optional AggregatedFileList changed_files = 2; +} + // This is created by soong_ui from the various // android.find_input_delta_proto.FileList metrics provided to it by // find_input_delta. message AggregatedFileList { - // The arguments provided on the command line. - repeated string command_args = 1; - // The (possibly truncated list of) added files. repeated string additions = 2; @@ -473,6 +479,8 @@ message AggregatedFileList { // Counts by extension. repeated FileCount counts = 6; + + reserved 1; } message FileCount { |