UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

565 lines (486 loc) 18.5 kB
// // Copyright (C) 2018 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // @generated by protoc-gen-es v2.2.2 with parameter "target=ts" // @generated from file protos/perfetto/trace/sys_stats/sys_stats.proto (package perfetto.protos, syntax proto2) /* eslint-disable */ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1"; import type { MeminfoCounters, VmstatCounters } from "../../common/sys_stats_counters_pb"; import { file_protos_perfetto_common_sys_stats_counters } from "../../common/sys_stats_counters_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file protos/perfetto/trace/sys_stats/sys_stats.proto. */ export const file_protos_perfetto_trace_sys_stats_sys_stats: GenFile = /*@__PURE__*/ fileDesc("Ci9wcm90b3MvcGVyZmV0dG8vdHJhY2Uvc3lzX3N0YXRzL3N5c19zdGF0cy5wcm90bxIPcGVyZmV0dG8ucHJvdG9zItYPCghTeXNTdGF0cxI3CgdtZW1pbmZvGAEgAygLMiYucGVyZmV0dG8ucHJvdG9zLlN5c1N0YXRzLk1lbWluZm9WYWx1ZRI1CgZ2bXN0YXQYAiADKAsyJS5wZXJmZXR0by5wcm90b3MuU3lzU3RhdHMuVm1zdGF0VmFsdWUSNAoIY3B1X3N0YXQYAyADKAsyIi5wZXJmZXR0by5wcm90b3MuU3lzU3RhdHMuQ3B1VGltZXMSEQoJbnVtX2ZvcmtzGAQgASgEEhUKDW51bV9pcnFfdG90YWwYBSABKAQSOQoHbnVtX2lycRgGIAMoCzIoLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5JbnRlcnJ1cHRDb3VudBIZChFudW1fc29mdGlycV90b3RhbBgHIAEoBBI9CgtudW1fc29mdGlycRgIIAMoCzIoLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5JbnRlcnJ1cHRDb3VudBIgChhjb2xsZWN0aW9uX2VuZF90aW1lc3RhbXAYCSABKAQSNwoHZGV2ZnJlcRgKIAMoCzImLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5EZXZmcmVxVmFsdWUSEwoLY3B1ZnJlcV9raHoYCyADKA0SNwoKYnVkZHlfaW5mbxgMIAMoCzIjLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5CdWRkeUluZm8SNQoJZGlza19zdGF0GA0gAygLMiIucGVyZmV0dG8ucHJvdG9zLlN5c1N0YXRzLkRpc2tTdGF0EjAKA3BzaRgOIAMoCzIjLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5Qc2lTYW1wbGUSOwoMdGhlcm1hbF96b25lGA8gAygLMiUucGVyZmV0dG8ucHJvdG9zLlN5c1N0YXRzLlRoZXJtYWxab25lEj0KDWNwdWlkbGVfc3RhdGUYECADKAsyJi5wZXJmZXR0by5wcm90b3MuU3lzU3RhdHMuQ3B1SWRsZVN0YXRlEhMKC2dwdWZyZXFfbWh6GBEgAygEGkwKDE1lbWluZm9WYWx1ZRItCgNrZXkYASABKA4yIC5wZXJmZXR0by5wcm90b3MuTWVtaW5mb0NvdW50ZXJzEg0KBXZhbHVlGAIgASgEGkoKC1Ztc3RhdFZhbHVlEiwKA2tleRgBIAEoDjIfLnBlcmZldHRvLnByb3Rvcy5WbXN0YXRDb3VudGVycxINCgV2YWx1ZRgCIAEoBBqiAQoIQ3B1VGltZXMSDgoGY3B1X2lkGAEgASgNEg8KB3VzZXJfbnMYAiABKAQSFAoMdXNlcl9uaWNlX25zGAMgASgEEhYKDnN5c3RlbV9tb2RlX25zGAQgASgEEg8KB2lkbGVfbnMYBSABKAQSEgoKaW9fd2FpdF9ucxgGIAEoBBIOCgZpcnFfbnMYByABKAQSEgoKc29mdGlycV9ucxgIIAEoBBosCg5JbnRlcnJ1cHRDb3VudBILCgNpcnEYASABKAUSDQoFY291bnQYAiABKAQaKgoMRGV2ZnJlcVZhbHVlEgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBBo8CglCdWRkeUluZm8SDAoEbm9kZRgBIAEoCRIMCgR6b25lGAIgASgJEhMKC29yZGVyX3BhZ2VzGAMgAygNGtcBCghEaXNrU3RhdBITCgtkZXZpY2VfbmFtZRgBIAEoCRIUCgxyZWFkX3NlY3RvcnMYAiABKAQSFAoMcmVhZF90aW1lX21zGAMgASgEEhUKDXdyaXRlX3NlY3RvcnMYBCABKAQSFQoNd3JpdGVfdGltZV9tcxgFIAEoBBIXCg9kaXNjYXJkX3NlY3RvcnMYBiABKAQSFwoPZGlzY2FyZF90aW1lX21zGAcgASgEEhMKC2ZsdXNoX2NvdW50GAggASgEEhUKDWZsdXNoX3RpbWVfbXMYCSABKAQatAIKCVBzaVNhbXBsZRJBCghyZXNvdXJjZRgBIAEoDjIvLnBlcmZldHRvLnByb3Rvcy5TeXNTdGF0cy5Qc2lTYW1wbGUuUHNpUmVzb3VyY2USEAoIdG90YWxfbnMYAiABKAQi0QEKC1BzaVJlc291cmNlEhwKGFBTSV9SRVNPVVJDRV9VTlNQRUNJRklFRBAAEhkKFVBTSV9SRVNPVVJDRV9DUFVfU09NRRABEhkKFVBTSV9SRVNPVVJDRV9DUFVfRlVMTBACEhgKFFBTSV9SRVNPVVJDRV9JT19TT01FEAMSGAoUUFNJX1JFU09VUkNFX0lPX0ZVTEwQBBIcChhQU0lfUkVTT1VSQ0VfTUVNT1JZX1NPTUUQBRIcChhQU0lfUkVTT1VSQ0VfTUVNT1JZX0ZVTEwQBho3CgtUaGVybWFsWm9uZRIMCgRuYW1lGAEgASgJEgwKBHRlbXAYAiABKAQSDAoEdHlwZRgDIAEoCRo3ChFDcHVJZGxlU3RhdGVFbnRyeRINCgVzdGF0ZRgBIAEoCRITCgtkdXJhdGlvbl91cxgCIAEoBBpoCgxDcHVJZGxlU3RhdGUSDgoGY3B1X2lkGAEgASgNEkgKE2NwdWlkbGVfc3RhdGVfZW50cnkYAiADKAsyKy5wZXJmZXR0by5wcm90b3MuU3lzU3RhdHMuQ3B1SWRsZVN0YXRlRW50cnk", [file_protos_perfetto_common_sys_stats_counters]); /** * Various Linux system stat counters from /proc. * The fields in this message can be reported at different rates and with * different granularity. See sys_stats_config.proto. * * @generated from message perfetto.protos.SysStats */ export type SysStats = Message<"perfetto.protos.SysStats"> & { /** * @generated from field: repeated perfetto.protos.SysStats.MeminfoValue meminfo = 1; */ meminfo: SysStats_MeminfoValue[]; /** * @generated from field: repeated perfetto.protos.SysStats.VmstatValue vmstat = 2; */ vmstat: SysStats_VmstatValue[]; /** * One entry per cpu. * * @generated from field: repeated perfetto.protos.SysStats.CpuTimes cpu_stat = 3; */ cpuStat: SysStats_CpuTimes[]; /** * Num processes forked since boot. * Populated only if FORK_COUNT in config.stat_counters. * * @generated from field: optional uint64 num_forks = 4; */ numForks: bigint; /** * Total num of irqs serviced since boot. * * @generated from field: optional uint64 num_irq_total = 5; */ numIrqTotal: bigint; /** * @generated from field: repeated perfetto.protos.SysStats.InterruptCount num_irq = 6; */ numIrq: SysStats_InterruptCount[]; /** * Total num of softirqs since boot. * * @generated from field: optional uint64 num_softirq_total = 7; */ numSoftirqTotal: bigint; /** * Per-softirq count. * * @generated from field: repeated perfetto.protos.SysStats.InterruptCount num_softirq = 8; */ numSoftirq: SysStats_InterruptCount[]; /** * The time at which we finish collecting this set of samples; * the top-level packet timestamp is the time at which * we begin collection. * * @generated from field: optional uint64 collection_end_timestamp = 9; */ collectionEndTimestamp: bigint; /** * One entry per device. * * @generated from field: repeated perfetto.protos.SysStats.DevfreqValue devfreq = 10; */ devfreq: SysStats_DevfreqValue[]; /** * Cpu current frequency from * /sys/devices/system/cpu/cpu*\/cpufreq/cpuinfo_cur_freq in kHz. * One entry per cpu. Report 0 for offline cpu * * @generated from field: repeated uint32 cpufreq_khz = 11; */ cpufreqKhz: number[]; /** * One entry per each node's zones. * * @generated from field: repeated perfetto.protos.SysStats.BuddyInfo buddy_info = 12; */ buddyInfo: SysStats_BuddyInfo[]; /** * One entry per disk device. * * @generated from field: repeated perfetto.protos.SysStats.DiskStat disk_stat = 13; */ diskStat: SysStats_DiskStat[]; /** * One entry per PsiResource type. * * @generated from field: repeated perfetto.protos.SysStats.PsiSample psi = 14; */ psi: SysStats_PsiSample[]; /** * @generated from field: repeated perfetto.protos.SysStats.ThermalZone thermal_zone = 15; */ thermalZone: SysStats_ThermalZone[]; /** * @generated from field: repeated perfetto.protos.SysStats.CpuIdleState cpuidle_state = 16; */ cpuidleState: SysStats_CpuIdleState[]; /** * Read GPU frequency info on Intel/AMD devices. * * @generated from field: repeated uint64 gpufreq_mhz = 17; */ gpufreqMhz: bigint[]; }; /** * Describes the message perfetto.protos.SysStats. * Use `create(SysStatsSchema)` to create a new message. */ export const SysStatsSchema: GenMessage<SysStats> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0); /** * Counters from /proc/meminfo. Values are in KB. * * @generated from message perfetto.protos.SysStats.MeminfoValue */ export type SysStats_MeminfoValue = Message<"perfetto.protos.SysStats.MeminfoValue"> & { /** * @generated from field: optional perfetto.protos.MeminfoCounters key = 1; */ key: MeminfoCounters; /** * @generated from field: optional uint64 value = 2; */ value: bigint; }; /** * Describes the message perfetto.protos.SysStats.MeminfoValue. * Use `create(SysStats_MeminfoValueSchema)` to create a new message. */ export const SysStats_MeminfoValueSchema: GenMessage<SysStats_MeminfoValue> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 0); /** * Counter from /proc/vmstat. Units are often pages, not KB. * * @generated from message perfetto.protos.SysStats.VmstatValue */ export type SysStats_VmstatValue = Message<"perfetto.protos.SysStats.VmstatValue"> & { /** * @generated from field: optional perfetto.protos.VmstatCounters key = 1; */ key: VmstatCounters; /** * @generated from field: optional uint64 value = 2; */ value: bigint; }; /** * Describes the message perfetto.protos.SysStats.VmstatValue. * Use `create(SysStats_VmstatValueSchema)` to create a new message. */ export const SysStats_VmstatValueSchema: GenMessage<SysStats_VmstatValue> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 1); /** * Times in each mode, since boot. Unit: nanoseconds. * * @generated from message perfetto.protos.SysStats.CpuTimes */ export type SysStats_CpuTimes = Message<"perfetto.protos.SysStats.CpuTimes"> & { /** * @generated from field: optional uint32 cpu_id = 1; */ cpuId: number; /** * Time spent in user mode. * * @generated from field: optional uint64 user_ns = 2; */ userNs: bigint; /** * Time spent in user mode (low prio). * * @generated from field: optional uint64 user_nice_ns = 3; */ userNiceNs: bigint; /** * Time spent in system mode. * * @generated from field: optional uint64 system_mode_ns = 4; */ systemModeNs: bigint; /** * Time spent in the idle task. * * @generated from field: optional uint64 idle_ns = 5; */ idleNs: bigint; /** * Time spent waiting for I/O. * * @generated from field: optional uint64 io_wait_ns = 6; */ ioWaitNs: bigint; /** * Time spent servicing interrupts. * * @generated from field: optional uint64 irq_ns = 7; */ irqNs: bigint; /** * Time spent servicing softirqs. * * @generated from field: optional uint64 softirq_ns = 8; */ softirqNs: bigint; }; /** * Describes the message perfetto.protos.SysStats.CpuTimes. * Use `create(SysStats_CpuTimesSchema)` to create a new message. */ export const SysStats_CpuTimesSchema: GenMessage<SysStats_CpuTimes> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 2); /** * @generated from message perfetto.protos.SysStats.InterruptCount */ export type SysStats_InterruptCount = Message<"perfetto.protos.SysStats.InterruptCount"> & { /** * @generated from field: optional int32 irq = 1; */ irq: number; /** * @generated from field: optional uint64 count = 2; */ count: bigint; }; /** * Describes the message perfetto.protos.SysStats.InterruptCount. * Use `create(SysStats_InterruptCountSchema)` to create a new message. */ export const SysStats_InterruptCountSchema: GenMessage<SysStats_InterruptCount> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 3); /** * Frequencies for /sys/class/devfreq/ entries in kHz. * * @generated from message perfetto.protos.SysStats.DevfreqValue */ export type SysStats_DevfreqValue = Message<"perfetto.protos.SysStats.DevfreqValue"> & { /** * @generated from field: optional string key = 1; */ key: string; /** * @generated from field: optional uint64 value = 2; */ value: bigint; }; /** * Describes the message perfetto.protos.SysStats.DevfreqValue. * Use `create(SysStats_DevfreqValueSchema)` to create a new message. */ export const SysStats_DevfreqValueSchema: GenMessage<SysStats_DevfreqValue> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 4); /** * @generated from message perfetto.protos.SysStats.BuddyInfo */ export type SysStats_BuddyInfo = Message<"perfetto.protos.SysStats.BuddyInfo"> & { /** * @generated from field: optional string node = 1; */ node: string; /** * @generated from field: optional string zone = 2; */ zone: string; /** * @generated from field: repeated uint32 order_pages = 3; */ orderPages: number[]; }; /** * Describes the message perfetto.protos.SysStats.BuddyInfo. * Use `create(SysStats_BuddyInfoSchema)` to create a new message. */ export const SysStats_BuddyInfoSchema: GenMessage<SysStats_BuddyInfo> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 5); /** * Counters from /proc/diskstats. * * @generated from message perfetto.protos.SysStats.DiskStat */ export type SysStats_DiskStat = Message<"perfetto.protos.SysStats.DiskStat"> & { /** * @generated from field: optional string device_name = 1; */ deviceName: string; /** * @generated from field: optional uint64 read_sectors = 2; */ readSectors: bigint; /** * @generated from field: optional uint64 read_time_ms = 3; */ readTimeMs: bigint; /** * @generated from field: optional uint64 write_sectors = 4; */ writeSectors: bigint; /** * @generated from field: optional uint64 write_time_ms = 5; */ writeTimeMs: bigint; /** * @generated from field: optional uint64 discard_sectors = 6; */ discardSectors: bigint; /** * @generated from field: optional uint64 discard_time_ms = 7; */ discardTimeMs: bigint; /** * @generated from field: optional uint64 flush_count = 8; */ flushCount: bigint; /** * @generated from field: optional uint64 flush_time_ms = 9; */ flushTimeMs: bigint; }; /** * Describes the message perfetto.protos.SysStats.DiskStat. * Use `create(SysStats_DiskStatSchema)` to create a new message. */ export const SysStats_DiskStatSchema: GenMessage<SysStats_DiskStat> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 6); /** * Reading from /proc/pressure/*. * * @generated from message perfetto.protos.SysStats.PsiSample */ export type SysStats_PsiSample = Message<"perfetto.protos.SysStats.PsiSample"> & { /** * @generated from field: optional perfetto.protos.SysStats.PsiSample.PsiResource resource = 1; */ resource: SysStats_PsiSample_PsiResource; /** * Total absolute stall time (in nanos) for a given resource. * While PSI readings are in micros, we store in nanos for consistency with * most other time-based counters. * * @generated from field: optional uint64 total_ns = 2; */ totalNs: bigint; }; /** * Describes the message perfetto.protos.SysStats.PsiSample. * Use `create(SysStats_PsiSampleSchema)` to create a new message. */ export const SysStats_PsiSampleSchema: GenMessage<SysStats_PsiSample> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 7); /** * Type of resource that may have exhibited pressure stalls. * * _SOME indicates some resource tasks stalled. * * _FULL indicates all non-idle resource tasks stalled simultaneously. * * @generated from enum perfetto.protos.SysStats.PsiSample.PsiResource */ export enum SysStats_PsiSample_PsiResource { /** * @generated from enum value: PSI_RESOURCE_UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * @generated from enum value: PSI_RESOURCE_CPU_SOME = 1; */ CPU_SOME = 1, /** * @generated from enum value: PSI_RESOURCE_CPU_FULL = 2; */ CPU_FULL = 2, /** * @generated from enum value: PSI_RESOURCE_IO_SOME = 3; */ IO_SOME = 3, /** * @generated from enum value: PSI_RESOURCE_IO_FULL = 4; */ IO_FULL = 4, /** * @generated from enum value: PSI_RESOURCE_MEMORY_SOME = 5; */ MEMORY_SOME = 5, /** * @generated from enum value: PSI_RESOURCE_MEMORY_FULL = 6; */ MEMORY_FULL = 6, } /** * Describes the enum perfetto.protos.SysStats.PsiSample.PsiResource. */ export const SysStats_PsiSample_PsiResourceSchema: GenEnum<SysStats_PsiSample_PsiResource> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 7, 0); /** * Reading from /sys/class/thermal/*. * * @generated from message perfetto.protos.SysStats.ThermalZone */ export type SysStats_ThermalZone = Message<"perfetto.protos.SysStats.ThermalZone"> & { /** * @generated from field: optional string name = 1; */ name: string; /** * @generated from field: optional uint64 temp = 2; */ temp: bigint; /** * @generated from field: optional string type = 3; */ type: string; }; /** * Describes the message perfetto.protos.SysStats.ThermalZone. * Use `create(SysStats_ThermalZoneSchema)` to create a new message. */ export const SysStats_ThermalZoneSchema: GenMessage<SysStats_ThermalZone> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 8); /** * Reading from /sys/devices/system/cpu/cpu*\/cpuidle/state*. * * @generated from message perfetto.protos.SysStats.CpuIdleStateEntry */ export type SysStats_CpuIdleStateEntry = Message<"perfetto.protos.SysStats.CpuIdleStateEntry"> & { /** * Name of the idle state, e.g. C1-C10 * * @generated from field: optional string state = 1; */ state: string; /** * @generated from field: optional uint64 duration_us = 2; */ durationUs: bigint; }; /** * Describes the message perfetto.protos.SysStats.CpuIdleStateEntry. * Use `create(SysStats_CpuIdleStateEntrySchema)` to create a new message. */ export const SysStats_CpuIdleStateEntrySchema: GenMessage<SysStats_CpuIdleStateEntry> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 9); /** * @generated from message perfetto.protos.SysStats.CpuIdleState */ export type SysStats_CpuIdleState = Message<"perfetto.protos.SysStats.CpuIdleState"> & { /** * @generated from field: optional uint32 cpu_id = 1; */ cpuId: number; /** * @generated from field: repeated perfetto.protos.SysStats.CpuIdleStateEntry cpuidle_state_entry = 2; */ cpuidleStateEntry: SysStats_CpuIdleStateEntry[]; }; /** * Describes the message perfetto.protos.SysStats.CpuIdleState. * Use `create(SysStats_CpuIdleStateSchema)` to create a new message. */ export const SysStats_CpuIdleStateSchema: GenMessage<SysStats_CpuIdleState> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_sys_stats_sys_stats, 0, 10);