Перейти к основному содержимому

Уведомления о моделях

Настройте dbt для уведомления соответствующих владельцев моделей по электронной почте о проблемах, как только они возникают, пока задание еще выполняется. Владельцы моделей могут указать, о каких статусах они хотят получать уведомления:

  • Success и Fails для моделей
  • Warning, Success и Fails для тестов

С уведомлениями на уровне моделей владельцы моделей могут первыми узнавать о проблемах, прежде чем кто-либо другой (например, заинтересованные стороны).

Чтобы уведомления были своевременными и их количество оставалось в разумных пределах, когда несколько моделей или тестов их вызывают, dbt соблюдает следующие правила при уведомлении владельцев:

  • Отправлять уведомление каждому уникальному владельцу/электронной почте во время выполнения задания о любых моделях (со статусом ошибки/успеха) или тестах (со статусом предупреждения/ошибки/успеха). Каждый владелец получает только одно уведомление, первое.
  • Не отправлять уведомления о последующих моделях или тестах, пока задание dbt еще выполняется.
  • Каждый владелец/пользователь, подписавшийся на уведомления для одного или нескольких статусов (например, ошибка, успех, предупреждение), получит только одно уведомление по электронной почте в конце выполнения задания.
  • Электронное письмо включает в себя консолидированный список всех моделей или тестов, соответствующих статусам, на которые подписан пользователь, вместо отправки отдельных писем для каждого статуса.

Создайте конфигурационные YAML-файлы в вашем проекте, чтобы dbt отправлял уведомления о статусе ваших моделей и тестов.

Предварительные условия

Настройка групп

Определите ваши группы в любом .yml файле в вашем каталоге моделей. Каждая группа должна иметь указанный один адрес электронной почты — несколько полей электронной почты или списков не поддерживаются.

Следующий пример показывает, как определить группы в файле groups.yml.

models/groups.yml
version: 2

groups:
- name: finance
owner:
# Электронная почта обязательна для получения уведомлений на уровне моделей, также допускаются дополнительные свойства.
name: "Finance Team"
description: "Модели, связанные с финансовым отделом"
email: finance@dbtlabs.com
favorite_food: donuts

- name: marketing
owner:
name: "Marketing Team"
description: "Модели, связанные с маркетинговым отделом"
email: marketing@dbtlabs.com
favorite_food: jaffles

Присоединение групп к моделям

Присоедините группы к моделям так же, как и любую другую конфигурацию, в файлах dbt_project.yml или whatever.yml. Например:

models/marts.yml
version: 2

models:
- name: sales
description: "Модель данных о продажах"
config:
group: finance

- name: campaigns
description: "Модель данных о кампаниях"
config:
group: marketing

Назначая группы в файле dbt_project.yml, вы можете охватить все модели в подкаталоге сразу.

В этом примере уведомления о моделях, связанных с этапами, отправляются группе инженеров данных, модели marts/sales — финансовой команде, а модели marts/campaigns — маркетинговой команде.

dbt_project.yml
config-version: 2
name: "jaffle_shop"

[...]

models:
jaffle_shop:
staging:
+group: data_engineering
marts:
sales:
+group: finance
campaigns:
+group: marketing

Присоединение группы к модели также охватывает ее тесты, поэтому вы также будете получать уведомления о сбоях тестов модели.

Включение доступа к уведомлениям о моделях

Предоставьте участникам учетной записи dbt Cloud возможность настраивать и получать оповещения о проблемах с моделями или тестами, которые возникают во время выполнения заданий.

Чтобы использовать уведомления на уровне моделей, ваша учетная запись dbt Cloud должна иметь доступ к этой функции. Попросите вашего администратора dbt Cloud включить эту функцию для участников учетной записи, выполнив следующие шаги:

  1. Перейдите в Настройки уведомлений из вашего профиля в боковой панели (в нижней левой части).
  2. В разделе Уведомления по электронной почте включите настройку Включить уведомления для групп/владельцев моделей в разделе Уведомления о моделях. Затем укажите, о каких статусах вы хотите получать уведомления (Success, Warning и/или Fails).
Пример настройки Включить уведомления для групп/владельцев моделейПример настройки Включить уведомления для групп/владельцев моделей
0