Documentation Index Fetch the complete documentation index at: https://docs.buster.so/llms.txt
Use this file to discover all available pages before exploring further.
Complete reference for the buster.yml configuration file.
File Location
The file must be named buster.yml or buster.yaml and placed in your repository root.
Complete Schema
# Required: At least one project
projects :
- name : string # Required
data_source : string # Required
database : string # Optional (required for some warehouses)
schema : string # Required
include : # Optional
- "**/*.yml"
exclude : # Optional
- "**/draft-*.yml"
# Optional: Paths to agent files
agents :
- .buster/agents/my-agent.yml
# Optional: Query logs writeback
logs :
data_source : string # Optional
database : string # Required
schema : string # Required
table_name : string # Optional: defaults to "buster_query_logs"
# Optional: Data quality monitors
monitors :
- name : string # Required
type : string # Required
schedule : string # Required
data_source : string # Optional
enabled : boolean # Optional: defaults to true
# Optional: Default data source for monitors
data_source : string
# Optional: Path to dbt project
dbt_project_path : string
Fields
projects
List of project configurations. At least one project is required. projects :
- name : analytics
data_source : postgres_prod
schema : public
Unique identifier for the project. Name of the data source configured in the Buster platform. Must match exactly. data_source : postgres_prod
Database name. Required for some data sources (Snowflake, BigQuery). Schema name where your models reside. Glob patterns for files to include. Defaults to ["**/*.yml", "**/*.yaml"]. include :
- "models/**/*.yml"
Glob patterns for files to exclude. Takes precedence over include. exclude :
- "**/draft-*.yml"
- "**/_*.yml"
agents
Paths to agent YAML files, relative to buster.yml. agents :
- .buster/agents/documentation.yml
- .buster/agents/pr-reviewer.yml
See Agent YAML Reference for agent file format.
logs
Configure query logs writeback to store Buster query history in your warehouse. logs :
database : analytics
schema : logs
table_name : buster_query_logs
Data source for logs. Defaults to the first available if omitted.
Database name for storing logs.
Schema name for storing logs.
Table name for logs. Defaults to buster_query_logs.
monitors
Data quality monitors that run on a schedule to detect schema changes, data anomalies, and staleness. monitors :
- name : daily_schema_check
type : schema_drift
schedule : "0 9 * * *"
enabled : true
- name : hourly_freshness
type : freshness
schedule : hourly
- name : volume_check
type : volume_anomaly
schedule : daily
Unique name for the monitor.
Monitor type. Available types: Type Description schema_driftDetects changes to database schema (added/removed columns, type changes) json_driftDetects structural changes in JSONB/JSON column contents volume_anomalyDetects unusual data volume patterns (unexpected row count changes) freshnessChecks data staleness by comparing latest timestamps against thresholds
When to run: daily, hourly, or a cron expression. # Named schedules
schedule : daily # Runs at midnight UTC
schedule : hourly # Runs at the top of each hour
# Cron expressions
schedule : "0 9 * * *" # Daily at 9 AM UTC
schedule : "0 */6 * * *" # Every 6 hours
schedule : "0 9 * * 1-5" # Weekdays at 9 AM UTC
Data source for this monitor. Uses top-level data_source if omitted.
Whether the monitor is active. Defaults to true.
data_source
Default data source for all monitors. data_source : postgres_prod
dbt_project_path
Path to your dbt project root, relative to buster.yml. If omitted, Buster searches for dbt_project.yml automatically.
Examples
Minimal
projects :
- name : analytics
data_source : postgres_prod
schema : public
With Agents
projects :
- name : analytics
data_source : postgres_prod
schema : public
agents :
- .buster/agents/documentation.yml
- .buster/agents/pr-reviewer.yml
Multiple Data Sources
projects :
- name : production
data_source : snowflake_prod
database : analytics
schema : marts
- name : staging
data_source : snowflake_staging
database : analytics_dev
schema : marts
agents :
- .buster/agents/documentation.yml
Full Configuration
projects :
- name : analytics
data_source : postgres_prod
database : analytics
schema : public
include :
- "models/**/*.yml"
exclude :
- "**/draft-*.yml"
agents :
- .buster/agents/documentation.yml
- .buster/agents/pr-reviewer.yml
logs :
database : analytics
schema : logs
table_name : buster_query_logs
monitors :
- name : daily_schema_check
type : schema_drift
schedule : "0 9 * * *"
enabled : true
- name : hourly_freshness
type : freshness
schedule : hourly
- name : json_structure_check
type : json_drift
schedule : daily
- name : volume_anomaly_check
type : volume_anomaly
schedule : "0 */6 * * *"
data_source : postgres_prod
dbt_project_path : ./dbt
Project Structure
Recommended repository structure:
my-repo/
├── buster.yml # Main configuration
├── .buster/
│ └── agents/
│ ├── documentation.yml
│ └── pr-reviewer.yml
├── models/
│ ├── staging/
│ └── marts/
└── dbt_project.yml
Deploying
Deploy your configuration:
Validate without deploying: