mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-23 21:01:08 +00:00
Bug 1746941 - Add tags to all Firefox-on-Glean metrics r=janerik
Based on our experience with Firefox for Android, annotating Glean metrics with issue tracker component information can provide valuable context to anyone searching for metrics. This adds a new set of tags corresponding to the components in the tree, annotates the existing Glean metrics. Finally, it also adds a new mach command called `update-glean-tags` to update the tags files based on build metadata. Differential Revision: https://phabricator.services.mozilla.com/D134332
This commit is contained in:
parent
60637708f9
commit
af8f04a00d
@ -20,6 +20,9 @@ browser.engagement:
|
||||
the foreground, only if it is receiving these interaction events.
|
||||
|
||||
Migrated from Telemetry's `browser.engagement.active_ticks`.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Firefox :: General"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1376942 # Telemetry
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1545172 # Telemetry
|
||||
@ -46,6 +49,7 @@ browser.engagement:
|
||||
|
||||
Migrated from Telemetry's
|
||||
`browser.engagement.total_uri_count_normal_and_private_mode`.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1535169 # Telemetry
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1741674
|
||||
|
@ -17,6 +17,9 @@ paint:
|
||||
type: timing_distribution
|
||||
description: >
|
||||
The time to build a Gecko display list.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Core :: Graphics"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1728423
|
||||
data_reviews:
|
||||
|
@ -11,7 +11,7 @@ Outputter to generate C++ code for metrics.
|
||||
import jinja2
|
||||
import json
|
||||
|
||||
from util import generate_metric_ids, generate_ping_ids
|
||||
from util import generate_metric_ids, generate_ping_ids, get_metrics
|
||||
from glean_parser import util
|
||||
|
||||
|
||||
@ -111,10 +111,13 @@ def output_cpp(objs, output_fd, options={}):
|
||||
get_metric_id = generate_metric_ids(objs)
|
||||
get_ping_id = generate_ping_ids(objs)
|
||||
|
||||
if len(objs) == 1 and "pings" in objs:
|
||||
if "pings" in objs:
|
||||
template_filename = "cpp_pings.jinja2"
|
||||
if objs.get("tags"):
|
||||
del objs["tags"]
|
||||
else:
|
||||
template_filename = "cpp.jinja2"
|
||||
objs = get_metrics(objs)
|
||||
|
||||
template = util.get_jinja2_template(
|
||||
template_filename,
|
||||
|
@ -17,7 +17,7 @@ import jinja2
|
||||
from perfecthash import PerfectHash
|
||||
from string_table import StringTable
|
||||
|
||||
from util import generate_metric_ids, generate_ping_ids
|
||||
from util import generate_metric_ids, generate_ping_ids, get_metrics
|
||||
from glean_parser import util
|
||||
|
||||
"""
|
||||
@ -118,10 +118,10 @@ def output_js(objs, output_fd, options={}):
|
||||
|
||||
util.get_jinja2_template = get_local_template
|
||||
|
||||
if len(objs) == 1 and "pings" in objs:
|
||||
write_pings(objs, output_fd, "js_pings.jinja2")
|
||||
if "pings" in objs:
|
||||
write_pings({"pings": objs["pings"]}, output_fd, "js_pings.jinja2")
|
||||
else:
|
||||
write_metrics(objs, output_fd, "js.jinja2")
|
||||
write_metrics(get_metrics(objs), output_fd, "js.jinja2")
|
||||
|
||||
|
||||
def write_metrics(objs, output_fd, template_filename):
|
||||
@ -148,7 +148,7 @@ def write_metrics(objs, output_fd, template_filename):
|
||||
# Mapping from a type name to its ID
|
||||
metric_type_ids = {}
|
||||
|
||||
for category_name, objs in objs.items():
|
||||
for category_name, objs in get_metrics(objs).items():
|
||||
category_name = util.camelize(category_name)
|
||||
id = category_string_table.stringIndex(category_name)
|
||||
categories.append((category_name, id))
|
||||
|
@ -99,7 +99,9 @@ def parse_with_options(input_files, options):
|
||||
# bug 1720494: This should be a simple call to translate.transform
|
||||
counters = {}
|
||||
numerators_by_denominator: Dict[str, Any] = {}
|
||||
for category_val in objects.values():
|
||||
for (category_name, category_val) in objects.items():
|
||||
if category_name == "tags":
|
||||
continue
|
||||
for metric in category_val.values():
|
||||
fqmn = metric.identifier()
|
||||
if getattr(metric, "type", None) == "counter":
|
||||
|
@ -13,7 +13,7 @@ import json
|
||||
|
||||
import jinja2
|
||||
|
||||
from util import generate_metric_ids, generate_ping_ids
|
||||
from util import generate_metric_ids, generate_ping_ids, get_metrics
|
||||
from glean_parser import util
|
||||
from glean_parser.metrics import Rate
|
||||
|
||||
@ -205,14 +205,14 @@ def output_rust(objs, output_fd, options={}):
|
||||
# 17 -> "test_only::an_event"
|
||||
events_by_id = {}
|
||||
|
||||
if len(objs) == 1 and "pings" in objs:
|
||||
if "pings" in objs:
|
||||
template_filename = "rust_pings.jinja2"
|
||||
objs = {"pings": objs["pings"]}
|
||||
else:
|
||||
template_filename = "rust.jinja2"
|
||||
|
||||
for category_name, metrics in objs.items():
|
||||
for metric in metrics.values():
|
||||
|
||||
objs = get_metrics(objs)
|
||||
for category_name, category_value in objs.items():
|
||||
for metric in category_value.values():
|
||||
# The constant is all uppercase and suffixed by `_MAP`
|
||||
const_name = util.snake_case(metric.type).upper() + "_MAP"
|
||||
typ = type_name(metric)
|
||||
|
@ -5,8 +5,9 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
"""
|
||||
Utitlity functions for the glean_parser-based code generator
|
||||
Utility functions for the glean_parser-based code generator
|
||||
"""
|
||||
import copy
|
||||
|
||||
|
||||
def generate_ping_ids(objs):
|
||||
@ -52,3 +53,14 @@ def generate_metric_ids(objs):
|
||||
metric_id += 1
|
||||
|
||||
return lambda metric: metric_id_mapping[(metric.category, metric.name)]
|
||||
|
||||
|
||||
def get_metrics(objs):
|
||||
"""
|
||||
Returns *just* the metrics in a set of Glean objects
|
||||
"""
|
||||
ret = copy.copy(objs)
|
||||
for category in ["pings", "tags"]:
|
||||
if ret.get(category):
|
||||
del ret[category]
|
||||
return ret
|
||||
|
@ -4,6 +4,16 @@
|
||||
|
||||
from mach.decorators import Command, CommandArgument
|
||||
|
||||
LICENSE_HEADER = """# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
"""
|
||||
|
||||
GENERATED_HEADER = """
|
||||
### This file was AUTOMATICALLY GENERATED by `./mach update-glean-tags`
|
||||
### DO NOT edit it by hand.
|
||||
"""
|
||||
|
||||
|
||||
@Command(
|
||||
"data-review",
|
||||
@ -28,3 +38,38 @@ def data_review(command_context, bug=None):
|
||||
return data_review.generate(
|
||||
bug, [Path(command_context.topsrcdir) / x for x in metrics_yamls]
|
||||
)
|
||||
|
||||
|
||||
@Command(
|
||||
"update-glean-tags",
|
||||
category="misc",
|
||||
description=(
|
||||
"Creates a list of valid glean tags based on in-tree bugzilla component definitions"
|
||||
),
|
||||
)
|
||||
def update_glean_tags(command_context):
|
||||
from pathlib import Path
|
||||
import yaml
|
||||
from mozbuild.frontend.reader import BuildReader, EmptyConfig
|
||||
|
||||
config = EmptyConfig(str((Path(__file__).parent / "../../../../").resolve()))
|
||||
reader = BuildReader(config)
|
||||
bug_components = set()
|
||||
for p in reader.read_topsrcdir():
|
||||
if p.get("BUG_COMPONENT"):
|
||||
bug_components.add(p["BUG_COMPONENT"])
|
||||
|
||||
tags_filename = (Path(__file__).parent / "../tags.yaml").resolve()
|
||||
|
||||
tags = {"$schema": "moz://mozilla.org/schemas/glean/tags/1-0-0"}
|
||||
for bug_component in bug_components:
|
||||
product = bug_component.product.strip()
|
||||
component = bug_component.component.strip()
|
||||
tags["{} :: {}".format(product, component)] = {
|
||||
"description": "The Bugzilla component which applies to this object."
|
||||
}
|
||||
|
||||
open(tags_filename, "w").write(
|
||||
"{}\n{}\n\n".format(LICENSE_HEADER, GENERATED_HEADER)
|
||||
+ yaml.dump(tags, width=78, explicit_start=True)
|
||||
)
|
||||
|
@ -19,6 +19,9 @@ fog:
|
||||
time_unit: nanosecond
|
||||
description: |
|
||||
Time the FOG initialization takes.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Toolkit :: Telemetry"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1662123
|
||||
data_reviews:
|
||||
@ -37,6 +40,7 @@ fog:
|
||||
True if we failed to register with the idle service. Absent otherwise.
|
||||
Means IPC probably isn't working well.
|
||||
Child-process data will likely be absent, or incomplete.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1694739
|
||||
data_reviews:
|
||||
@ -54,6 +58,7 @@ fog.ipc:
|
||||
description: |
|
||||
The number of times the ipc buffer failed to be replayed in the
|
||||
parent process.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1664461
|
||||
data_reviews:
|
||||
@ -70,6 +75,7 @@ fog.ipc:
|
||||
memory_unit: byte
|
||||
description: |
|
||||
The number and size of the IPC buffers being received over FOG IPC.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1694739
|
||||
data_reviews:
|
||||
@ -87,6 +93,7 @@ fog.ipc:
|
||||
description: |
|
||||
The length of time between asking the child processes for their
|
||||
IPC buffers and all of them being received by the parent.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1694739
|
||||
data_reviews:
|
||||
@ -105,6 +112,7 @@ fog.ipc:
|
||||
throwing even partial results into the trash.
|
||||
If this number is high, we might consider writing custom `MozPromise`-
|
||||
handling code instead of using `MozPromise::All`.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1729026
|
||||
data_reviews:
|
||||
|
@ -30,3 +30,10 @@ pings_yamls = [
|
||||
"toolkit/components/glean/tests/test_pings.yaml",
|
||||
"toolkit/mozapps/update/pings.yaml",
|
||||
]
|
||||
|
||||
# The list of tags that are allowed in the above to files, and their
|
||||
# descriptions. Currently we restrict to a set scraped from bugzilla
|
||||
# (via `./mach update-glean-tags`)
|
||||
tags_yamls = [
|
||||
"toolkit/components/glean/tags.yaml",
|
||||
]
|
||||
|
@ -94,6 +94,7 @@ include("metrics_index.py")
|
||||
# The yamls arrays are relative to topsrcdir, so we need to transform:
|
||||
metrics_yamls = ["../../../" + x for x in metrics_yamls]
|
||||
pings_yamls = ["../../../" + x for x in pings_yamls]
|
||||
tags_yamls = ["../../../" + x for x in tags_yamls]
|
||||
# If you change the length of this deps list, update DEPS_LEN in run_glean_parser.py
|
||||
deps = [
|
||||
"metrics_index.py",
|
||||
@ -117,7 +118,7 @@ GeneratedFile(
|
||||
"api/src/metrics.rs",
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -125,7 +126,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="cpp_metrics",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -133,14 +134,14 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="js_metrics",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
"api/src/pings.rs",
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + pings_yamls,
|
||||
inputs=deps + pings_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -148,7 +149,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="cpp_metrics",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + pings_yamls,
|
||||
inputs=deps + pings_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -156,7 +157,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="js_metrics",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"]],
|
||||
inputs=deps + pings_yamls,
|
||||
inputs=deps + pings_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
# Glean Interface For Firefox Telemetry Maps from Glean MetricId to Telemetry ProbeId
|
||||
@ -166,7 +167,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="gifft_map",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"], "Event"],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -174,7 +175,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="gifft_map",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"], "Histogram"],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
GeneratedFile(
|
||||
@ -182,7 +183,7 @@ GeneratedFile(
|
||||
script="build_scripts/glean_parser_ext/run_glean_parser.py",
|
||||
entry_point="gifft_map",
|
||||
flags=[CONFIG["MOZ_APP_VERSION"], "Scalar"],
|
||||
inputs=deps + metrics_yamls,
|
||||
inputs=deps + metrics_yamls + tags_yamls,
|
||||
)
|
||||
|
||||
DIRS += [
|
||||
|
421
toolkit/components/glean/tags.yaml
Normal file
421
toolkit/components/glean/tags.yaml
Normal file
@ -0,0 +1,421 @@
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
|
||||
### This file was AUTOMATICALLY GENERATED by `./mach update-glean-tags`
|
||||
### DO NOT edit it by hand.
|
||||
|
||||
|
||||
---
|
||||
$schema: moz://mozilla.org/schemas/glean/tags/1-0-0
|
||||
'Cloud Services :: Firefox: Common':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Audio/Video':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Audio/Video: GMP':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Audio/Video: Playback':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Audio/Video: Recording':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: CSS Parsing and Computation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: CSS Transitions and Animations':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Canvas: 2D':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Canvas: WebGL':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Animation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Bindings (WebIDL)':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: CSS Object Model':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Content Processes':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Copy & Paste and Drag & Drop':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Core & HTML':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Device Interfaces':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Editor':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Events':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: File':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Forms':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Geolocation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: HTML Parser':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Navigation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Networking':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Push Notifications':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Security':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Selection':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Serializers':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Service Workers':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: UI Events & Focus Handling':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Web Authentication':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Web Payments':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: Workers':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: DOM: postMessage':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Disability Access APIs':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Gecko Profiler':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Graphics':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Graphics: Layers':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Graphics: Text':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Graphics: WebGPU':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Graphics: WebRender':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Hardware Abstraction Layer (HAL)':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: IPC':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: ImageLib':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Internationalization':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: JavaScript Engine':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: JavaScript: Internationalization API':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Block and Inline':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Columns':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Flexbox':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Floats':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Form Controls':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Grid':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Images, Video, and HTML Frames':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Positioned':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Ruby':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Scrolling and Overflow':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Tables':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Layout: Text and Fonts':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Localization':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: MFBT':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: MathML':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Memory Allocator':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: Cache':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: Cookies':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: DNS':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: File':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: HTTP':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: JAR':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Networking: WebSockets':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Panning and Zooming':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Performance':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Permission Manager':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Plug-ins':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Preferences: Backend':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Printing: Output':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Privacy: Anti-Tracking':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: SVG':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Security':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Security: CAPS':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Security: PSM':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Security: Process Sandboxing':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Spelling checker':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Storage: Cache API':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Storage: IndexedDB':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Storage: Quota Manager':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Storage: localStorage & sessionStorage':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: String':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Web Audio':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Web Painting':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Web Speech':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: WebRTC':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: WebRTC: Audio/Video':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: WebRTC: Signaling':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: WebVR':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Widget':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Widget: Cocoa':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: Window Management':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: XML':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: XPCOM':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: XPConnect':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: XSLT':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: XUL':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Core :: mozglue':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Accessibility Tools':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Console':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Debugger':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Inspector':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Inspector: Animations':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Inspector: Compatibility':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Inspector: Rules':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Memory':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Performance Tools (Profiler/Timeline)':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Storage Inspector':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'DevTools :: Style Editor':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Bookmarks & History':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Enterprise Policies':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: File Handling':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Firefox Accounts':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Headless':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Keyboard Navigation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Menus':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Migration':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: New Tab Page':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Nimbus Desktop Client':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: PDF Viewer':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Private Browsing':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Remote Settings Client':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Search':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Security':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Services Automation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Session Restore':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Site Permissions':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Sync':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Tabbed Browser':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox :: Toolbars and Customization':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Bootstrap Configuration':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Generated Documentation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Lint and Formatting':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Linting and Formatting':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Mach Core':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Source Code Analysis':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Task Configuration':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Firefox Build System :: Try':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'GeckoView :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Localization Infrastructure and Tools :: Fluent Migration':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Localization Infrastructure and Tools :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Localization Infrastructure and Tools :: compare-locales':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'NSPR :: NSPR':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Release Engineering :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Release Engineering :: Release Automation: Updates':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Taskcluster :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Taskcluster :: Platform Libraries':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: CPPUnitTest':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: Code Coverage':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: GTest':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: Mozbase':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: Mozbase Rust':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: Python Test':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: Reftest':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Testing :: mozperftest':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Add-ons Manager':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Application Update':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Async Tooling':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Autocomplete':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Blocklist Implementation':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Crash Reporting':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Data Sanitization':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Downloads API':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: FeatureGate':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Find Toolbar':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Form Autofill':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Form Manager':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: NSIS Installer':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Notifications and Alerts':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: OS.File':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Password Manager':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Performance Monitoring':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Picture-in-Picture':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Places':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Preferences':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Printing':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Reader Mode':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Safe Browsing':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Startup and Profile System':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Storage':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Telemetry':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Themes':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: Video/Audio Controls':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: View Source':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: XUL Widgets':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'Toolkit :: about:memory':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'WebExtensions :: General':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'WebExtensions :: Request Handling':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'WebExtensions :: Storage':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'mozilla.org :: Licensing':
|
||||
description: The Bugzilla component which applies to this object.
|
||||
'mozilla.org :: MozillaBuild':
|
||||
description: The Bugzilla component which applies to this object.
|
@ -12,7 +12,7 @@ FOG_ROOT_PATH = path.abspath(
|
||||
path.join(path.dirname(__file__), path.pardir, path.pardir)
|
||||
)
|
||||
sys.path.append(FOG_ROOT_PATH)
|
||||
from metrics_index import metrics_yamls
|
||||
from metrics_index import metrics_yamls, tags_yamls
|
||||
|
||||
# Shenanigans to import run_glean_parser
|
||||
sys.path.append(path.join(FOG_ROOT_PATH, "build_scripts", "glean_parser_ext"))
|
||||
@ -35,8 +35,8 @@ def test_no_metrics_expired():
|
||||
app_version = version_file.read().strip()
|
||||
|
||||
options = run_glean_parser.get_parser_options(app_version)
|
||||
metrics_paths = [Path(x) for x in metrics_yamls]
|
||||
all_objs = parser.parse_objects(metrics_paths, options)
|
||||
paths = [Path(x) for x in metrics_yamls] + [Path(x) for x in tags_yamls]
|
||||
all_objs = parser.parse_objects(paths, options)
|
||||
assert not util.report_validation_errors(all_objs)
|
||||
assert not lint.lint_metrics(all_objs.value, options)
|
||||
|
||||
|
@ -17,6 +17,9 @@ power:
|
||||
type: counter
|
||||
description: >
|
||||
Total CPU time used by all processes in ms.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Core :: DOM: Content Processes"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1736040
|
||||
data_reviews:
|
||||
@ -32,6 +35,7 @@ power:
|
||||
type: counter
|
||||
description: >
|
||||
Total GPU time used by all processes in ms.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1743176
|
||||
data_reviews:
|
||||
|
@ -13,6 +13,9 @@ background_update:
|
||||
type: uuid
|
||||
description: >
|
||||
The Telemetry client ID of the default profile.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Toolkit :: Application Update"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -30,6 +33,7 @@ background_update:
|
||||
type: string
|
||||
description: >
|
||||
String description of the final state the update state machine reached.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -47,6 +51,7 @@ background_update:
|
||||
description: >
|
||||
Ordered list of string descriptions of the states that the update state
|
||||
machine reached.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -63,6 +68,7 @@ background_update:
|
||||
type: string_list
|
||||
description: >
|
||||
List of reasons that the background update task did not run.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -80,6 +86,7 @@ background_update:
|
||||
description: >
|
||||
True if the exit code/status of the background update task is 0, which
|
||||
means success.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -97,6 +104,7 @@ background_update:
|
||||
description: >
|
||||
True if the exit code/status of the background update task is 3, which
|
||||
means an exception was thrown.
|
||||
metadata: *metadata
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
data_reviews:
|
||||
@ -115,6 +123,7 @@ update:
|
||||
description: >
|
||||
Preference "app.update.service.enabled": whether the Mozilla Maintenance
|
||||
Service is enabled.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -133,6 +142,7 @@ update:
|
||||
description: >
|
||||
Per-installation preference "app.update.auto": whether to fetch and
|
||||
install updates without user intervention.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -151,6 +161,7 @@ update:
|
||||
description: >
|
||||
Per-installation preference "app.update.background.enabled": whether to
|
||||
fetch and install updates in the background when Firefox is not running.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -169,6 +180,7 @@ update:
|
||||
description: >
|
||||
True when policies are disabled or when the "DisableAppUpdate" is not in
|
||||
effect.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -186,6 +198,7 @@ update:
|
||||
type: string
|
||||
description: >
|
||||
The update channel.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -206,6 +219,7 @@ update:
|
||||
updates.
|
||||
See `canUsuallyApplyUpdates` in
|
||||
https://searchfox.org/mozilla-central/source/toolkit/mozapps/update/nsIUpdateService.idl.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -225,6 +239,7 @@ update:
|
||||
Whether or not the Update Service can usually check for updates.
|
||||
See `canUsuallyCheckForUpdates` in
|
||||
https://searchfox.org/mozilla-central/source/toolkit/mozapps/update/nsIUpdateService.idl.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -244,6 +259,7 @@ update:
|
||||
Whether the Update Service is usually able to stage updates.
|
||||
See `canUsuallyStageUpdates` in
|
||||
https://searchfox.org/mozilla-central/source/toolkit/mozapps/update/nsIUpdateService.idl.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
@ -263,6 +279,7 @@ update:
|
||||
On Windows, whether the Update Service can usually use BITS.
|
||||
See `canUsuallyUseBits` in
|
||||
https://searchfox.org/mozilla-central/source/toolkit/mozapps/update/nsIUpdateService.idl.
|
||||
metadata: *metadata
|
||||
lifetime: application
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1703318
|
||||
|
@ -23,6 +23,9 @@ startup:
|
||||
description: >
|
||||
The outcome after the app detected that it was running from DMG and
|
||||
should offer to install and relaunch itself.
|
||||
metadata: &metadata
|
||||
tags:
|
||||
- "Toolkit :: Startup and Profile System"
|
||||
bugs:
|
||||
- https://bugzilla.mozilla.org/show_bug.cgi?id=1743328
|
||||
data_reviews:
|
||||
|
Loading…
Reference in New Issue
Block a user