Loading ui/build/config.go +21 −2 Original line number Diff line number Diff line Loading @@ -15,9 +15,9 @@ package build import ( "fmt" "io/ioutil" "log" "fmt" "os" "path/filepath" "runtime" Loading @@ -26,6 +26,9 @@ import ( "time" "android/soong/shared" "github.com/golang/protobuf/proto" smpb "android/soong/ui/metrics/metrics_proto" ) type Config struct{ *configImpl } Loading Loading @@ -233,7 +236,23 @@ func NewConfig(ctx Context, args ...string) Config { } } return Config{ret} c := Config{ret} storeConfigMetrics(ctx, c) return c } // storeConfigMetrics selects a set of configuration information and store in // the metrics system for further analysis. func storeConfigMetrics(ctx Context, config Config) { if ctx.Metrics == nil { return } b := &smpb.BuildConfig{ UseGoma: proto.Bool(config.UseGoma()), UseRbe: proto.Bool(config.UseRBE()), } ctx.Metrics.BuildConfig(b) } func (c *configImpl) parseArgs(ctx Context, args []string) { Loading ui/metrics/metrics.go +4 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,10 @@ func (m *Metrics) SetTimeMetrics(perf metrics_proto.PerfInfo) { } } func (m *Metrics) BuildConfig(b *metrics_proto.BuildConfig) { m.metrics.BuildConfig = b } func (m *Metrics) SetMetadataMetrics(metadata map[string]string) { for k, v := range metadata { switch k { Loading ui/metrics/metrics_proto/metrics.pb.go +153 −76 Original line number Diff line number Diff line Loading @@ -3,9 +3,11 @@ package metrics_proto import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" import ( fmt "fmt" proto "github.com/golang/protobuf/proto" math "math" ) // Reference imports to suppress errors if they are not otherwise used. var _ = proto.Marshal Loading @@ -16,7 +18,7 @@ var _ = math.Inf // is compatible with the proto package it is being compiled against. // A compilation error at this line likely means your copy of the // proto package needs to be updated. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package type MetricsBase_BUILDVARIANT int32 Loading @@ -31,6 +33,7 @@ var MetricsBase_BUILDVARIANT_name = map[int32]string{ 1: "USERDEBUG", 2: "ENG", } var MetricsBase_BUILDVARIANT_value = map[string]int32{ "USER": 0, "USERDEBUG": 1, Loading @@ -42,9 +45,11 @@ func (x MetricsBase_BUILDVARIANT) Enum() *MetricsBase_BUILDVARIANT { *p = x return p } func (x MetricsBase_BUILDVARIANT) String() string { return proto.EnumName(MetricsBase_BUILDVARIANT_name, int32(x)) } func (x *MetricsBase_BUILDVARIANT) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(MetricsBase_BUILDVARIANT_value, data, "MetricsBase_BUILDVARIANT") if err != nil { Loading @@ -53,8 +58,9 @@ func (x *MetricsBase_BUILDVARIANT) UnmarshalJSON(data []byte) error { *x = MetricsBase_BUILDVARIANT(value) return nil } func (MetricsBase_BUILDVARIANT) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0, 0} return fileDescriptor_6039342a2ba47b72, []int{0, 0} } type MetricsBase_ARCH int32 Loading @@ -74,6 +80,7 @@ var MetricsBase_ARCH_name = map[int32]string{ 3: "X86", 4: "X86_64", } var MetricsBase_ARCH_value = map[string]int32{ "UNKNOWN": 0, "ARM": 1, Loading @@ -87,9 +94,11 @@ func (x MetricsBase_ARCH) Enum() *MetricsBase_ARCH { *p = x return p } func (x MetricsBase_ARCH) String() string { return proto.EnumName(MetricsBase_ARCH_name, int32(x)) } func (x *MetricsBase_ARCH) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(MetricsBase_ARCH_value, data, "MetricsBase_ARCH") if err != nil { Loading @@ -98,8 +107,9 @@ func (x *MetricsBase_ARCH) UnmarshalJSON(data []byte) error { *x = MetricsBase_ARCH(value) return nil } func (MetricsBase_ARCH) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0, 1} return fileDescriptor_6039342a2ba47b72, []int{0, 1} } type ModuleTypeInfo_BUILDSYSTEM int32 Loading @@ -115,6 +125,7 @@ var ModuleTypeInfo_BUILDSYSTEM_name = map[int32]string{ 1: "SOONG", 2: "MAKE", } var ModuleTypeInfo_BUILDSYSTEM_value = map[string]int32{ "UNKNOWN": 0, "SOONG": 1, Loading @@ -126,9 +137,11 @@ func (x ModuleTypeInfo_BUILDSYSTEM) Enum() *ModuleTypeInfo_BUILDSYSTEM { *p = x return p } func (x ModuleTypeInfo_BUILDSYSTEM) String() string { return proto.EnumName(ModuleTypeInfo_BUILDSYSTEM_name, int32(x)) } func (x *ModuleTypeInfo_BUILDSYSTEM) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(ModuleTypeInfo_BUILDSYSTEM_value, data, "ModuleTypeInfo_BUILDSYSTEM") if err != nil { Loading @@ -137,8 +150,9 @@ func (x *ModuleTypeInfo_BUILDSYSTEM) UnmarshalJSON(data []byte) error { *x = ModuleTypeInfo_BUILDSYSTEM(value) return nil } func (ModuleTypeInfo_BUILDSYSTEM) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{2, 0} return fileDescriptor_6039342a2ba47b72, []int{3, 0} } type MetricsBase struct { Loading Loading @@ -182,6 +196,7 @@ type MetricsBase struct { SoongRuns []*PerfInfo `protobuf:"bytes,19,rep,name=soong_runs,json=soongRuns" json:"soong_runs,omitempty"` // The metrics for calling Ninja. NinjaRuns []*PerfInfo `protobuf:"bytes,20,rep,name=ninja_runs,json=ninjaRuns" json:"ninja_runs,omitempty"` BuildConfig *BuildConfig `protobuf:"bytes,23,opt,name=build_config,json=buildConfig" json:"build_config,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` Loading @@ -191,16 +206,17 @@ func (m *MetricsBase) Reset() { *m = MetricsBase{} } func (m *MetricsBase) String() string { return proto.CompactTextString(m) } func (*MetricsBase) ProtoMessage() {} func (*MetricsBase) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0} return fileDescriptor_6039342a2ba47b72, []int{0} } func (m *MetricsBase) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsBase.Unmarshal(m, b) } func (m *MetricsBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsBase.Marshal(b, m, deterministic) } func (dst *MetricsBase) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsBase.Merge(dst, src) func (m *MetricsBase) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsBase.Merge(m, src) } func (m *MetricsBase) XXX_Size() int { return xxx_messageInfo_MetricsBase.Size(m) Loading Loading @@ -356,6 +372,60 @@ func (m *MetricsBase) GetNinjaRuns() []*PerfInfo { return nil } func (m *MetricsBase) GetBuildConfig() *BuildConfig { if m != nil { return m.BuildConfig } return nil } type BuildConfig struct { UseGoma *bool `protobuf:"varint,1,opt,name=use_goma,json=useGoma" json:"use_goma,omitempty"` UseRbe *bool `protobuf:"varint,2,opt,name=use_rbe,json=useRbe" json:"use_rbe,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *BuildConfig) Reset() { *m = BuildConfig{} } func (m *BuildConfig) String() string { return proto.CompactTextString(m) } func (*BuildConfig) ProtoMessage() {} func (*BuildConfig) Descriptor() ([]byte, []int) { return fileDescriptor_6039342a2ba47b72, []int{1} } func (m *BuildConfig) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BuildConfig.Unmarshal(m, b) } func (m *BuildConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_BuildConfig.Marshal(b, m, deterministic) } func (m *BuildConfig) XXX_Merge(src proto.Message) { xxx_messageInfo_BuildConfig.Merge(m, src) } func (m *BuildConfig) XXX_Size() int { return xxx_messageInfo_BuildConfig.Size(m) } func (m *BuildConfig) XXX_DiscardUnknown() { xxx_messageInfo_BuildConfig.DiscardUnknown(m) } var xxx_messageInfo_BuildConfig proto.InternalMessageInfo func (m *BuildConfig) GetUseGoma() bool { if m != nil && m.UseGoma != nil { return *m.UseGoma } return false } func (m *BuildConfig) GetUseRbe() bool { if m != nil && m.UseRbe != nil { return *m.UseRbe } return false } type PerfInfo struct { // The description for the phase/action/part while the tool running. Desc *string `protobuf:"bytes,1,opt,name=desc" json:"desc,omitempty"` Loading @@ -378,16 +448,17 @@ func (m *PerfInfo) Reset() { *m = PerfInfo{} } func (m *PerfInfo) String() string { return proto.CompactTextString(m) } func (*PerfInfo) ProtoMessage() {} func (*PerfInfo) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{1} return fileDescriptor_6039342a2ba47b72, []int{2} } func (m *PerfInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PerfInfo.Unmarshal(m, b) } func (m *PerfInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_PerfInfo.Marshal(b, m, deterministic) } func (dst *PerfInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_PerfInfo.Merge(dst, src) func (m *PerfInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_PerfInfo.Merge(m, src) } func (m *PerfInfo) XXX_Size() int { return xxx_messageInfo_PerfInfo.Size(m) Loading Loading @@ -449,16 +520,17 @@ func (m *ModuleTypeInfo) Reset() { *m = ModuleTypeInfo{} } func (m *ModuleTypeInfo) String() string { return proto.CompactTextString(m) } func (*ModuleTypeInfo) ProtoMessage() {} func (*ModuleTypeInfo) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{2} return fileDescriptor_6039342a2ba47b72, []int{3} } func (m *ModuleTypeInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ModuleTypeInfo.Unmarshal(m, b) } func (m *ModuleTypeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_ModuleTypeInfo.Marshal(b, m, deterministic) } func (dst *ModuleTypeInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_ModuleTypeInfo.Merge(dst, src) func (m *ModuleTypeInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_ModuleTypeInfo.Merge(m, src) } func (m *ModuleTypeInfo) XXX_Size() int { return xxx_messageInfo_ModuleTypeInfo.Size(m) Loading Loading @@ -493,65 +565,70 @@ func (m *ModuleTypeInfo) GetNumOfModules() uint32 { } func init() { proto.RegisterType((*MetricsBase)(nil), "build_metrics.MetricsBase") proto.RegisterType((*PerfInfo)(nil), "build_metrics.PerfInfo") proto.RegisterType((*ModuleTypeInfo)(nil), "build_metrics.ModuleTypeInfo") proto.RegisterEnum("build_metrics.MetricsBase_BUILDVARIANT", MetricsBase_BUILDVARIANT_name, MetricsBase_BUILDVARIANT_value) proto.RegisterEnum("build_metrics.MetricsBase_ARCH", MetricsBase_ARCH_name, MetricsBase_ARCH_value) proto.RegisterEnum("build_metrics.ModuleTypeInfo_BUILDSYSTEM", ModuleTypeInfo_BUILDSYSTEM_name, ModuleTypeInfo_BUILDSYSTEM_value) proto.RegisterType((*MetricsBase)(nil), "build_metrics.MetricsBase") proto.RegisterType((*BuildConfig)(nil), "build_metrics.BuildConfig") proto.RegisterType((*PerfInfo)(nil), "build_metrics.PerfInfo") proto.RegisterType((*ModuleTypeInfo)(nil), "build_metrics.ModuleTypeInfo") } func init() { proto.RegisterFile("metrics.proto", fileDescriptor_metrics_9e7b895801991242) } var fileDescriptor_metrics_9e7b895801991242 = []byte{ // 783 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdd, 0x6e, 0xdb, 0x36, 0x14, 0xae, 0x62, 0x25, 0x96, 0x8e, 0x62, 0x57, 0x61, 0x02, 0x44, 0xc5, 0x50, 0x34, 0x30, 0xf6, 0x93, 0x01, 0x9b, 0x57, 0x18, 0x81, 0x11, 0x04, 0xbb, 0xb1, 0x13, 0xa3, 0x35, 0x5a, 0xdb, 0x85, 0x6c, 0x67, 0xdd, 0x2e, 0x46, 0x68, 0x12, 0xdd, 0x68, 0xb3, 0x44, 0x81, 0xa4, 0x8a, 0xf9, 0x21, 0xf6, 0x8c, 0x7b, 0x91, 0x5d, 0x0c, 0x3c, 0xb4, 0x5c, 0xa5, 0x17, 0x29, 0x72, 0x47, 0x9d, 0xef, 0x87, 0xdf, 0x91, 0xc8, 0x23, 0x68, 0x65, 0x4c, 0x89, 0x34, 0x96, 0xdd, 0x42, 0x70, 0xc5, 0x49, 0xeb, 0x8f, 0x32, 0x5d, 0x27, 0x74, 0x5b, 0xec, 0xfc, 0xe7, 0x80, 0x37, 0x31, 0xeb, 0x61, 0x24, 0x19, 0x79, 0x09, 0x27, 0x86, 0x90, 0x44, 0x8a, 0x51, 0x95, 0x66, 0x4c, 0xaa, 0x28, 0x2b, 0x02, 0xeb, 0xcc, 0x3a, 0x6f, 0x84, 0x04, 0xb1, 0x9b, 0x48, 0xb1, 0x45, 0x85, 0x90, 0x67, 0xe0, 0x18, 0x45, 0x9a, 0x04, 0x7b, 0x67, 0xd6, 0xb9, 0x1b, 0x36, 0xf1, 0x79, 0x9c, 0x90, 0x2b, 0x78, 0x56, 0xac, 0x23, 0xb5, 0xe2, 0x22, 0xa3, 0x1f, 0x99, 0x90, 0x29, 0xcf, 0x69, 0xcc, 0x13, 0x96, 0x47, 0x19, 0x0b, 0x1a, 0xc8, 0x3d, 0xad, 0x08, 0xb7, 0x06, 0xbf, 0xde, 0xc2, 0xe4, 0x1b, 0x68, 0xab, 0x48, 0x7c, 0x60, 0x8a, 0x16, 0x82, 0x27, 0x65, 0xac, 0x02, 0x1b, 0x05, 0x2d, 0x53, 0x7d, 0x67, 0x8a, 0xe4, 0x77, 0x38, 0xd9, 0xd2, 0x4c, 0x88, 0x8f, 0x91, 0x48, 0xa3, 0x5c, 0x05, 0xfb, 0x67, 0xd6, 0x79, 0xbb, 0xf7, 0x5d, 0xf7, 0x5e, 0xb7, 0xdd, 0x5a, 0xa7, 0xdd, 0xe1, 0x72, 0xfc, 0xf6, 0xe6, 0x76, 0x10, 0x8e, 0x07, 0xd3, 0xc5, 0x55, 0x63, 0x34, 0x7d, 0x15, 0x12, 0xe3, 0x34, 0xd4, 0x92, 0x5b, 0xe3, 0x43, 0xc6, 0xe0, 0x6d, 0xfd, 0x23, 0x11, 0xdf, 0x05, 0x07, 0x68, 0xfb, 0xe2, 0x01, 0xdb, 0x41, 0x78, 0xfd, 0xfa, 0xaa, 0xb9, 0x9c, 0xbe, 0x99, 0xce, 0x7e, 0x99, 0x86, 0x60, 0xc4, 0x03, 0x11, 0xdf, 0x91, 0x2e, 0x1c, 0xd7, 0xac, 0x76, 0x49, 0x9b, 0xd8, 0xd6, 0xd1, 0x27, 0x62, 0xb5, 0xf5, 0x0f, 0xb0, 0x0d, 0x44, 0xe3, 0xa2, 0xdc, 0xd1, 0x1d, 0xa4, 0xfb, 0x06, 0xb9, 0x2e, 0xca, 0x8a, 0x3d, 0x02, 0xf7, 0x8e, 0xcb, 0x6d, 0x4c, 0xf7, 0x91, 0x31, 0x1d, 0x2d, 0xc5, 0x90, 0x6f, 0xa1, 0x85, 0x36, 0xbd, 0x3c, 0x31, 0x56, 0xf0, 0x48, 0x2b, 0x4f, 0xcb, 0x7b, 0x79, 0x82, 0x6e, 0xa7, 0xd0, 0x44, 0x37, 0x2e, 0x03, 0x0f, 0x73, 0x1f, 0xe8, 0xc7, 0x99, 0x24, 0x9d, 0xed, 0x36, 0x5c, 0x52, 0xf6, 0xb7, 0x12, 0x51, 0x70, 0x88, 0xb0, 0x67, 0xe0, 0x91, 0x2e, 0xed, 0x38, 0xb1, 0xe0, 0x52, 0x6a, 0x8b, 0xd6, 0x27, 0xce, 0xb5, 0xae, 0xcd, 0x24, 0xf9, 0x16, 0x9e, 0xd6, 0x38, 0x18, 0xb8, 0x6d, 0x8e, 0xc9, 0x8e, 0x85, 0x41, 0x7e, 0x84, 0xe3, 0x1a, 0x6f, 0xd7, 0xdc, 0x53, 0xf3, 0x32, 0x77, 0xdc, 0x5a, 0x6e, 0x5e, 0x2a, 0x9a, 0xa4, 0x22, 0xf0, 0x4d, 0x6e, 0x5e, 0xaa, 0x9b, 0x54, 0x90, 0x4b, 0xf0, 0x24, 0x53, 0x65, 0x41, 0x15, 0xe7, 0x6b, 0x19, 0x1c, 0x9d, 0x35, 0xce, 0xbd, 0xde, 0xe9, 0x67, 0x2f, 0xe7, 0x1d, 0x13, 0xab, 0x71, 0xbe, 0xe2, 0x21, 0x20, 0x77, 0xa1, 0xa9, 0xe4, 0x02, 0xdc, 0xbf, 0x22, 0x95, 0x52, 0x51, 0xe6, 0x32, 0x20, 0x0f, 0xeb, 0x1c, 0xcd, 0x0c, 0xcb, 0x5c, 0x92, 0x3e, 0x80, 0xe4, 0x3c, 0xff, 0x60, 0x64, 0xc7, 0x0f, 0xcb, 0x5c, 0xa4, 0x56, 0xba, 0x3c, 0xcd, 0xff, 0x8c, 0x8c, 0xee, 0xe4, 0x0b, 0x3a, 0xa4, 0x6a, 0x5d, 0xe7, 0x25, 0x1c, 0xd6, 0xef, 0x05, 0x71, 0xc0, 0x5e, 0xce, 0x47, 0xa1, 0xff, 0x84, 0xb4, 0xc0, 0xd5, 0xab, 0x9b, 0xd1, 0x70, 0xf9, 0xca, 0xb7, 0x48, 0x13, 0xf4, 0x95, 0xf1, 0xf7, 0x3a, 0x3f, 0x83, 0xad, 0x0f, 0x00, 0xf1, 0xa0, 0x3a, 0x02, 0xfe, 0x13, 0x8d, 0x0e, 0xc2, 0x89, 0x6f, 0x11, 0x17, 0xf6, 0x07, 0xe1, 0xa4, 0x7f, 0xe1, 0xef, 0xe9, 0xda, 0xfb, 0xcb, 0xbe, 0xdf, 0x20, 0x00, 0x07, 0xef, 0x2f, 0xfb, 0xb4, 0x7f, 0xe1, 0xdb, 0x9d, 0x7f, 0x2c, 0x70, 0xaa, 0x1c, 0x84, 0x80, 0x9d, 0x30, 0x19, 0xe3, 0xac, 0x71, 0x43, 0x5c, 0xeb, 0x1a, 0x4e, 0x0b, 0x33, 0x59, 0x70, 0x4d, 0x9e, 0x03, 0x48, 0x15, 0x09, 0x85, 0xe3, 0x09, 0xe7, 0x88, 0x1d, 0xba, 0x58, 0xd1, 0x53, 0x89, 0x7c, 0x05, 0xae, 0x60, 0xd1, 0xda, 0xa0, 0x36, 0xa2, 0x8e, 0x2e, 0x20, 0xf8, 0x1c, 0x20, 0x63, 0x19, 0x17, 0x1b, 0x5a, 0x4a, 0x86, 0x53, 0xc2, 0x0e, 0x5d, 0x53, 0x59, 0x4a, 0xd6, 0xf9, 0xd7, 0x82, 0xf6, 0x84, 0x27, 0xe5, 0x9a, 0x2d, 0x36, 0x05, 0xc3, 0x54, 0x4b, 0x38, 0x34, 0xef, 0x4d, 0x6e, 0xa4, 0x62, 0x19, 0xa6, 0x6b, 0xf7, 0xbe, 0xff, 0xfc, 0x42, 0xdc, 0x13, 0x99, 0xe1, 0x32, 0xff, 0x75, 0xbe, 0x18, 0x4d, 0x6a, 0x57, 0x03, 0x25, 0x73, 0xb4, 0x21, 0x2f, 0xc0, 0xcb, 0x50, 0x43, 0xd5, 0xa6, 0xa8, 0xfa, 0x83, 0x6c, 0x67, 0x43, 0xbe, 0x86, 0x76, 0x5e, 0x66, 0x94, 0xaf, 0xa8, 0x29, 0x4a, 0xec, 0xb4, 0x15, 0x1e, 0xe6, 0x65, 0x36, 0x5b, 0x99, 0xfd, 0x64, 0xe7, 0x27, 0xf0, 0x6a, 0x7b, 0xdd, 0xff, 0x0a, 0x2e, 0xec, 0xcf, 0x67, 0xb3, 0xa9, 0xfe, 0x5c, 0x0e, 0xd8, 0x93, 0xc1, 0x9b, 0x91, 0xbf, 0x37, 0x3c, 0x7a, 0xdd, 0xf8, 0xad, 0xfa, 0x25, 0x50, 0xfc, 0x25, 0xfc, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xd4, 0x8d, 0x19, 0x89, 0x22, 0x06, 0x00, 0x00, func init() { proto.RegisterFile("metrics.proto", fileDescriptor_6039342a2ba47b72) } var fileDescriptor_6039342a2ba47b72 = []byte{ // 847 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdd, 0x6e, 0xe2, 0x46, 0x14, 0x5e, 0x02, 0x1b, 0xec, 0xe3, 0xc0, 0x3a, 0x93, 0x48, 0xf1, 0xb6, 0x5a, 0x2d, 0x42, 0xfd, 0xa1, 0x52, 0x4b, 0x57, 0x28, 0x42, 0x51, 0xd4, 0x5e, 0x00, 0x41, 0x59, 0xb4, 0x0b, 0xac, 0x06, 0x48, 0xb7, 0xbd, 0xa8, 0xe5, 0xd8, 0x43, 0xe2, 0x16, 0x7b, 0xac, 0x99, 0xf1, 0xaa, 0x79, 0x88, 0x3e, 0x51, 0x1f, 0xa6, 0xaf, 0x52, 0xcd, 0x19, 0x4c, 0x9c, 0x5c, 0xa4, 0xda, 0xbb, 0xf1, 0xf9, 0x7e, 0xe6, 0x3b, 0x1e, 0xcf, 0x31, 0x34, 0x12, 0xa6, 0x44, 0x1c, 0xca, 0x6e, 0x26, 0xb8, 0xe2, 0xa4, 0x71, 0x9d, 0xc7, 0x9b, 0xc8, 0xdf, 0x16, 0xdb, 0xff, 0xd8, 0xe0, 0x4c, 0xcd, 0x7a, 0x18, 0x48, 0x46, 0xde, 0xc0, 0xb1, 0x21, 0x44, 0x81, 0x62, 0xbe, 0x8a, 0x13, 0x26, 0x55, 0x90, 0x64, 0x5e, 0xa5, 0x55, 0xe9, 0x54, 0x29, 0x41, 0xec, 0x22, 0x50, 0x6c, 0x59, 0x20, 0xe4, 0x25, 0x58, 0x46, 0x11, 0x47, 0xde, 0x5e, 0xab, 0xd2, 0xb1, 0x69, 0x1d, 0x9f, 0x27, 0x11, 0x39, 0x87, 0x97, 0xd9, 0x26, 0x50, 0x6b, 0x2e, 0x12, 0xff, 0x13, 0x13, 0x32, 0xe6, 0xa9, 0x1f, 0xf2, 0x88, 0xa5, 0x41, 0xc2, 0xbc, 0x2a, 0x72, 0x4f, 0x0a, 0xc2, 0x95, 0xc1, 0x47, 0x5b, 0x98, 0x7c, 0x0d, 0x4d, 0x15, 0x88, 0x1b, 0xa6, 0xfc, 0x4c, 0xf0, 0x28, 0x0f, 0x95, 0x57, 0x43, 0x41, 0xc3, 0x54, 0x3f, 0x98, 0x22, 0xf9, 0x1d, 0x8e, 0xb7, 0x34, 0x13, 0xe2, 0x53, 0x20, 0xe2, 0x20, 0x55, 0xde, 0xf3, 0x56, 0xa5, 0xd3, 0xec, 0x7d, 0xdb, 0x7d, 0xd0, 0x6d, 0xb7, 0xd4, 0x69, 0x77, 0xb8, 0x9a, 0xbc, 0xbf, 0xb8, 0x1a, 0xd0, 0xc9, 0x60, 0xb6, 0x3c, 0xaf, 0x8e, 0x67, 0x97, 0x94, 0x18, 0xa7, 0xa1, 0x96, 0x5c, 0x19, 0x1f, 0x32, 0x01, 0x67, 0xeb, 0x1f, 0x88, 0xf0, 0xd6, 0xdb, 0x47, 0xdb, 0xd7, 0x4f, 0xd8, 0x0e, 0xe8, 0xe8, 0xed, 0x79, 0x7d, 0x35, 0x7b, 0x37, 0x9b, 0xff, 0x32, 0xa3, 0x60, 0xc4, 0x03, 0x11, 0xde, 0x92, 0x2e, 0x1c, 0x95, 0xac, 0x76, 0x49, 0xeb, 0xd8, 0xd6, 0xe1, 0x3d, 0xb1, 0xd8, 0xfa, 0x7b, 0xd8, 0x06, 0xf2, 0xc3, 0x2c, 0xdf, 0xd1, 0x2d, 0xa4, 0xbb, 0x06, 0x19, 0x65, 0x79, 0xc1, 0x1e, 0x83, 0x7d, 0xcb, 0xe5, 0x36, 0xa6, 0xfd, 0x99, 0x31, 0x2d, 0x2d, 0xc5, 0x90, 0xef, 0xa1, 0x81, 0x36, 0xbd, 0x34, 0x32, 0x56, 0xf0, 0x99, 0x56, 0x8e, 0x96, 0xf7, 0xd2, 0x08, 0xdd, 0x4e, 0xa0, 0x8e, 0x6e, 0x5c, 0x7a, 0x0e, 0xe6, 0xde, 0xd7, 0x8f, 0x73, 0x49, 0xda, 0xdb, 0x6d, 0xb8, 0xf4, 0xd9, 0x5f, 0x4a, 0x04, 0xde, 0x01, 0xc2, 0x8e, 0x81, 0xc7, 0xba, 0xb4, 0xe3, 0x84, 0x82, 0x4b, 0xa9, 0x2d, 0x1a, 0xf7, 0x9c, 0x91, 0xae, 0xcd, 0x25, 0xf9, 0x06, 0x5e, 0x94, 0x38, 0x18, 0xb8, 0x69, 0x3e, 0x93, 0x1d, 0x0b, 0x83, 0xfc, 0x00, 0x47, 0x25, 0xde, 0xae, 0xb9, 0x17, 0xe6, 0x65, 0xee, 0xb8, 0xa5, 0xdc, 0x3c, 0x57, 0x7e, 0x14, 0x0b, 0xcf, 0x35, 0xb9, 0x79, 0xae, 0x2e, 0x62, 0x41, 0xce, 0xc0, 0x91, 0x4c, 0xe5, 0x99, 0xaf, 0x38, 0xdf, 0x48, 0xef, 0xb0, 0x55, 0xed, 0x38, 0xbd, 0x93, 0x47, 0x2f, 0xe7, 0x03, 0x13, 0xeb, 0x49, 0xba, 0xe6, 0x14, 0x90, 0xbb, 0xd4, 0x54, 0x72, 0x0a, 0xf6, 0x9f, 0x81, 0x8a, 0x7d, 0x91, 0xa7, 0xd2, 0x23, 0x4f, 0xeb, 0x2c, 0xcd, 0xa4, 0x79, 0x2a, 0x49, 0x1f, 0x40, 0x72, 0x9e, 0xde, 0x18, 0xd9, 0xd1, 0xd3, 0x32, 0x1b, 0xa9, 0x85, 0x2e, 0x8d, 0xd3, 0x3f, 0x02, 0xa3, 0x3b, 0xfe, 0x1f, 0x1d, 0x52, 0x51, 0xf7, 0x33, 0x1c, 0x18, 0x52, 0xc8, 0xd3, 0x75, 0x7c, 0xe3, 0x9d, 0xb4, 0x2a, 0x1d, 0xa7, 0xf7, 0xc5, 0x23, 0x25, 0xde, 0x90, 0x11, 0x32, 0xa8, 0x73, 0x7d, 0xff, 0xd0, 0x7e, 0x03, 0x07, 0xe5, 0x6b, 0x45, 0x2c, 0xa8, 0xad, 0x16, 0x63, 0xea, 0x3e, 0x23, 0x0d, 0xb0, 0xf5, 0xea, 0x62, 0x3c, 0x5c, 0x5d, 0xba, 0x15, 0x52, 0x07, 0x7d, 0xe3, 0xdc, 0xbd, 0xf6, 0x4f, 0x50, 0xd3, 0xdf, 0x0f, 0x71, 0xa0, 0xf8, 0x82, 0xdc, 0x67, 0x1a, 0x1d, 0xd0, 0xa9, 0x5b, 0x21, 0x36, 0x3c, 0x1f, 0xd0, 0x69, 0xff, 0xd4, 0xdd, 0xd3, 0xb5, 0x8f, 0x67, 0x7d, 0xb7, 0x4a, 0x00, 0xf6, 0x3f, 0x9e, 0xf5, 0xfd, 0xfe, 0xa9, 0x5b, 0x6b, 0x0f, 0xc0, 0x29, 0x65, 0xd1, 0xa3, 0x28, 0x97, 0xcc, 0xbf, 0xe1, 0x49, 0x80, 0x03, 0xcb, 0xa2, 0xf5, 0x5c, 0xb2, 0x4b, 0x9e, 0x04, 0xfa, 0x44, 0x35, 0x24, 0xae, 0x19, 0x0e, 0x29, 0x8b, 0xee, 0xe7, 0x92, 0xd1, 0x6b, 0xd6, 0xfe, 0xbb, 0x02, 0x56, 0xf1, 0x26, 0x08, 0x81, 0x5a, 0xc4, 0x64, 0x88, 0x62, 0x9b, 0xe2, 0x5a, 0xd7, 0x70, 0x5e, 0x99, 0xd9, 0x86, 0x6b, 0xf2, 0x0a, 0x40, 0xaa, 0x40, 0x28, 0x1c, 0x90, 0x38, 0xc9, 0x6a, 0xd4, 0xc6, 0x8a, 0x9e, 0x8b, 0xe4, 0x4b, 0xb0, 0x05, 0x0b, 0x36, 0x06, 0xad, 0x21, 0x6a, 0xe9, 0x02, 0x82, 0xaf, 0x00, 0x12, 0x96, 0x70, 0x71, 0xe7, 0xe7, 0x92, 0xe1, 0x9c, 0xaa, 0x51, 0xdb, 0x54, 0x56, 0x92, 0xb5, 0xff, 0xad, 0x40, 0x73, 0xca, 0xa3, 0x7c, 0xc3, 0x96, 0x77, 0x19, 0xc3, 0x54, 0xab, 0xe2, 0x50, 0xe4, 0x9d, 0x54, 0x2c, 0xc1, 0x74, 0xcd, 0xde, 0x77, 0x8f, 0xaf, 0xe4, 0x03, 0x91, 0x19, 0x6f, 0x8b, 0x5f, 0x17, 0xcb, 0xf1, 0xb4, 0x74, 0x39, 0x51, 0xb2, 0x40, 0x1b, 0xf2, 0x1a, 0x9c, 0x04, 0x35, 0xbe, 0xba, 0xcb, 0x8a, 0xfe, 0x20, 0xd9, 0xd9, 0x90, 0xaf, 0xa0, 0x99, 0xe6, 0x89, 0xcf, 0xd7, 0xbe, 0x29, 0x4a, 0xec, 0xb4, 0x41, 0x0f, 0xd2, 0x3c, 0x99, 0xaf, 0xcd, 0x7e, 0xb2, 0xfd, 0x23, 0x38, 0xa5, 0xbd, 0x1e, 0x1e, 0xa4, 0x0d, 0xcf, 0x17, 0xf3, 0xf9, 0x4c, 0x9f, 0xb8, 0x05, 0xb5, 0xe9, 0xe0, 0xdd, 0xd8, 0xdd, 0x1b, 0x1e, 0xbe, 0xad, 0xfe, 0x56, 0xfc, 0x94, 0x7c, 0xfc, 0x29, 0xfd, 0x17, 0x00, 0x00, 0xff, 0xff, 0x76, 0x9a, 0xf7, 0xbd, 0xa4, 0x06, 0x00, 0x00, } ui/metrics/metrics_proto/metrics.proto +8 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,14 @@ message MetricsBase { // The metrics for calling Ninja. repeated PerfInfo ninja_runs = 20; optional BuildConfig build_config = 23; } message BuildConfig { optional bool use_goma = 1; optional bool use_rbe = 2; } message PerfInfo { Loading Loading
ui/build/config.go +21 −2 Original line number Diff line number Diff line Loading @@ -15,9 +15,9 @@ package build import ( "fmt" "io/ioutil" "log" "fmt" "os" "path/filepath" "runtime" Loading @@ -26,6 +26,9 @@ import ( "time" "android/soong/shared" "github.com/golang/protobuf/proto" smpb "android/soong/ui/metrics/metrics_proto" ) type Config struct{ *configImpl } Loading Loading @@ -233,7 +236,23 @@ func NewConfig(ctx Context, args ...string) Config { } } return Config{ret} c := Config{ret} storeConfigMetrics(ctx, c) return c } // storeConfigMetrics selects a set of configuration information and store in // the metrics system for further analysis. func storeConfigMetrics(ctx Context, config Config) { if ctx.Metrics == nil { return } b := &smpb.BuildConfig{ UseGoma: proto.Bool(config.UseGoma()), UseRbe: proto.Bool(config.UseRBE()), } ctx.Metrics.BuildConfig(b) } func (c *configImpl) parseArgs(ctx Context, args []string) { Loading
ui/metrics/metrics.go +4 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,10 @@ func (m *Metrics) SetTimeMetrics(perf metrics_proto.PerfInfo) { } } func (m *Metrics) BuildConfig(b *metrics_proto.BuildConfig) { m.metrics.BuildConfig = b } func (m *Metrics) SetMetadataMetrics(metadata map[string]string) { for k, v := range metadata { switch k { Loading
ui/metrics/metrics_proto/metrics.pb.go +153 −76 Original line number Diff line number Diff line Loading @@ -3,9 +3,11 @@ package metrics_proto import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" import ( fmt "fmt" proto "github.com/golang/protobuf/proto" math "math" ) // Reference imports to suppress errors if they are not otherwise used. var _ = proto.Marshal Loading @@ -16,7 +18,7 @@ var _ = math.Inf // is compatible with the proto package it is being compiled against. // A compilation error at this line likely means your copy of the // proto package needs to be updated. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package type MetricsBase_BUILDVARIANT int32 Loading @@ -31,6 +33,7 @@ var MetricsBase_BUILDVARIANT_name = map[int32]string{ 1: "USERDEBUG", 2: "ENG", } var MetricsBase_BUILDVARIANT_value = map[string]int32{ "USER": 0, "USERDEBUG": 1, Loading @@ -42,9 +45,11 @@ func (x MetricsBase_BUILDVARIANT) Enum() *MetricsBase_BUILDVARIANT { *p = x return p } func (x MetricsBase_BUILDVARIANT) String() string { return proto.EnumName(MetricsBase_BUILDVARIANT_name, int32(x)) } func (x *MetricsBase_BUILDVARIANT) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(MetricsBase_BUILDVARIANT_value, data, "MetricsBase_BUILDVARIANT") if err != nil { Loading @@ -53,8 +58,9 @@ func (x *MetricsBase_BUILDVARIANT) UnmarshalJSON(data []byte) error { *x = MetricsBase_BUILDVARIANT(value) return nil } func (MetricsBase_BUILDVARIANT) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0, 0} return fileDescriptor_6039342a2ba47b72, []int{0, 0} } type MetricsBase_ARCH int32 Loading @@ -74,6 +80,7 @@ var MetricsBase_ARCH_name = map[int32]string{ 3: "X86", 4: "X86_64", } var MetricsBase_ARCH_value = map[string]int32{ "UNKNOWN": 0, "ARM": 1, Loading @@ -87,9 +94,11 @@ func (x MetricsBase_ARCH) Enum() *MetricsBase_ARCH { *p = x return p } func (x MetricsBase_ARCH) String() string { return proto.EnumName(MetricsBase_ARCH_name, int32(x)) } func (x *MetricsBase_ARCH) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(MetricsBase_ARCH_value, data, "MetricsBase_ARCH") if err != nil { Loading @@ -98,8 +107,9 @@ func (x *MetricsBase_ARCH) UnmarshalJSON(data []byte) error { *x = MetricsBase_ARCH(value) return nil } func (MetricsBase_ARCH) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0, 1} return fileDescriptor_6039342a2ba47b72, []int{0, 1} } type ModuleTypeInfo_BUILDSYSTEM int32 Loading @@ -115,6 +125,7 @@ var ModuleTypeInfo_BUILDSYSTEM_name = map[int32]string{ 1: "SOONG", 2: "MAKE", } var ModuleTypeInfo_BUILDSYSTEM_value = map[string]int32{ "UNKNOWN": 0, "SOONG": 1, Loading @@ -126,9 +137,11 @@ func (x ModuleTypeInfo_BUILDSYSTEM) Enum() *ModuleTypeInfo_BUILDSYSTEM { *p = x return p } func (x ModuleTypeInfo_BUILDSYSTEM) String() string { return proto.EnumName(ModuleTypeInfo_BUILDSYSTEM_name, int32(x)) } func (x *ModuleTypeInfo_BUILDSYSTEM) UnmarshalJSON(data []byte) error { value, err := proto.UnmarshalJSONEnum(ModuleTypeInfo_BUILDSYSTEM_value, data, "ModuleTypeInfo_BUILDSYSTEM") if err != nil { Loading @@ -137,8 +150,9 @@ func (x *ModuleTypeInfo_BUILDSYSTEM) UnmarshalJSON(data []byte) error { *x = ModuleTypeInfo_BUILDSYSTEM(value) return nil } func (ModuleTypeInfo_BUILDSYSTEM) EnumDescriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{2, 0} return fileDescriptor_6039342a2ba47b72, []int{3, 0} } type MetricsBase struct { Loading Loading @@ -182,6 +196,7 @@ type MetricsBase struct { SoongRuns []*PerfInfo `protobuf:"bytes,19,rep,name=soong_runs,json=soongRuns" json:"soong_runs,omitempty"` // The metrics for calling Ninja. NinjaRuns []*PerfInfo `protobuf:"bytes,20,rep,name=ninja_runs,json=ninjaRuns" json:"ninja_runs,omitempty"` BuildConfig *BuildConfig `protobuf:"bytes,23,opt,name=build_config,json=buildConfig" json:"build_config,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` Loading @@ -191,16 +206,17 @@ func (m *MetricsBase) Reset() { *m = MetricsBase{} } func (m *MetricsBase) String() string { return proto.CompactTextString(m) } func (*MetricsBase) ProtoMessage() {} func (*MetricsBase) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{0} return fileDescriptor_6039342a2ba47b72, []int{0} } func (m *MetricsBase) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsBase.Unmarshal(m, b) } func (m *MetricsBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsBase.Marshal(b, m, deterministic) } func (dst *MetricsBase) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsBase.Merge(dst, src) func (m *MetricsBase) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsBase.Merge(m, src) } func (m *MetricsBase) XXX_Size() int { return xxx_messageInfo_MetricsBase.Size(m) Loading Loading @@ -356,6 +372,60 @@ func (m *MetricsBase) GetNinjaRuns() []*PerfInfo { return nil } func (m *MetricsBase) GetBuildConfig() *BuildConfig { if m != nil { return m.BuildConfig } return nil } type BuildConfig struct { UseGoma *bool `protobuf:"varint,1,opt,name=use_goma,json=useGoma" json:"use_goma,omitempty"` UseRbe *bool `protobuf:"varint,2,opt,name=use_rbe,json=useRbe" json:"use_rbe,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *BuildConfig) Reset() { *m = BuildConfig{} } func (m *BuildConfig) String() string { return proto.CompactTextString(m) } func (*BuildConfig) ProtoMessage() {} func (*BuildConfig) Descriptor() ([]byte, []int) { return fileDescriptor_6039342a2ba47b72, []int{1} } func (m *BuildConfig) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BuildConfig.Unmarshal(m, b) } func (m *BuildConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_BuildConfig.Marshal(b, m, deterministic) } func (m *BuildConfig) XXX_Merge(src proto.Message) { xxx_messageInfo_BuildConfig.Merge(m, src) } func (m *BuildConfig) XXX_Size() int { return xxx_messageInfo_BuildConfig.Size(m) } func (m *BuildConfig) XXX_DiscardUnknown() { xxx_messageInfo_BuildConfig.DiscardUnknown(m) } var xxx_messageInfo_BuildConfig proto.InternalMessageInfo func (m *BuildConfig) GetUseGoma() bool { if m != nil && m.UseGoma != nil { return *m.UseGoma } return false } func (m *BuildConfig) GetUseRbe() bool { if m != nil && m.UseRbe != nil { return *m.UseRbe } return false } type PerfInfo struct { // The description for the phase/action/part while the tool running. Desc *string `protobuf:"bytes,1,opt,name=desc" json:"desc,omitempty"` Loading @@ -378,16 +448,17 @@ func (m *PerfInfo) Reset() { *m = PerfInfo{} } func (m *PerfInfo) String() string { return proto.CompactTextString(m) } func (*PerfInfo) ProtoMessage() {} func (*PerfInfo) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{1} return fileDescriptor_6039342a2ba47b72, []int{2} } func (m *PerfInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PerfInfo.Unmarshal(m, b) } func (m *PerfInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_PerfInfo.Marshal(b, m, deterministic) } func (dst *PerfInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_PerfInfo.Merge(dst, src) func (m *PerfInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_PerfInfo.Merge(m, src) } func (m *PerfInfo) XXX_Size() int { return xxx_messageInfo_PerfInfo.Size(m) Loading Loading @@ -449,16 +520,17 @@ func (m *ModuleTypeInfo) Reset() { *m = ModuleTypeInfo{} } func (m *ModuleTypeInfo) String() string { return proto.CompactTextString(m) } func (*ModuleTypeInfo) ProtoMessage() {} func (*ModuleTypeInfo) Descriptor() ([]byte, []int) { return fileDescriptor_metrics_9e7b895801991242, []int{2} return fileDescriptor_6039342a2ba47b72, []int{3} } func (m *ModuleTypeInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ModuleTypeInfo.Unmarshal(m, b) } func (m *ModuleTypeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_ModuleTypeInfo.Marshal(b, m, deterministic) } func (dst *ModuleTypeInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_ModuleTypeInfo.Merge(dst, src) func (m *ModuleTypeInfo) XXX_Merge(src proto.Message) { xxx_messageInfo_ModuleTypeInfo.Merge(m, src) } func (m *ModuleTypeInfo) XXX_Size() int { return xxx_messageInfo_ModuleTypeInfo.Size(m) Loading Loading @@ -493,65 +565,70 @@ func (m *ModuleTypeInfo) GetNumOfModules() uint32 { } func init() { proto.RegisterType((*MetricsBase)(nil), "build_metrics.MetricsBase") proto.RegisterType((*PerfInfo)(nil), "build_metrics.PerfInfo") proto.RegisterType((*ModuleTypeInfo)(nil), "build_metrics.ModuleTypeInfo") proto.RegisterEnum("build_metrics.MetricsBase_BUILDVARIANT", MetricsBase_BUILDVARIANT_name, MetricsBase_BUILDVARIANT_value) proto.RegisterEnum("build_metrics.MetricsBase_ARCH", MetricsBase_ARCH_name, MetricsBase_ARCH_value) proto.RegisterEnum("build_metrics.ModuleTypeInfo_BUILDSYSTEM", ModuleTypeInfo_BUILDSYSTEM_name, ModuleTypeInfo_BUILDSYSTEM_value) proto.RegisterType((*MetricsBase)(nil), "build_metrics.MetricsBase") proto.RegisterType((*BuildConfig)(nil), "build_metrics.BuildConfig") proto.RegisterType((*PerfInfo)(nil), "build_metrics.PerfInfo") proto.RegisterType((*ModuleTypeInfo)(nil), "build_metrics.ModuleTypeInfo") } func init() { proto.RegisterFile("metrics.proto", fileDescriptor_metrics_9e7b895801991242) } var fileDescriptor_metrics_9e7b895801991242 = []byte{ // 783 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdd, 0x6e, 0xdb, 0x36, 0x14, 0xae, 0x62, 0x25, 0x96, 0x8e, 0x62, 0x57, 0x61, 0x02, 0x44, 0xc5, 0x50, 0x34, 0x30, 0xf6, 0x93, 0x01, 0x9b, 0x57, 0x18, 0x81, 0x11, 0x04, 0xbb, 0xb1, 0x13, 0xa3, 0x35, 0x5a, 0xdb, 0x85, 0x6c, 0x67, 0xdd, 0x2e, 0x46, 0x68, 0x12, 0xdd, 0x68, 0xb3, 0x44, 0x81, 0xa4, 0x8a, 0xf9, 0x21, 0xf6, 0x8c, 0x7b, 0x91, 0x5d, 0x0c, 0x3c, 0xb4, 0x5c, 0xa5, 0x17, 0x29, 0x72, 0x47, 0x9d, 0xef, 0x87, 0xdf, 0x91, 0xc8, 0x23, 0x68, 0x65, 0x4c, 0x89, 0x34, 0x96, 0xdd, 0x42, 0x70, 0xc5, 0x49, 0xeb, 0x8f, 0x32, 0x5d, 0x27, 0x74, 0x5b, 0xec, 0xfc, 0xe7, 0x80, 0x37, 0x31, 0xeb, 0x61, 0x24, 0x19, 0x79, 0x09, 0x27, 0x86, 0x90, 0x44, 0x8a, 0x51, 0x95, 0x66, 0x4c, 0xaa, 0x28, 0x2b, 0x02, 0xeb, 0xcc, 0x3a, 0x6f, 0x84, 0x04, 0xb1, 0x9b, 0x48, 0xb1, 0x45, 0x85, 0x90, 0x67, 0xe0, 0x18, 0x45, 0x9a, 0x04, 0x7b, 0x67, 0xd6, 0xb9, 0x1b, 0x36, 0xf1, 0x79, 0x9c, 0x90, 0x2b, 0x78, 0x56, 0xac, 0x23, 0xb5, 0xe2, 0x22, 0xa3, 0x1f, 0x99, 0x90, 0x29, 0xcf, 0x69, 0xcc, 0x13, 0x96, 0x47, 0x19, 0x0b, 0x1a, 0xc8, 0x3d, 0xad, 0x08, 0xb7, 0x06, 0xbf, 0xde, 0xc2, 0xe4, 0x1b, 0x68, 0xab, 0x48, 0x7c, 0x60, 0x8a, 0x16, 0x82, 0x27, 0x65, 0xac, 0x02, 0x1b, 0x05, 0x2d, 0x53, 0x7d, 0x67, 0x8a, 0xe4, 0x77, 0x38, 0xd9, 0xd2, 0x4c, 0x88, 0x8f, 0x91, 0x48, 0xa3, 0x5c, 0x05, 0xfb, 0x67, 0xd6, 0x79, 0xbb, 0xf7, 0x5d, 0xf7, 0x5e, 0xb7, 0xdd, 0x5a, 0xa7, 0xdd, 0xe1, 0x72, 0xfc, 0xf6, 0xe6, 0x76, 0x10, 0x8e, 0x07, 0xd3, 0xc5, 0x55, 0x63, 0x34, 0x7d, 0x15, 0x12, 0xe3, 0x34, 0xd4, 0x92, 0x5b, 0xe3, 0x43, 0xc6, 0xe0, 0x6d, 0xfd, 0x23, 0x11, 0xdf, 0x05, 0x07, 0x68, 0xfb, 0xe2, 0x01, 0xdb, 0x41, 0x78, 0xfd, 0xfa, 0xaa, 0xb9, 0x9c, 0xbe, 0x99, 0xce, 0x7e, 0x99, 0x86, 0x60, 0xc4, 0x03, 0x11, 0xdf, 0x91, 0x2e, 0x1c, 0xd7, 0xac, 0x76, 0x49, 0x9b, 0xd8, 0xd6, 0xd1, 0x27, 0x62, 0xb5, 0xf5, 0x0f, 0xb0, 0x0d, 0x44, 0xe3, 0xa2, 0xdc, 0xd1, 0x1d, 0xa4, 0xfb, 0x06, 0xb9, 0x2e, 0xca, 0x8a, 0x3d, 0x02, 0xf7, 0x8e, 0xcb, 0x6d, 0x4c, 0xf7, 0x91, 0x31, 0x1d, 0x2d, 0xc5, 0x90, 0x6f, 0xa1, 0x85, 0x36, 0xbd, 0x3c, 0x31, 0x56, 0xf0, 0x48, 0x2b, 0x4f, 0xcb, 0x7b, 0x79, 0x82, 0x6e, 0xa7, 0xd0, 0x44, 0x37, 0x2e, 0x03, 0x0f, 0x73, 0x1f, 0xe8, 0xc7, 0x99, 0x24, 0x9d, 0xed, 0x36, 0x5c, 0x52, 0xf6, 0xb7, 0x12, 0x51, 0x70, 0x88, 0xb0, 0x67, 0xe0, 0x91, 0x2e, 0xed, 0x38, 0xb1, 0xe0, 0x52, 0x6a, 0x8b, 0xd6, 0x27, 0xce, 0xb5, 0xae, 0xcd, 0x24, 0xf9, 0x16, 0x9e, 0xd6, 0x38, 0x18, 0xb8, 0x6d, 0x8e, 0xc9, 0x8e, 0x85, 0x41, 0x7e, 0x84, 0xe3, 0x1a, 0x6f, 0xd7, 0xdc, 0x53, 0xf3, 0x32, 0x77, 0xdc, 0x5a, 0x6e, 0x5e, 0x2a, 0x9a, 0xa4, 0x22, 0xf0, 0x4d, 0x6e, 0x5e, 0xaa, 0x9b, 0x54, 0x90, 0x4b, 0xf0, 0x24, 0x53, 0x65, 0x41, 0x15, 0xe7, 0x6b, 0x19, 0x1c, 0x9d, 0x35, 0xce, 0xbd, 0xde, 0xe9, 0x67, 0x2f, 0xe7, 0x1d, 0x13, 0xab, 0x71, 0xbe, 0xe2, 0x21, 0x20, 0x77, 0xa1, 0xa9, 0xe4, 0x02, 0xdc, 0xbf, 0x22, 0x95, 0x52, 0x51, 0xe6, 0x32, 0x20, 0x0f, 0xeb, 0x1c, 0xcd, 0x0c, 0xcb, 0x5c, 0x92, 0x3e, 0x80, 0xe4, 0x3c, 0xff, 0x60, 0x64, 0xc7, 0x0f, 0xcb, 0x5c, 0xa4, 0x56, 0xba, 0x3c, 0xcd, 0xff, 0x8c, 0x8c, 0xee, 0xe4, 0x0b, 0x3a, 0xa4, 0x6a, 0x5d, 0xe7, 0x25, 0x1c, 0xd6, 0xef, 0x05, 0x71, 0xc0, 0x5e, 0xce, 0x47, 0xa1, 0xff, 0x84, 0xb4, 0xc0, 0xd5, 0xab, 0x9b, 0xd1, 0x70, 0xf9, 0xca, 0xb7, 0x48, 0x13, 0xf4, 0x95, 0xf1, 0xf7, 0x3a, 0x3f, 0x83, 0xad, 0x0f, 0x00, 0xf1, 0xa0, 0x3a, 0x02, 0xfe, 0x13, 0x8d, 0x0e, 0xc2, 0x89, 0x6f, 0x11, 0x17, 0xf6, 0x07, 0xe1, 0xa4, 0x7f, 0xe1, 0xef, 0xe9, 0xda, 0xfb, 0xcb, 0xbe, 0xdf, 0x20, 0x00, 0x07, 0xef, 0x2f, 0xfb, 0xb4, 0x7f, 0xe1, 0xdb, 0x9d, 0x7f, 0x2c, 0x70, 0xaa, 0x1c, 0x84, 0x80, 0x9d, 0x30, 0x19, 0xe3, 0xac, 0x71, 0x43, 0x5c, 0xeb, 0x1a, 0x4e, 0x0b, 0x33, 0x59, 0x70, 0x4d, 0x9e, 0x03, 0x48, 0x15, 0x09, 0x85, 0xe3, 0x09, 0xe7, 0x88, 0x1d, 0xba, 0x58, 0xd1, 0x53, 0x89, 0x7c, 0x05, 0xae, 0x60, 0xd1, 0xda, 0xa0, 0x36, 0xa2, 0x8e, 0x2e, 0x20, 0xf8, 0x1c, 0x20, 0x63, 0x19, 0x17, 0x1b, 0x5a, 0x4a, 0x86, 0x53, 0xc2, 0x0e, 0x5d, 0x53, 0x59, 0x4a, 0xd6, 0xf9, 0xd7, 0x82, 0xf6, 0x84, 0x27, 0xe5, 0x9a, 0x2d, 0x36, 0x05, 0xc3, 0x54, 0x4b, 0x38, 0x34, 0xef, 0x4d, 0x6e, 0xa4, 0x62, 0x19, 0xa6, 0x6b, 0xf7, 0xbe, 0xff, 0xfc, 0x42, 0xdc, 0x13, 0x99, 0xe1, 0x32, 0xff, 0x75, 0xbe, 0x18, 0x4d, 0x6a, 0x57, 0x03, 0x25, 0x73, 0xb4, 0x21, 0x2f, 0xc0, 0xcb, 0x50, 0x43, 0xd5, 0xa6, 0xa8, 0xfa, 0x83, 0x6c, 0x67, 0x43, 0xbe, 0x86, 0x76, 0x5e, 0x66, 0x94, 0xaf, 0xa8, 0x29, 0x4a, 0xec, 0xb4, 0x15, 0x1e, 0xe6, 0x65, 0x36, 0x5b, 0x99, 0xfd, 0x64, 0xe7, 0x27, 0xf0, 0x6a, 0x7b, 0xdd, 0xff, 0x0a, 0x2e, 0xec, 0xcf, 0x67, 0xb3, 0xa9, 0xfe, 0x5c, 0x0e, 0xd8, 0x93, 0xc1, 0x9b, 0x91, 0xbf, 0x37, 0x3c, 0x7a, 0xdd, 0xf8, 0xad, 0xfa, 0x25, 0x50, 0xfc, 0x25, 0xfc, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xd4, 0x8d, 0x19, 0x89, 0x22, 0x06, 0x00, 0x00, func init() { proto.RegisterFile("metrics.proto", fileDescriptor_6039342a2ba47b72) } var fileDescriptor_6039342a2ba47b72 = []byte{ // 847 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdd, 0x6e, 0xe2, 0x46, 0x14, 0x5e, 0x02, 0x1b, 0xec, 0xe3, 0xc0, 0x3a, 0x93, 0x48, 0xf1, 0xb6, 0x5a, 0x2d, 0x42, 0xfd, 0xa1, 0x52, 0x4b, 0x57, 0x28, 0x42, 0x51, 0xd4, 0x5e, 0x00, 0x41, 0x59, 0xb4, 0x0b, 0xac, 0x06, 0x48, 0xb7, 0xbd, 0xa8, 0xe5, 0xd8, 0x43, 0xe2, 0x16, 0x7b, 0xac, 0x99, 0xf1, 0xaa, 0x79, 0x88, 0x3e, 0x51, 0x1f, 0xa6, 0xaf, 0x52, 0xcd, 0x19, 0x4c, 0x9c, 0x5c, 0xa4, 0xda, 0xbb, 0xf1, 0xf9, 0x7e, 0xe6, 0x3b, 0x1e, 0xcf, 0x31, 0x34, 0x12, 0xa6, 0x44, 0x1c, 0xca, 0x6e, 0x26, 0xb8, 0xe2, 0xa4, 0x71, 0x9d, 0xc7, 0x9b, 0xc8, 0xdf, 0x16, 0xdb, 0xff, 0xd8, 0xe0, 0x4c, 0xcd, 0x7a, 0x18, 0x48, 0x46, 0xde, 0xc0, 0xb1, 0x21, 0x44, 0x81, 0x62, 0xbe, 0x8a, 0x13, 0x26, 0x55, 0x90, 0x64, 0x5e, 0xa5, 0x55, 0xe9, 0x54, 0x29, 0x41, 0xec, 0x22, 0x50, 0x6c, 0x59, 0x20, 0xe4, 0x25, 0x58, 0x46, 0x11, 0x47, 0xde, 0x5e, 0xab, 0xd2, 0xb1, 0x69, 0x1d, 0x9f, 0x27, 0x11, 0x39, 0x87, 0x97, 0xd9, 0x26, 0x50, 0x6b, 0x2e, 0x12, 0xff, 0x13, 0x13, 0x32, 0xe6, 0xa9, 0x1f, 0xf2, 0x88, 0xa5, 0x41, 0xc2, 0xbc, 0x2a, 0x72, 0x4f, 0x0a, 0xc2, 0x95, 0xc1, 0x47, 0x5b, 0x98, 0x7c, 0x0d, 0x4d, 0x15, 0x88, 0x1b, 0xa6, 0xfc, 0x4c, 0xf0, 0x28, 0x0f, 0x95, 0x57, 0x43, 0x41, 0xc3, 0x54, 0x3f, 0x98, 0x22, 0xf9, 0x1d, 0x8e, 0xb7, 0x34, 0x13, 0xe2, 0x53, 0x20, 0xe2, 0x20, 0x55, 0xde, 0xf3, 0x56, 0xa5, 0xd3, 0xec, 0x7d, 0xdb, 0x7d, 0xd0, 0x6d, 0xb7, 0xd4, 0x69, 0x77, 0xb8, 0x9a, 0xbc, 0xbf, 0xb8, 0x1a, 0xd0, 0xc9, 0x60, 0xb6, 0x3c, 0xaf, 0x8e, 0x67, 0x97, 0x94, 0x18, 0xa7, 0xa1, 0x96, 0x5c, 0x19, 0x1f, 0x32, 0x01, 0x67, 0xeb, 0x1f, 0x88, 0xf0, 0xd6, 0xdb, 0x47, 0xdb, 0xd7, 0x4f, 0xd8, 0x0e, 0xe8, 0xe8, 0xed, 0x79, 0x7d, 0x35, 0x7b, 0x37, 0x9b, 0xff, 0x32, 0xa3, 0x60, 0xc4, 0x03, 0x11, 0xde, 0x92, 0x2e, 0x1c, 0x95, 0xac, 0x76, 0x49, 0xeb, 0xd8, 0xd6, 0xe1, 0x3d, 0xb1, 0xd8, 0xfa, 0x7b, 0xd8, 0x06, 0xf2, 0xc3, 0x2c, 0xdf, 0xd1, 0x2d, 0xa4, 0xbb, 0x06, 0x19, 0x65, 0x79, 0xc1, 0x1e, 0x83, 0x7d, 0xcb, 0xe5, 0x36, 0xa6, 0xfd, 0x99, 0x31, 0x2d, 0x2d, 0xc5, 0x90, 0xef, 0xa1, 0x81, 0x36, 0xbd, 0x34, 0x32, 0x56, 0xf0, 0x99, 0x56, 0x8e, 0x96, 0xf7, 0xd2, 0x08, 0xdd, 0x4e, 0xa0, 0x8e, 0x6e, 0x5c, 0x7a, 0x0e, 0xe6, 0xde, 0xd7, 0x8f, 0x73, 0x49, 0xda, 0xdb, 0x6d, 0xb8, 0xf4, 0xd9, 0x5f, 0x4a, 0x04, 0xde, 0x01, 0xc2, 0x8e, 0x81, 0xc7, 0xba, 0xb4, 0xe3, 0x84, 0x82, 0x4b, 0xa9, 0x2d, 0x1a, 0xf7, 0x9c, 0x91, 0xae, 0xcd, 0x25, 0xf9, 0x06, 0x5e, 0x94, 0x38, 0x18, 0xb8, 0x69, 0x3e, 0x93, 0x1d, 0x0b, 0x83, 0xfc, 0x00, 0x47, 0x25, 0xde, 0xae, 0xb9, 0x17, 0xe6, 0x65, 0xee, 0xb8, 0xa5, 0xdc, 0x3c, 0x57, 0x7e, 0x14, 0x0b, 0xcf, 0x35, 0xb9, 0x79, 0xae, 0x2e, 0x62, 0x41, 0xce, 0xc0, 0x91, 0x4c, 0xe5, 0x99, 0xaf, 0x38, 0xdf, 0x48, 0xef, 0xb0, 0x55, 0xed, 0x38, 0xbd, 0x93, 0x47, 0x2f, 0xe7, 0x03, 0x13, 0xeb, 0x49, 0xba, 0xe6, 0x14, 0x90, 0xbb, 0xd4, 0x54, 0x72, 0x0a, 0xf6, 0x9f, 0x81, 0x8a, 0x7d, 0x91, 0xa7, 0xd2, 0x23, 0x4f, 0xeb, 0x2c, 0xcd, 0xa4, 0x79, 0x2a, 0x49, 0x1f, 0x40, 0x72, 0x9e, 0xde, 0x18, 0xd9, 0xd1, 0xd3, 0x32, 0x1b, 0xa9, 0x85, 0x2e, 0x8d, 0xd3, 0x3f, 0x02, 0xa3, 0x3b, 0xfe, 0x1f, 0x1d, 0x52, 0x51, 0xf7, 0x33, 0x1c, 0x18, 0x52, 0xc8, 0xd3, 0x75, 0x7c, 0xe3, 0x9d, 0xb4, 0x2a, 0x1d, 0xa7, 0xf7, 0xc5, 0x23, 0x25, 0xde, 0x90, 0x11, 0x32, 0xa8, 0x73, 0x7d, 0xff, 0xd0, 0x7e, 0x03, 0x07, 0xe5, 0x6b, 0x45, 0x2c, 0xa8, 0xad, 0x16, 0x63, 0xea, 0x3e, 0x23, 0x0d, 0xb0, 0xf5, 0xea, 0x62, 0x3c, 0x5c, 0x5d, 0xba, 0x15, 0x52, 0x07, 0x7d, 0xe3, 0xdc, 0xbd, 0xf6, 0x4f, 0x50, 0xd3, 0xdf, 0x0f, 0x71, 0xa0, 0xf8, 0x82, 0xdc, 0x67, 0x1a, 0x1d, 0xd0, 0xa9, 0x5b, 0x21, 0x36, 0x3c, 0x1f, 0xd0, 0x69, 0xff, 0xd4, 0xdd, 0xd3, 0xb5, 0x8f, 0x67, 0x7d, 0xb7, 0x4a, 0x00, 0xf6, 0x3f, 0x9e, 0xf5, 0xfd, 0xfe, 0xa9, 0x5b, 0x6b, 0x0f, 0xc0, 0x29, 0x65, 0xd1, 0xa3, 0x28, 0x97, 0xcc, 0xbf, 0xe1, 0x49, 0x80, 0x03, 0xcb, 0xa2, 0xf5, 0x5c, 0xb2, 0x4b, 0x9e, 0x04, 0xfa, 0x44, 0x35, 0x24, 0xae, 0x19, 0x0e, 0x29, 0x8b, 0xee, 0xe7, 0x92, 0xd1, 0x6b, 0xd6, 0xfe, 0xbb, 0x02, 0x56, 0xf1, 0x26, 0x08, 0x81, 0x5a, 0xc4, 0x64, 0x88, 0x62, 0x9b, 0xe2, 0x5a, 0xd7, 0x70, 0x5e, 0x99, 0xd9, 0x86, 0x6b, 0xf2, 0x0a, 0x40, 0xaa, 0x40, 0x28, 0x1c, 0x90, 0x38, 0xc9, 0x6a, 0xd4, 0xc6, 0x8a, 0x9e, 0x8b, 0xe4, 0x4b, 0xb0, 0x05, 0x0b, 0x36, 0x06, 0xad, 0x21, 0x6a, 0xe9, 0x02, 0x82, 0xaf, 0x00, 0x12, 0x96, 0x70, 0x71, 0xe7, 0xe7, 0x92, 0xe1, 0x9c, 0xaa, 0x51, 0xdb, 0x54, 0x56, 0x92, 0xb5, 0xff, 0xad, 0x40, 0x73, 0xca, 0xa3, 0x7c, 0xc3, 0x96, 0x77, 0x19, 0xc3, 0x54, 0xab, 0xe2, 0x50, 0xe4, 0x9d, 0x54, 0x2c, 0xc1, 0x74, 0xcd, 0xde, 0x77, 0x8f, 0xaf, 0xe4, 0x03, 0x91, 0x19, 0x6f, 0x8b, 0x5f, 0x17, 0xcb, 0xf1, 0xb4, 0x74, 0x39, 0x51, 0xb2, 0x40, 0x1b, 0xf2, 0x1a, 0x9c, 0x04, 0x35, 0xbe, 0xba, 0xcb, 0x8a, 0xfe, 0x20, 0xd9, 0xd9, 0x90, 0xaf, 0xa0, 0x99, 0xe6, 0x89, 0xcf, 0xd7, 0xbe, 0x29, 0x4a, 0xec, 0xb4, 0x41, 0x0f, 0xd2, 0x3c, 0x99, 0xaf, 0xcd, 0x7e, 0xb2, 0xfd, 0x23, 0x38, 0xa5, 0xbd, 0x1e, 0x1e, 0xa4, 0x0d, 0xcf, 0x17, 0xf3, 0xf9, 0x4c, 0x9f, 0xb8, 0x05, 0xb5, 0xe9, 0xe0, 0xdd, 0xd8, 0xdd, 0x1b, 0x1e, 0xbe, 0xad, 0xfe, 0x56, 0xfc, 0x94, 0x7c, 0xfc, 0x29, 0xfd, 0x17, 0x00, 0x00, 0xff, 0xff, 0x76, 0x9a, 0xf7, 0xbd, 0xa4, 0x06, 0x00, 0x00, }
ui/metrics/metrics_proto/metrics.proto +8 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,14 @@ message MetricsBase { // The metrics for calling Ninja. repeated PerfInfo ninja_runs = 20; optional BuildConfig build_config = 23; } message BuildConfig { optional bool use_goma = 1; optional bool use_rbe = 2; } message PerfInfo { Loading