jetstream/abouthome-startup-cache-3.toml (401 lines of code) (raw):

[experiment] segments = [ 'low_cpu', 'high_cpu', 'mem_lte_2GB', 'mem_gt_2GB_lte_4GB', 'mem_gt_6GB_lte_8GB', 'high_mem', ] enrollment_query = """ SELECT client_id, branch, MIN(ping_submission_date) AS enrollment_date, MAX(num_enrollment_events) AS num_enrollment_events FROM ( SELECT ping.client_id ,ping.profile_subsession_counter ,ping.session_id ,ping.submission_date AS ping_submission_date ,enroll.branch ,enroll.enrollment_date ,enroll.num_enrollment_events ,RANK() OVER (PARTITION BY ping.client_id, ping.session_id ORDER BY profile_subsession_counter) as rank_in_subsession ,RANK() OVER (PARTITION BY ping.client_id ORDER BY profile_subsession_counter) as rank_of_session FROM ( SELECT m.client_id, m.payload.info.profile_subsession_counter as profile_subsession_counter, m.payload.info.session_id as session_id, DATE(m.submission_timestamp) AS submission_date FROM `moz-fx-data-shared-prod.telemetry.main` m WHERE DATE(m.submission_timestamp) BETWEEN '2022-12-02' AND '2023-01-27' ) ping INNER JOIN ( SELECT e.client_id, `mozfun.map.get_key`(e.event_map_values, 'branch') AS branch, MIN(e.submission_date) AS enrollment_date, COUNT(e.submission_date) AS num_enrollment_events FROM `moz-fx-data-shared-prod.telemetry.events` e WHERE e.event_category = 'normandy' AND e.event_method = 'enroll' AND e.submission_date BETWEEN '2022-12-02' AND '2022-12-09' AND e.event_string_value = 'abouthome-startup-cache-3' GROUP BY e.client_id, branch ) enroll ON enroll.client_id = ping.client_id AND enroll.enrollment_date <= ping.submission_date QUALIFY rank_in_subsession = 1 AND rank_of_session = 3 ) GROUP BY client_id, branch """ ## Data Sources [data_sources] [data_sources.main] from_expression = """( SELECT *, DATE(submission_timestamp) AS submission_date, environment.experiments FROM `moz-fx-data-shared-prod`.telemetry_stable.main_v4 WHERE `mozfun.map.get_key`( environment.experiments, 'abouthome-startup-cache-3' ).branch IS NOT NULL )""" experiments_column_type = "native" friendly_name = "Main" description = "Main ping table" [data_sources.clients_daily] from_expression = """( SELECT * FROM mozdata.telemetry.clients_daily d WHERE `mozfun.map.get_key`( d.experiments, 'abouthome-startup-cache-3' ) IS NOT NULL )""" friendly_name = "Clients Daily" description = "Clients Daily" ## Metrics [metrics] overall = [ 'perf_page_load_time_ms', 'time_to_first_interaction_ms', 'input_event_response_ms', 'input_event_response_ms_parent', 'perf_first_contentful_paint_ms', 'js_pageload_execution_ms', 'gpu_keypress_present_latency', 'memory_total', 'memory_unique_content_startup', 'cycle_collector_max_pause', 'cycle_collector_max_pause_content', 'gc_max_pause_ms_2', 'gc_max_pause_ms_2_content', 'gc_ms', 'gc_ms_content', 'gc_slice_during_idle', 'gc_slice_during_idle_content' ] weekly = [ 'perf_page_load_time_ms', 'time_to_first_interaction_ms', 'input_event_response_ms', 'input_event_response_ms_parent', 'perf_first_contentful_paint_ms', 'js_pageload_execution_ms', 'gpu_keypress_present_latency', 'memory_total', 'memory_unique_content_startup', 'cycle_collector_max_pause', 'cycle_collector_max_pause_content', 'gc_max_pause_ms_2', 'gc_max_pause_ms_2_content', 'gc_ms', 'gc_ms_content', 'gc_slice_during_idle', 'gc_slice_during_idle_content' ] daily = [ ] ## Performance [metrics.perf_page_load_time_ms] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.perf_page_load_time_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.perf_page_load_time_ms.statistics.bootstrap_mean] # [pre_treatments = ["remove_nulls"] [metrics.perf_page_load_time_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.perf_page_load_time_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.perf_page_load_time_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.js_pageload_execution_ms] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.js_pageload_execution_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.js_pageload_execution_ms.statistics.bootstrap_mean] # [pre_treatments = ["remove_nulls"] [metrics.js_pageload_execution_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.js_pageload_execution_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.js_pageload_execution_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.time_to_first_interaction_ms] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.time_to_first_interaction_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.time_to_first_interaction_ms.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.time_to_first_interaction_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.time_to_first_interaction_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.time_to_first_interaction_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.input_event_response_ms] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.input_event_response_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.input_event_response_ms.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.input_event_response_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.input_event_response_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.input_event_response_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.input_event_response_ms_parent] select_expression = '{{agg_histogram_mean("payload.histograms.input_event_response_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.input_event_response_ms.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.input_event_response_ms_parent.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.input_event_response_ms_parent.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.input_event_response_ms_parent.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.perf_first_contentful_paint_ms] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.perf_first_contentful_paint_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.perf_first_contentful_paint_ms.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.perf_first_contentful_paint_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.perf_first_contentful_paint_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.perf_first_contentful_paint_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gpu_keypress_present_latency] select_expression = '{{agg_histogram_mean("payload.processes.gpu.histograms.keypress_present_latency")}}' data_source = 'main' bigger_is_better = false # [metrics.gpu_keypress_present_latency.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gpu_keypress_present_latency.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gpu_keypress_present_latency.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gpu_keypress_present_latency.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true ## Memory [metrics.memory_total] select_expression = '{{agg_histogram_mean("payload.histograms.memory_total")}}' data_source = 'main' bigger_is_better = false # [metrics.memory_total.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.memory_total.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.memory_total.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.memory_total.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.memory_unique_content_startup] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.memory_unique_content_startup")}}' data_source = 'main' bigger_is_better = false # [metrics.memory_unique_content_startup.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.memory_unique_content_startup.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.memory_unique_content_startup.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.memory_unique_content_startup.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.cycle_collector_max_pause] select_expression = '{{agg_histogram_mean("payload.histograms.cycle_collector_max_pause")}}' data_source = 'main' bigger_is_better = false # [metrics.cycle_collector_max_pause.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.cycle_collector_max_pause.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.cycle_collector_max_pause.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.cycle_collector_max_pause.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.cycle_collector_max_pause_content] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.cycle_collector_max_pause")}}' data_source = 'main' bigger_is_better = false # [metrics.cycle_collector_max_pause_content.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.cycle_collector_max_pause_content.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.cycle_collector_max_pause_content.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.cycle_collector_max_pause_content.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_max_pause_ms_2] select_expression = '{{agg_histogram_mean("payload.histograms.gc_max_pause_ms_2")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_max_pause_ms_2.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_max_pause_ms_2.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_max_pause_ms_2.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_max_pause_ms_2.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_max_pause_ms_2_content] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.cycle_collector_max_pause")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_max_pause_ms_2_content.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_max_pause_ms_2_content.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_max_pause_ms_2_content.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_max_pause_ms_2_content.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_ms] select_expression = '{{agg_histogram_mean("payload.histograms.gc_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_ms.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_ms.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_ms.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_ms.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_ms_content] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.gc_ms")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_ms_content.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_ms_content.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_ms_content.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_ms_content.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_slice_during_idle] select_expression = '{{agg_histogram_mean("payload.histograms.gc_slice_during_idle")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_slice_during_idle.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_slice_during_idle.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_slice_during_idle.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_slice_during_idle.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true [metrics.gc_slice_during_idle_content] select_expression = '{{agg_histogram_mean("payload.processes.content.histograms.gc_slice_during_idle")}}' data_source = 'main' bigger_is_better = false # [metrics.gc_slice_during_idle_content.statistics.bootstrap_mean] # pre_treatments = ["remove_nulls"] [metrics.gc_slice_during_idle_content.statistics.deciles] pre_treatments = ["remove_nulls"] # [metrics.gc_slice_during_idle_content.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true [metrics.gc_slice_during_idle_content.statistics.empirical_cdf] pre_treatments = ["remove_nulls"] log_space = true ## Crashes # [metrics.main_crashes_per_hour.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true # # [metrics.main_crashes_per_hour.statistics.empirical_cdf] # pre_treatments = ["remove_nulls"] # log_space = true # [metrics.content_crashes_per_hour.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true # # [metrics.content_crashes_per_hour.statistics.empirical_cdf] # pre_treatments = ["remove_nulls"] # log_space = true # [metrics.oom_crashes_per_hour.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true # # [metrics.oom_crashes_per_hour.statistics.empirical_cdf] # pre_treatments = ["remove_nulls"] # log_space = true # [metrics.shutdown_crashes_per_hour.statistics.kernel_density_estimate] # pre_treatments = ["remove_nulls"] # log_space = true # # [metrics.shutdown_crashes_per_hour.statistics.empirical_cdf] # pre_treatments = ["remove_nulls"] # log_space = true ## Segments [segments] [segments.low_cpu] select_expression = 'COALESCE(MAX(cpu_count) BETWEEN 1 AND 2, FALSE)' data_source = "clients_last_seen" #[segments.med_cpu] #select_expression = 'COALESCE(MAX(cpu_count) BETWEEN 3 AND 5, FALSE)' #data_source = "clients_last_seen" [segments.high_cpu] select_expression = 'COALESCE(MAX(cpu_count) >= 6, FALSE)' data_source = "clients_last_seen" [segments.mem_lte_2GB] select_expression = 'COALESCE(MAX(memory_mb) BETWEEN 1 AND 2047, FALSE)' data_source = "clients_last_seen" [segments.mem_gt_2GB_lte_4GB] select_expression = 'COALESCE(MAX(memory_mb) BETWEEN 2048 AND 4095, FALSE)' data_source = "clients_last_seen" [segments.mem_gt_6GB_lte_8GB] select_expression = 'COALESCE(MAX(memory_mb) BETWEEN 6144 AND 8191, FALSE)' data_source = "clients_last_seen" #[segments.low_mem] #select_expression = 'COALESCE(MAX(memory_mb) BETWEEN 1 AND 4095, FALSE)' #data_source = "clients_last_seen" #[segments.med_mem] #select_expression = 'COALESCE(MAX(memory_mb) BETWEEN 4096 AND 8191, FALSE)' #data_source = "clients_last_seen" [segments.high_mem] select_expression = 'COALESCE(MAX(memory_mb) >= 8192, FALSE)' data_source = "clients_last_seen"