Coverage
Private previewComposable dashboards and the metrics API are in private preview: available to invited accounts, and features may change. See Integration and feature lifecycles for what this means, and reach out to your account representative to request access.
Overview
Which tables have an active monitor, where the gaps are among your key tables, and how many monitors you have. Current state.
What it answers
- What is our monitoring coverage.
- Which key tables have no monitor.
- Coverage per data product or domain.
- Coverage gaps per domain and warehouse.
- How many monitors exist, are active or erroring, with the error.
- Monitors created in a period.
- Assets discovered or deleted in a period.
Not covered here
- Asset health, alerts and incidents (Data quality metrics).
- Coverage as of a past date or its change over time (only current state is kept).
- Column-level coverage.
- Assets covered per monitor tag, audience or monitor domain.
Try asking
What is our monitoring coverage?
The query your agent runs:
- Metrics:
population_assets,covered_assets,coverage_rate,uncovered_key_assets - Grouped by:
account__account_name
Request (JSON)
{
"metrics": [
"population_assets",
"covered_assets",
"coverage_rate",
"uncovered_key_assets"
],
"group_by": ["account__account_name"]
}Metrics
| Metric | What it counts |
|---|---|
asset_count | Every asset, AI agents and excluded ones included, deleted ones when deleted in the last 13 months or still referenced, dated by when Monte Carlo discovered it: for assets discovered in a period. Coverage counts tables with population_assets. Group by: Asset, Warehouse, time. |
assets_with_monitor | Tables in a Table Monitor's scope or with any other monitor that is not deleted, paused and draft included. In the product: Tables with monitors on the Coverage dashboard, which also counts excluded tables and wildcard parts. After a Table Monitor is paused, its tables leave the count over the following hours or days. Group by: Asset, time. Also per asset tag, data product, domain: asset_tag_assets_with_monitor, data_product_assets_with_monitor, domain_assets_with_monitor. |
coverage_rate | Share of tables that are covered: covered_assets / population_assets. Group by: Asset, time. Also per asset tag, data product, domain: asset_tag_coverage_rate, data_product_coverage_rate, domain_coverage_rate. |
covered_assets | Tables with at least one active monitor of any kind. Group by: Asset, time. Also per asset tag, data product, domain, monitor: asset_tag_covered_assets, data_product_covered_assets, domain_covered_assets, monitor_covered_assets. |
data_product_count | Data products of the account, with or without tables, deleted ones included (data_product__is_data_product_deleted). Group by: Data product, time. |
domain_count | Domains of the account, with or without assets, of every type. In the product: Settings > Domains does not list agentic domains; filter domain__domain_type to leave them out. Group by: Domain, time. |
erroring_monitor_count | Active monitors in status Error (failed to run). A monitor on many tables counts once. Group by: Monitor, Warehouse, time. Also per asset tag, audience, data product, domain, monitor domain, monitor tag: asset_tag_erroring_monitor_count, audience_erroring_monitor_count, data_product_erroring_monitor_count, domain_erroring_monitor_count, monitor_domain_erroring_monitor_count, monitor_tag_erroring_monitor_count. |
key_assets | Key tables in the coverage population. Group by: Asset, time. Also per asset tag, data product, domain: asset_tag_key_assets, data_product_key_assets, domain_key_assets. |
live_monitor_count | Active monitors: not paused, deleted or draft. A monitor on many tables counts once. Group by: Monitor, Warehouse, time. Also per asset, asset tag, audience, data product, domain, monitor domain, monitor tag: asset_live_monitor_count, asset_tag_live_monitor_count, audience_live_monitor_count, data_product_live_monitor_count, domain_live_monitor_count, monitor_domain_live_monitor_count, monitor_tag_live_monitor_count. |
monitor_count | Monitors that are not deleted. A monitor on many tables counts once. In the product: the count the Monitors page lists. Group by: Monitor, Warehouse, time. Also per asset, asset tag, audience, data product, domain, monitor domain, monitor tag: asset_monitor_count, asset_tag_monitor_count, audience_monitor_count, data_product_monitor_count, domain_monitor_count, monitor_domain_monitor_count, monitor_tag_monitor_count. |
population_assets | Tables that coverage counts: not deleted, not excluded, not part of a wildcard table and not in a deleted integration. Filter it on the covered-by dimensions of the table for coverage by monitor type. Group by: Asset, time. Also per asset tag, data product, domain: asset_tag_population_assets, data_product_population_assets, domain_population_assets. |
uncovered_key_assets | Key tables with no active monitor: the coverage gaps. Group by: Asset, time. Also per asset tag, data product, domain: asset_tag_uncovered_key_assets, data_product_uncovered_key_assets, domain_uncovered_key_assets. |
visibility_only_assets | Tables Monte Carlo sees (lineage, metadata) but that are outside the Table Monitor scope, so not monitored by default; other monitors can still cover some of them. In the product: Not monitored. Group by: Asset, time. |
Good to know
Grouping and filtering for all metrics, including why the numbers per domain, data product or tag do not add up to the account's: Before you group or filter.
- Tables counted: Coverage counts tables that are not deleted, not excluded, not part of a wildcard table and not in a deleted integration; AI agents are not counted.
- Covered: A table with at least one active monitor of any kind (not paused, deleted or draft).
assets_with_monitorcounts tables in a Table Monitor's scope or with any other monitor that is not deleted, as Tables with monitors on the product's Coverage dashboard, which also counts excluded tables and wildcard parts.asset__is_asset_monitoredis the Table Monitor scope, also used for billing. - By monitor type: Filter
population_assetsonasset__is_asset_covered_by_freshness_monitor,asset__is_asset_covered_by_validation_monitoror another covered-by dimension of the table. By creation source, priority or status:monitor_covered_assetsgrouped by the monitor dimension; a table covered by two kinds of monitor counts in both. - Groupings: Per domain, data product and asset tag, the metric starts with the grouping (
domain_coverage_rate). A monitor counts in a domain, data product or asset tag when it covers one of its tables, and in a monitor domain, monitor tag or audience when it is assigned to it. - Domain:
domain__is the domains of the tables, as the Coverage dashboard's domain filter uses them;monitor_domain__is the domain monitors are assigned to, as the domain filter of the Monitors and Alerts pages. - Gaps without a domain: Per-domain metrics leave out tables in no domain, so a domain by warehouse matrix (
domain_uncovered_key_assets) can miss whole warehouses. Show the gaps per warehouse fromuncovered_key_assetsgrouped by warehouse next to it; that total includes every table. - Monitor counts: A monitor on many tables counts once, as the product lists monitors;
live_monitor_countcounts the active ones. The monitors a bulk or generated monitor creates (monitor__parent_monitor_uuidis set) and out-of-the-box replacement rules are not counted. - Current state: Coverage and monitor counts are today's, with no history yet. Monitors created in a period:
monitor_countbymonitor__monitor_created_at; tables discovered in a period:asset_count.
Examples
How many assets were discovered in the last 7 days?
- Metrics:
asset_count - Filter:
metric_time__dayon or after 7 days ago
Request (JSON)
{
"metrics": ["asset_count"],
"filters": [
{
"field": "metric_time__day",
"op": "gte",
"values": ["<7 days ago>"]
}
]
}Key tables without a monitor per domain and warehouse
- Metrics:
domain_uncovered_key_assets - Grouped by:
domain,domain__domain_name,asset__warehouse,warehouse__warehouse_name
Request (JSON)
{
"metrics": ["domain_uncovered_key_assets"],
"group_by": [
"domain",
"domain__domain_name",
"asset__warehouse",
"warehouse__warehouse_name"
]
}Coverage per data product, lowest first
- Metrics:
data_product_population_assets,data_product_covered_assets,data_product_coverage_rate - Grouped by:
data_product,data_product__data_product_name - Filter:
data_product__is_data_product_deletedisfalse - Sorted by:
data_product_coverage_rate, lowest first
Request (JSON)
{
"metrics": [
"data_product_population_assets",
"data_product_covered_assets",
"data_product_coverage_rate"
],
"group_by": [
"data_product",
"data_product__data_product_name"
],
"filters": [
{
"field": "data_product__is_data_product_deleted",
"op": "in",
"values": [false]
}
],
"order_by": [{"field": "data_product_coverage_rate"}]
}Coverage per domain, lowest first
- Metrics:
domain_population_assets,domain_covered_assets,domain_coverage_rate - Grouped by:
domain,domain__domain_name - Sorted by:
domain_coverage_rate, lowest first
Request (JSON)
{
"metrics": [
"domain_population_assets",
"domain_covered_assets",
"domain_coverage_rate"
],
"group_by": ["domain", "domain__domain_name"],
"order_by": [{"field": "domain_coverage_rate"}]
}Erroring monitors per asset tag
- Metrics:
asset_tag_population_assets,asset_tag_erroring_monitor_count - Grouped by:
asset_tag__asset_tag_name,asset_tag__asset_tag_value - Sorted by:
asset_tag_erroring_monitor_count, highest first
Request (JSON)
{
"metrics": [
"asset_tag_population_assets",
"asset_tag_erroring_monitor_count"
],
"group_by": [
"asset_tag__asset_tag_name",
"asset_tag__asset_tag_value"
],
"order_by": [
{
"field": "asset_tag_erroring_monitor_count",
"descending": true
}
]
}Which monitors are erroring right now, and with what error?
- Metrics:
erroring_monitor_count - Grouped by:
monitor,monitor__monitor_name,monitor__monitor_type,monitor__monitor_error_message
Request (JSON)
{
"metrics": ["erroring_monitor_count"],
"group_by": [
"monitor",
"monitor__monitor_name",
"monitor__monitor_type",
"monitor__monitor_error_message"
]
}Which key tables have no monitor, most important first?
- Metrics:
uncovered_key_assets - Grouped by:
asset,asset__asset_full_table_id,warehouse__warehouse_name,asset__asset_importance_score - Sorted by:
asset__asset_importance_score, highest first
Request (JSON)
{
"metrics": ["uncovered_key_assets"],
"group_by": [
"asset",
"asset__asset_full_table_id",
"warehouse__warehouse_name",
"asset__asset_importance_score"
],
"order_by": [
{
"field": "asset__asset_importance_score",
"descending": true
}
]
}Active monitors by type
- Metrics:
live_monitor_count - Grouped by:
monitor__monitor_type - Sorted by:
live_monitor_count, highest first
Request (JSON)
{
"metrics": ["live_monitor_count"],
"group_by": ["monitor__monitor_type"],
"order_by": [
{"field": "live_monitor_count", "descending": true}
]
}Monitors created in the last month, by creation source
- Metrics:
monitor_count - Grouped by:
monitor__monitor_creation_source - Filter:
monitor__monitor_created_at__dayon or after 1 month ago
Request (JSON)
{
"metrics": ["monitor_count"],
"group_by": ["monitor__monitor_creation_source"],
"filters": [
{
"field": "monitor__monitor_created_at__day",
"op": "gte",
"values": ["<1 month ago>"]
}
]
}Key tables without a monitor per warehouse
- Metrics:
uncovered_key_assets,key_assets - Grouped by:
asset__warehouse,warehouse__warehouse_name - Sorted by:
uncovered_key_assets, highest first
Request (JSON)
{
"metrics": ["uncovered_key_assets", "key_assets"],
"group_by": [
"asset__warehouse",
"warehouse__warehouse_name"
],
"order_by": [
{"field": "uncovered_key_assets", "descending": true}
]
}See also
- Dimensions these metrics group by: Asset, Asset tag, Audience, Data product, Domain, Monitor, Monitor domain, Monitor tag, Warehouse
- All metrics: Metrics; all dimensions: Dimensions; overview and guides: Composable dashboards; product words: Glossary
Updated 3 days ago
Did this page help you?
