power_manager_metrics/
power_manager_metrics.rs

1// This file was generated by Cobalt's Registry parser based on the registry YAML
2// in the cobalt_config repository. Edit the YAML there to make changes.
3pub mod power_manager_metrics {
4pub const CUSTOMER_NAME: &str = "fuchsia";
5pub const CUSTOMER_ID: u32 = 1;
6pub const PROJECT_NAME: &str = "power";
7pub const PROJECT_ID: u32 = 3;
8
9// Linear bucket constants for power_broker_inspect_vmo_used_bytes per_device_daily_histogram_max
10pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
11pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
12pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 4096;
13
14// Linear bucket constants for power_broker_inspect_vmo_used_per_ten_k per_device_daily_histogram_max
15pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
16pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
17pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 100;
18
19// Linear bucket constants for power_broker_inspect_event_buffer_capacity per_device_daily_max
20pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_FLOOR: i64 = 0;
21pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
22pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_STEP_SIZE: u32 = 256;
23
24// Linear bucket constants for power_broker_inspect_event_history_duration_seconds per_device_daily_histogram_min
25pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_FLOOR: i64 = 0;
26pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_NUM_BUCKETS: u32 = 288;
27pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_STEP_SIZE: u32 = 300;
28
29// Linear bucket constants for system_activity_governor_inspect_vmo_used_bytes per_device_daily_histogram_max
30pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
31pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
32pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 4096;
33
34// Linear bucket constants for system_activity_governor_inspect_vmo_used_per_ten_k per_device_daily_histogram_max
35pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
36pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
37pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 100;
38
39// Linear bucket constants for system_activity_governor_inspect_event_buffer_capacity per_device_daily_max
40pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_FLOOR: i64 = 0;
41pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
42pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_STEP_SIZE: u32 = 256;
43
44// Linear bucket constants for system_activity_governor_inspect_event_history_duration_seconds per_device_daily_histogram_min
45pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_FLOOR: i64 = 0;
46pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_NUM_BUCKETS: u32 = 288;
47pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_STEP_SIZE: u32 = 300;
48
49// Linear bucket constants for raw_temperature_migrated
50pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_FLOOR: i64 = 20;
51pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_NUM_BUCKETS: u32 = 80;
52pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_STEP_SIZE: u32 = 1;
53
54// Linear bucket constants for min_power_consumption
55pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
56pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
57pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
58
59// Linear bucket constants for max_power_consumption
60pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
61pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
62pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
63
64// Linear bucket constants for avg_power_consumption
65pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
66pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
67pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
68
69// Linear bucket constants for median_power_consumption
70pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
71pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
72pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
73
74// Metric ID Constants
75// power_broker_inspect_vmo_used_bytes
76pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_METRIC_ID: u32 = 7;
77// power_broker_inspect_vmo_used_per_ten_k
78pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_METRIC_ID: u32 = 8;
79// power_broker_inspect_event_buffer_capacity
80pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_METRIC_ID: u32 = 9;
81// power_broker_inspect_event_history_duration_seconds
82pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_METRIC_ID: u32 = 11;
83// system_activity_governor_inspect_vmo_used_bytes
84pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_METRIC_ID: u32 = 12;
85// system_activity_governor_inspect_vmo_used_per_ten_k
86pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_METRIC_ID: u32 = 13;
87// system_activity_governor_inspect_event_buffer_capacity
88pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_METRIC_ID: u32 = 14;
89// system_activity_governor_inspect_event_history_duration_seconds
90pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_METRIC_ID: u32 = 15;
91// thermal_limit_result_migrated
92pub const THERMAL_LIMIT_RESULT_MIGRATED_METRIC_ID: u32 = 105;
93// raw_temperature_migrated
94pub const RAW_TEMPERATURE_MIGRATED_METRIC_ID: u32 = 106;
95// min_power_consumption
96pub const MIN_POWER_CONSUMPTION_METRIC_ID: u32 = 1004;
97// max_power_consumption
98pub const MAX_POWER_CONSUMPTION_METRIC_ID: u32 = 1005;
99// avg_power_consumption
100pub const AVG_POWER_CONSUMPTION_METRIC_ID: u32 = 1006;
101// median_power_consumption
102pub const MEDIAN_POWER_CONSUMPTION_METRIC_ID: u32 = 1007;
103
104// Enum for power (Metric Dimension result)
105#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
106pub enum PowerMetricDimensionResult {
107  Mitigated = 0,
108  Shutdown = 1,
109}
110
111impl cobalt_client::traits::AsEventCode for PowerMetricDimensionResult {
112  fn as_event_code(&self) -> u32 {
113    *self as u32
114  }
115}
116// Alias for thermal_limit_result_migrated (Metric Dimension result) which has the same event codes
117pub use PowerMetricDimensionResult as ThermalLimitResultMigratedMetricDimensionResult;
118
119// Enum for power (Metric Dimension sensor)
120#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
121pub enum PowerMetricDimensionSensor {
122  Ambient = 0,
123  ThermalPolicyInput1 = 1,
124}
125
126impl cobalt_client::traits::AsEventCode for PowerMetricDimensionSensor {
127  fn as_event_code(&self) -> u32 {
128    *self as u32
129  }
130}
131// Alias for raw_temperature_migrated (Metric Dimension sensor) which has the same event codes
132pub use PowerMetricDimensionSensor as RawTemperatureMigratedMetricDimensionSensor;
133
134// Enum for power (Metric Dimension sensor_target)
135#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
136pub enum PowerMetricDimensionSensorTarget {
137  Unknown = 0,
138  Mlb = 1,
139  Audio = 2,
140}
141
142impl cobalt_client::traits::AsEventCode for PowerMetricDimensionSensorTarget {
143  fn as_event_code(&self) -> u32 {
144    *self as u32
145  }
146}
147// Alias for min_power_consumption (Metric Dimension sensor_target) which has the same event codes
148pub use PowerMetricDimensionSensorTarget as MinPowerConsumptionMetricDimensionSensorTarget;
149
150// Alias for max_power_consumption (Metric Dimension sensor_target) which has the same event codes
151pub use PowerMetricDimensionSensorTarget as MaxPowerConsumptionMetricDimensionSensorTarget;
152
153// Alias for avg_power_consumption (Metric Dimension sensor_target) which has the same event codes
154pub use PowerMetricDimensionSensorTarget as AvgPowerConsumptionMetricDimensionSensorTarget;
155
156// Alias for median_power_consumption (Metric Dimension sensor_target) which has the same event codes
157pub use PowerMetricDimensionSensorTarget as MedianPowerConsumptionMetricDimensionSensorTarget;
158
159// Enum for power (Metric Dimension idleness)
160#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
161pub enum PowerMetricDimensionIdleness {
162  Unknown = 0,
163  Idle = 1,
164  Active = 2,
165}
166
167impl cobalt_client::traits::AsEventCode for PowerMetricDimensionIdleness {
168  fn as_event_code(&self) -> u32 {
169    *self as u32
170  }
171}
172// Alias for min_power_consumption (Metric Dimension idleness) which has the same event codes
173pub use PowerMetricDimensionIdleness as MinPowerConsumptionMetricDimensionIdleness;
174
175// Alias for max_power_consumption (Metric Dimension idleness) which has the same event codes
176pub use PowerMetricDimensionIdleness as MaxPowerConsumptionMetricDimensionIdleness;
177
178// Alias for avg_power_consumption (Metric Dimension idleness) which has the same event codes
179pub use PowerMetricDimensionIdleness as AvgPowerConsumptionMetricDimensionIdleness;
180
181// Alias for median_power_consumption (Metric Dimension idleness) which has the same event codes
182pub use PowerMetricDimensionIdleness as MedianPowerConsumptionMetricDimensionIdleness;
183
184#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
185pub struct MinPowerConsumptionEventCodes {
186  pub sensor_target: MinPowerConsumptionMetricDimensionSensorTarget,
187  pub idleness: MinPowerConsumptionMetricDimensionIdleness,
188}
189
190impl cobalt_client::traits::AsEventCodes for MinPowerConsumptionEventCodes {
191  fn as_event_codes(&self) -> Vec<u32> {
192    use cobalt_client::traits::AsEventCode;
193    vec![
194      self.sensor_target.as_event_code(),
195      self.idleness.as_event_code(),
196    ]
197  }
198}
199
200#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
201pub struct MaxPowerConsumptionEventCodes {
202  pub sensor_target: MaxPowerConsumptionMetricDimensionSensorTarget,
203  pub idleness: MaxPowerConsumptionMetricDimensionIdleness,
204}
205
206impl cobalt_client::traits::AsEventCodes for MaxPowerConsumptionEventCodes {
207  fn as_event_codes(&self) -> Vec<u32> {
208    use cobalt_client::traits::AsEventCode;
209    vec![
210      self.sensor_target.as_event_code(),
211      self.idleness.as_event_code(),
212    ]
213  }
214}
215
216#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
217pub struct AvgPowerConsumptionEventCodes {
218  pub sensor_target: AvgPowerConsumptionMetricDimensionSensorTarget,
219  pub idleness: AvgPowerConsumptionMetricDimensionIdleness,
220}
221
222impl cobalt_client::traits::AsEventCodes for AvgPowerConsumptionEventCodes {
223  fn as_event_codes(&self) -> Vec<u32> {
224    use cobalt_client::traits::AsEventCode;
225    vec![
226      self.sensor_target.as_event_code(),
227      self.idleness.as_event_code(),
228    ]
229  }
230}
231
232#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
233pub struct MedianPowerConsumptionEventCodes {
234  pub sensor_target: MedianPowerConsumptionMetricDimensionSensorTarget,
235  pub idleness: MedianPowerConsumptionMetricDimensionIdleness,
236}
237
238impl cobalt_client::traits::AsEventCodes for MedianPowerConsumptionEventCodes {
239  fn as_event_codes(&self) -> Vec<u32> {
240    use cobalt_client::traits::AsEventCode;
241    vec![
242      self.sensor_target.as_event_code(),
243      self.idleness.as_event_code(),
244    ]
245  }
246}
247
248}