common_components/monitoring/module/dbt_start.sql (25 lines of code) (raw):

-- Copyright 2023 The Reg Reporting Blueprint Authors -- Licensed under the Apache License, Version 2.0 (the "License"); -- you may not use this file except in compliance with the License. -- You may obtain a copy of the License at -- https://www.apache.org/licenses/LICENSE-2.0 -- Unless required by applicable law or agreed to in writing, software -- distributed under the License is distributed on an "AS IS" BASIS, -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- See the License for the specific language governing permissions and -- limitations under the License. -- DBT Log START stage processing -- -- Create a materialized view of JSON extracted fields for the START stage of -- processing. SELECT update_time AS start_time, dbt_invocation_id, -- DBT project JSON_EXTRACT_SCALAR(info, "$.project") AS project, -- Profile information (how to execute on BigQuery) STRUCT( JSON_EXTRACT_SCALAR(info, "$.target.database") AS data_project_id, JSON_EXTRACT_SCALAR(info, "$.target.dataset") AS data_dataset, JSON_EXTRACT_SCALAR(info, "$.target.execution_project") AS execution_project_id, JSON_EXTRACT_SCALAR(info, "$.target.location") AS data_location, JSON_EXTRACT_SCALAR(info, "$.target.project") AS project_id ) AS target_bigquery, -- Source and build information STRUCT( NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.source_path"), "unset") AS source_path, NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.source_ref"), "unset") AS source_ref, NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.build_ref"), "unset") AS build_ref ) AS build_info, -- Airflow execution information STRUCT( NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.airflow_task_id"), "unset") AS airflow_task_id, NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.airflow_dag_id"), "unset") AS airflow_dag_id, NULLIF(JSON_EXTRACT_SCALAR(info, "$.vars.airflow_execution_date"), "unset") AS airflow_execution_date ) AS airflow_info FROM `${monitoring_dataset}.dbt_log` WHERE stage='START'