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"